(一) UART
通用異步收發(fā)器,是一種串行異步收發(fā)協(xié)議,將數據的二進制位一位一位的進行傳輸; 在UART通信協(xié)議中信號線上的狀態(tài)高電平代表“1”低電平代表“0”。
(二)硬件連接
硬件連接比較簡單,僅需3條線; TX:發(fā)送數據端,連接對面設備的RX; RX:接收數據端,連接對面設備的TX; GND:保證兩設備共地,有統(tǒng)一的參考平面;
連接時需要注意兩個設備UART電平,如果電平范圍不一致要做電平轉換,如圖為RS232通信
(三)通信協(xié)議
3.1空閑狀態(tài)
UART協(xié)議規(guī)定,當總線處于空閑狀態(tài)時信號線的狀態(tài)為1,即高電平,也就是TX引腳處于高電平;
3.2起始位
開始進行數據傳輸時發(fā)送方要先發(fā)出一個低電平0來表示傳輸字符的開始;
3.3數據位
起始位之后就是傳輸數據,一般都是8位,低位在前,高位在后;
3.4奇偶校驗位
數據位傳送完成后,要進行奇偶校驗,一般設置:無奇偶校驗位;
3.5停止位
數據結束標志,可以是1位、1.5位、2位的高電平;
3.6波特率
數據傳輸速率使用波特率來表示,單位bps(bits per
second),常見的波特率9600、115200等; 舉個例子:如果串口波特率設置為9600bps,那么傳輸一個比特需要的時間是1/9600 =
104.2us
通常串口設置為:9600、8個數據位、無奇偶校驗位、1位停止位
假如現在要傳輸“o”“k”,這兩個在ASCALL碼對應是79和75,即“o”二進制為0100 1111; “K”二進制為0100
1011,傳輸格式數據如下
串口波特率為9600,傳送一個數據實際是10個比特(開始位、8個數據位、停止位),一個Bytes傳輸速率實際為:9600/10*8 =
7680bps
(三) STM32串口通信過程
-
收發(fā)器
+關注
關注
10文章
3664瀏覽量
107743 -
通信協(xié)議
+關注
關注
28文章
1024瀏覽量
41076 -
uart
+關注
關注
22文章
1275瀏覽量
103673 -
信號線
+關注
關注
2文章
181瀏覽量
21902 -
通用異步收發(fā)器
+關注
關注
0文章
22瀏覽量
6847
發(fā)布評論請先 登錄
通用同步異步收發(fā)器(USART)
UART通用同步異步收發(fā)器的相關資料分享
通用異步收發(fā)器與通用同步異步串行接收/發(fā)送器有哪些差異呢
通用同步異步收發(fā)器USART怎樣使用DMA進行連續(xù)通信呢
USART通用同步異步收發(fā)器介紹
USART通用同步異步收發(fā)器介紹
通用異步收發(fā)器(UART)
設計基于FPGA的串行通用異步收發(fā)器

評論