基於暫存器: 顧名思義就是要配置各種各樣的暫存器來實現想要的功能,但是在獲得了可移植性與更易於了解核心工作流程的同時,增加了很多麻煩,比如程式可讀性差和維護複雜。
基於韌體庫: 可以根據已有的庫函式來實現想要的功能。優點就是開發簡單,**易於理解,適合學習。但同樣也是它的缺點,對底層的了解相對沒那麼深,靈活性可移植性相對較差。
開發板:正點原子stm32f1精英版
顯示這樣就算安裝串列埠驅動完成。
之後我們需要串列埠除錯助手也在上述1,軟體資料夾中,如下圖
stlink用來給開發板燒錄程式,也需要安裝驅動
和上述資料夾路徑相同,選擇下**件夾,開啟安裝即可
我們根據正點原子的例程改寫
按圖示開啟資料夾
進去之後選擇實驗4串列埠通訊資料夾拷貝到自己喜歡的資料夾
之後進去user資料夾選擇kile工程檔案開啟。
更改主函式如下:
#include
"led.h"
#include
"delay.h"
#include
"key.h"
#include
"sys.h"
#include
"usart.h"
intmain
(void)if
(p==10)
}}usart_rx_sta=0;
}else
}}
編好程式之後我們需要把程式燒錄到板子上,讓板子工作。
按照下圖操作
因為我們用stlink燒錄所以就選擇stlink debugger,如果使用jlink就選擇相對應的就行。
之後依次選擇確定就行。
接下來進行編譯鏈結燒錄
總結:通過本次小實驗,知道了如何使用stm32串列埠進行通訊,將想表達的資訊傳送給我們的上位機。我們使用的直接時庫函式的例程所以簡單很多,後續需要多學習相關暫存器的配置才能真正理解串列埠通訊。
STM32的USART串列埠通訊
三 總結 韌體庫就是函式的集合,韌體庫函式的作用就是 向下負責與暫存器直接打交道,向上提供使用者函式呼叫的介面。基於固態庫方式開發,也就是直接呼叫庫函式,特點就是外設交流方便 查錯簡單 對主控制器stm32上手簡單。stm32的mcu,暫存器數量較多,韌體庫將這些暫存器底層操作都封裝起來,提供一套a...
STM32學習之USART串列埠
通用同步非同步收發器 usart 支援lin 區域性互連網 智慧卡協議和irda 紅外資料組織 sir endec規範,以及數據機 cts rts 操作 允許多處理器通訊 使用多緩衝器配置的dma方式,可以實現高速資料通訊。stm32f107有5個usart。usart暫存器 狀態暫存器 usart...
stm32應用 USART 串列埠通訊
1 序列通訊 指裝置之間通過少 量資料訊號線 一般是 8根以下 地線以及控制訊號線,按資料位形式一位一位地傳輸資料的通訊方式。就像是單車道的公路,同一時刻只能傳輸乙個資料為的資料。2 並行通訊 指使用 8 16 32 及 64 根或更多的資料線進行傳輸的通訊方式,就像多個車道的公路,可以同時傳輸多個...