00. 目錄
01. 串行通訊與并行通訊
按數(shù)據(jù)傳送的方式,通訊可分為串行通訊與并行通訊,串行通訊是指設備之間通過少量數(shù)據(jù)信號線(一般是8根以下), 地線以及控制信號線,按數(shù)據(jù)位形式一位一位地傳輸數(shù)據(jù)的通訊方式。而并行通訊一般是指使用8、16、32及64根或更多的數(shù)據(jù)線進行傳輸?shù)耐ㄓ嵎绞剑?它們的通訊傳輸對比說明見圖 并行通訊與串行通訊的對比圖 ,并行通訊就像多個車道的公路, 可以同時傳輸多個數(shù)據(jù)位的數(shù)據(jù),而串行通訊,而串行通訊就像單個車道的公路,同一時刻只能傳輸一個數(shù)據(jù)位的數(shù)據(jù)。
很明顯,因為一次可傳輸多個數(shù)據(jù)位的數(shù)據(jù) ,在數(shù)據(jù)傳輸速率相同的情況下,并行通訊傳輸?shù)臄?shù)據(jù)量要大得多, 而串行通訊則可以節(jié)省數(shù)據(jù)線的硬件成本(特別是遠距離時)以及PCB的布線面積, 串行通訊與并行通訊的特性對比見表 串行通訊與并行通訊的特性對比。
不過由于并行傳輸對同步要求較高,且隨著通訊速率的提高,信號干擾的問題會顯著影響通訊性能,現(xiàn)在隨著技術(shù)的發(fā)展,越來越多的應用場合采用高速率的串行差分傳輸。
02. 全雙工、半雙工及單工通訊
根據(jù)數(shù)據(jù)通訊的方向,通訊又分為全雙工、半雙工及單工通訊,它們主要以信道的方向來區(qū)分,見圖 全雙工-半雙工及單工通訊 及表 通訊方式說明。
仍以公路來類比,全雙工的通訊就是一個雙向車道,兩個方向上的車流互不相干;半雙工則像鄉(xiāng)間小道那樣,同一時刻只能讓一輛小車通過, 另一方向的來車只能等待道路空出來時才能經(jīng)過;而單工則像單行道,另一方向的車輛完全禁止通行。
03. 同步通訊與異步通訊
根據(jù)通訊的數(shù)據(jù)同步方式,又分為同步和異步兩種,可以根據(jù)通訊過程中是否有使用到時鐘信號進行簡單的區(qū)分。
在同步通訊中,收發(fā)設備雙方會使用一根信號線表示時鐘信號,在時鐘信號的驅(qū)動下雙方進行協(xié)調(diào), 同步數(shù)據(jù),見圖 同步通訊。 通訊中通常雙方會統(tǒng)一規(guī)定在時鐘信號的上升沿或下降沿對數(shù)據(jù)線進行采樣。
在異步通訊中不使用時鐘信號進行數(shù)據(jù)同步,它們直接在數(shù)據(jù)信號中穿插一些同步用的信號位,或者把主體數(shù)據(jù)進行打包, 以數(shù)據(jù)幀的格式傳輸數(shù)據(jù),見圖 某種異步通訊 ,某些通訊中還需要雙方約定數(shù)據(jù)的傳輸速率,以便更好地同步。
在同步通訊中,數(shù)據(jù)信號所傳輸?shù)膬?nèi)容絕大部分就是有效數(shù)據(jù),而異步通訊中會包含有幀的各種標識符,所以同步通訊的效率更高, 但是同步通訊雙方的時鐘允許誤差較小,而異步通訊雙方的時鐘允許誤差較大。
04. 通訊速率
衡量通訊性能的一個非常重要的參數(shù)就是通訊速率,通常以比特率(Bitrate)來表示,即每秒鐘傳輸?shù)亩M制位數(shù), 單位為比特每秒(bit/s)。容易與比特率混淆的概念是“波特率”(Baudrate),它表示每秒鐘傳輸了多少個碼元。 而碼元是通訊信號調(diào)制的概念,通訊中常用時間間隔相同的符號來表示一個二進制數(shù)字,這樣的信號稱為碼元。 如常見的通訊傳輸中,用0V表示數(shù)字0,5V表示數(shù)字1,那么一個碼元可以表示兩種狀態(tài)0和1,所以一個碼元等于一個二進制比特位, 此時波特率的大小與比特率一致;如果在通訊傳輸中,有0V、2V、4V以及6V分別表示二進制數(shù)00、01、10、11, 那么每個碼元可以表示四種狀態(tài),即兩個二進制比特位,所以碼元數(shù)是二進制比特位數(shù)的一半,這個時候的波特率為比特率的一半。 因為很多常見的通訊中一個碼元都是表示兩種狀態(tài),人們常常直接以波特率來表示比特率,雖然嚴格來說沒什么錯誤,但希望您能了解它們的區(qū)別。
05. 通信接口
通信的目的:將一個設備的數(shù)據(jù)傳送到另一個設備,擴展硬件系統(tǒng)
通信協(xié)議:制定通信的規(guī)則,通信雙方按照協(xié)議規(guī)則進行數(shù)據(jù)收發(fā)
06. 串口通信
?串口是一種應用十分廣泛的通訊接口,串口成本低、容易使用、通信線路簡單,可實現(xiàn)兩個設備的互相通信
?單片機的串口可以使單片機與單片機、單片機與電腦、單片機與各式各樣的模塊互相通信,極大地擴展了單片機的應用范圍,增強了單片機系統(tǒng)的硬件實力
07. 硬件電路
?簡單雙向串口通信有兩根通信線(發(fā)送端TX和接收端RX)
?TX與RX要交叉連接
?當只需單向的數(shù)據(jù)傳輸時,可以只接一根通信線
?當電平標準不一致時,需要加電平轉(zhuǎn)換芯片
08. 電平標準
?電平標準是數(shù)據(jù)1和數(shù)據(jù)0的表達方式,是傳輸線纜中人為規(guī)定的電壓與數(shù)據(jù)的對應關系,串口常用的電平標準有如下三種:
?TTL電平:+3.3V或+5V表示1,0V表示0
?RS232電平:-3~-15V表示1,+3~+15V表示0
?RS485電平:兩線壓差+2~+6V表示1,-2~-6V表示0(差分信號)
09. 串口參數(shù)及時序
?波特率:串口通信的速率
?起始位:標志一個數(shù)據(jù)幀的開始,固定為低電平
?數(shù)據(jù)位:數(shù)據(jù)幀的有效載荷,1為高電平,0為低電平,低位先行
?校驗位:用于數(shù)據(jù)驗證,根據(jù)數(shù)據(jù)位計算得來
?停止位:用于數(shù)據(jù)幀間隔,固定為高電平
10. 串口時序
文章來源:http://www.zghlxwxcb.cn/news/detail-803799.html
11. 附錄
參考: 【STM32】江科大STM32學習筆記匯總文章來源地址http://www.zghlxwxcb.cn/news/detail-803799.html
到了這里,關于【STM32】STM32學習筆記-USART串口協(xié)議(25)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!