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