天天看點

對STM32F10xxx中UART通信的一些了解

1.序列槽通信,一般有UART,USART,I2C,SPI,485通信,can通信

2.UART指通用異步收發傳輸器,可以實作全雙工傳輸和接收。UART通信時,資料先發低位再發高位。

3.USART指通用同步/異步串行接收/發送器。

4.UART與USART的硬體總線差別?

1.UART: Rxd—–讀資料線

Txd—–寫資料線

2.USART:Rxd—–讀資料線

Txd—–寫資料線

RTS—–接收器流控線

CTS—–發送器流控線

5.UART通信模型

對STM32F10xxx中UART通信的一些了解

6.USART通信模型

相對于UART,每個裝置多兩條線RTS,CTS

RTS—(發送流控線)(通知另外一個裝置)——對應——CTS(接收流控線)

都有一個地線

對STM32F10xxx中UART通信的一些了解

7.UART發送和接收的可程式設計波特率,最高達 4.5Mbits/s

8.UART的應用場景:USART應用中大部分時候使用異步的模式,智能卡使用同步模式;

USART/UART作為調試的方法,通過序列槽助手列印在PC機上;

支援多種外設,例如9軸傳感器、電子指南針、序列槽透傳藍牙、序列槽透傳WiFi;

還可以作為485通信的基礎,485可以延長通信距離。

9.UART時序:

對STM32F10xxx中UART通信的一些了解

字長可以通過程式設計USART_CR1寄存器中的M位,選擇成8或9位。在起始位期間, TX腳處于低電平,在停止位期間處于高電平。

每個字元(每幀資訊)由4部分組成:

(1)1位起始位,規定為低電平0;

(2)8~9位資料位,即要發送的有效資訊;

(3)1位奇偶校驗位(可選);

(4)0.5,1.5,2個停止位,規定為高電平1.

10.USART中的寄存器

一個狀态寄存器(USART_SR)

資料寄存器(USART_DR)

一個波特率寄存器(USART_BBR),12位整數和4位小數

控制寄存器1(USART_CR1)

控制寄存器2(USART_CR2)

控制寄存器3(USART_CR3)

一個智能卡模式下的保護時間寄存器(USART_GTPR)

11.USART通信中斷原理流程:

(1)恢複預設

(2)打開相應時鐘APB

(3)GPIO口初始化

(4)USART模式初始化,波特率,字長,停止位,校驗位,硬體流控

(5)使能USART中斷

(6)清空USART标志位

(7)使能USART

(8)USART中嵌套向量中斷控制器NVIC初始化,優先級組,搶占式優先級和響應式優先級個數

(9)編寫中斷服務函數

繼續閱讀