UART:Universal Asynchronous Receiver/Transmitter 通過(guò)名稱(chēng),就可以看出其是異步的通訊協(xié)議,可收發(fā),也就是全雙工的。相信這是很多搞嵌入式所接觸的第一個(gè)協(xié)議,我當時(shí)就是學(xué)單片機時(shí)學(xué)的。
本文引用地址:http://dyxdggzs.com/article/201612/329905.htm 其接收和發(fā)送是分開(kāi)的,遵循 起始位+數據+停止位[+校驗位]的格式。
需要設置,波特率,數據寬度,停止位寬度,校驗方式。
RS232:
設備間的通訊協(xié)議,其協(xié)議和UART相同,只是電平標準不同了,采用的“負”邏輯。
何為“負”邏輯?我的理解就是,和常規的理解不一樣。我們知道,一般意義下,"1”>"0",在通訊中“1”,“0”分別用兩個(gè)狀態(tài)來(lái)表示,在UART/RS232中是用電平的不同來(lái)表示“1”,“0”的。
而RS232規定,低電平為“1”,高電平為“0”,所以在電平上,“1” <"0"了,這樣就和常規的理解相反了。
RS232也是全雙工的,TX/RX是分開(kāi)的兩條線(xiàn)。
接口有標準的DB9插頭,臺式電腦一般都有這個(gè)插頭。
RS485:
協(xié)議和UART相同,但其變成差分線(xiàn)了,術(shù)語(yǔ)叫A,B,通過(guò)雙絞線(xiàn)連接。
變成差分線(xiàn)后,雖然是兩條線(xiàn),但傳輸的信息是一樣的,也就是說(shuō)沒(méi)有獨立的TX/RX了。所以,RS485是半雙工的了,只能有一個(gè)方向的通訊了,硬件上通過(guò)方向切換來(lái)保證數據收發(fā)的不沖突。
既然是差分線(xiàn),那“1”,“0”就要通過(guò)差來(lái)得到了。

評論