原文:【STM32+cubemx】0006 HAL庫開發:uart串口和DMA傳輸

上一節我們使用中斷結合環形fifo,實現了比較方便 高效地串口收發,這個方法在幾乎所有的單片機上都可以使用,就連最基礎的 單片機也能支持。而到了stm 這款強大的單片機,有更多的用法可以實現高效的串口收發,本節我們就介紹使用DMA傳輸串口數據。 先簡單介紹一下DMA,DMA全稱為:Direct Memory Access,即直接存儲器訪問。它可以獨立地將數據從一個地址空間復制到另外一個地址空間,而 ...

2021-11-03 00:29 0 1238 推薦指數:

查看詳情

STM32+cubemx】0004 HAL開發uart串口的輪詢和中斷使用

本節我們來學習異步串口uart的應用,使用輪詢和中斷兩種方式,來實現計算機向單片機發送數據,單片機處理之后再將數據返回。 1)cubemx生成代碼 首先還是在cubemx中生成代碼,選擇器件、設置SYS(調試接口)、設置RCC(外部晶振時鍾源)這幾個步驟和前一節一樣(也可以復制前面閃燈的工程 ...

Mon Nov 01 07:59:00 CST 2021 0 795
STM32+cubemx】0016 HAL開發:USB虛擬串口(virtual COM)

stm32很多系列的芯片都帶usb接口,而且cubemx也能生成多種功能的usb初始化代碼,使得一般用戶可以不用關注usb底層復雜的實現方式,直接使用HAL函數就能方便地實現usb通信。本節我們就來學習cubemx生成虛擬串口(USB virtual COM)的使用方法。 1)生成USB虛擬 ...

Fri Nov 26 07:11:00 CST 2021 0 1273
STM32+cubemx】0008 HAL開發:ADC的四種用法:輪詢、中斷、DMA、定時器觸發

ADC即模數轉換器,能把模擬量(電壓)轉換為數字量。 這一節我們講講stm32的ADC用法,stm32自帶的ADC有四種用法:輪詢、中斷、DMA、定時器觸發。 1)ADC輪詢的用法 我們在之前的串口中斷工程上修改,以便於打印數值查看。 使用cubemx打開串口中斷的工程,然后另存為 ...

Fri Nov 05 08:23:00 CST 2021 0 2393
STM32+cubemx】0015 HAL開發:內部flash讀寫

本節我們來學習stm32內部flash的讀寫。在某些應用中,我們需要保存少量掉電仍然不丟失的數據,而在電路板上額外增加一塊eeprom或者flash又太浪費硬件資源,這時我們就可以把這些數據保存在stm32內部的flash里。 1)stm32內部flash簡介 我們先來了解一下stm32 ...

Wed Nov 24 08:12:00 CST 2021 0 889
STM32+cubemx】0012 HAL開發:定時器的PWM輸出

本節我們介紹stm32定時器的PWM輸出。 1)PWM基礎知識 PWM的全稱是Pulse Width Modulation,即脈沖寬度調制。它是數字信號,只有0、1兩種狀態,它通過一個周期中0、1所占不同的時間比例,來等效模擬信號。 假設一個數字信號源的高電平為5V、低電平為0V ...

Fri Nov 19 09:15:00 CST 2021 0 875
STM32+cubemx】0018 HAL開發:自定義usb HID設備實現

前面幾節我們使用Cubemx生成了usb的兩個使用例子(虛擬串口、HID鼠標),本節我們進一步學習,如何用生成自定義的HID設備。本節的例子在開發板上運行以后,可以通過usb HID接口實現和計算機更為自由的通信。 本節的例子使用的開發環境是cubemx 6.1.0,pack版本是1.8.0 ...

Sat Dec 11 08:40:00 CST 2021 0 993
STM32+cubemx】0009 HAL開發:RTC實時時鍾的使用、掉電時間保持

RTC (Real Time Clock)即實時時鍾。它可以提供時鍾、日歷的功能;並且可以使用外部電池供電,在極低的功耗下保持計數,使得斷電之后還能夠計算時間,所以名為實時時鍾。 STM32f103的RTC,本質上是一個32位的計數器,在斷電后,由電池供電還能保持計數;要使用時間時,需要 ...

Wed Nov 10 09:05:00 CST 2021 2 2328
 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM