51单片机——UART
單片機——UART串口通信
宗旨:技術的學習是有限的,分享的精神是無限的。
對于單片機來說,通信則與傳感器、存儲芯片、外圍控制芯片等技術緊密結合,成為整個單片機系統的“神經中樞”。
1、初步認識
一位一位的發送出去的,要發送 8 次才能發送完一個字節。
STC89C52有兩個引腳是專門用來做 UART串行通信的,一個是 P3.0一個是 P3.1,它們還分別有另外的名字叫做 RXD和TXD,由它們組成的通信接口就叫做串行接口,簡稱串口。
波特率:發送二進制數據位的速率,習慣上用 baud 表示;即我們發送一位二進制數據的持續時間=1/baud。
? ? ? ? ? ? ?通信過程:在UART 通信的時候,一個字節是 8 位,規定當沒有通信信號發生時,通信線路保持高電平,當要發送數據之前,先發一位 0 表示起始位,然后發送 8 位數據位,數據位是先低后高的順序,數據位發完后再發一位 1 表示停止位。
?
2、RS232通信接口與USB轉串口通信
? ? ? ? ? ? RS232 接口一共有 9 個引腳,分別定義是: 1、載波檢測 DCD; 2、接收數據 RXD; 3、發送數據 TXD; 4、數據終端準備好 DTR; 5、信號地線 SG; 6、數據準備好 DSR; 7、請求發送 RTS; 8、清除發送 CTS; 9、振鈴提示 RI。我們要讓這個串口和我們單片機進行通信,我們只需要關心其中的 2 腳 RXD、 3 腳 TXD 和 5 腳 GND 即可。
? ? ? ? ? ? 負邏輯:低電平代表的是 1,而高電平代表的是 0,因此需要電平轉換芯片 MAX232。 RS232 串口和 UART 串口,它們的協議類型是一樣的,只是電平標準不同而已,而 MAX232 這個芯片起到的就是中間人的作用,它把 UART 電平轉換成 RS232 電平,也把 RS232 電平轉換成 UART 電平。
? ? ? ? ? ? USB 轉串口芯CH340T:實現 USB通信協議和標準UART 串行通信協議的轉換。
?
3、通信的三種基本類型
單工通信就是指只允許一方向另外一方傳送信息,而另一方不能回傳信息;
半雙工通信是指數據可以在雙方之間相互傳播,但是同一時刻只能其中一方發給另外一方;
全雙工通信就發送數據的同時也能夠接收數據,兩者同步進行。
?
4、串口通信
1、配置串口為模式 1。
2、配置定時器 T1 為模式 2,即自動重裝模式。
3、根據波特率計算 TH1 和 TL1 的初值,如果有需要可以使用 PCON 進行波特率加倍。
4、打開定時器控制寄存器 TR1,讓定時器跑起來。
定時器的重載值計算公式為:TH1= TL1 = 256 - 晶振值/12 /2/16 /波特率
?
總結
以上是生活随笔為你收集整理的51单片机——UART的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: cass小插件集合_CASS插件合集
- 下一篇: TQ210——交叉编译器的安装