1. 程式人生 > >UART的同步通訊和非同步通訊,通訊方式,多機通訊,流控

UART的同步通訊和非同步通訊,通訊方式,多機通訊,流控

    大致對UART做了一個簡單的整理。

非同步通訊:

同步通訊:

序列的單工,半雙工,全雙工:

串列埠的多機通訊:

UART的RTS, CTS:

一、流控,顧名思義就是流量控制的意思。目的是協調收發雙方,使資料不會丟失。

二、很多人用了串列埠很久都不知道這回事,這是因為很多場合確實沒有必要。收發雙方波特率固定,並且接受陣列足夠大,這時不會出現接收方接受陣列溢位導致資料丟失的情況,所以,以我的理解,使用流控的主要目的就是在資料量大,有可能出現接受陣列溢位的時候,採取的一種協調收發雙方的措施。可能還要其他原因,我沒有理解到位。

三、流控設計到RTS和CTS兩個口,收發雙方都有各自的RTS和CTS,如通訊雙方A,B。那麼A的RTS就與B的CTS相連,A的CTS就與B的RTS相連。

RTS的作用是告訴對方我可以接受資料,是輸出口;CTS的作用是根據電平高低控制傳送或不發生資料。

如:A與B通訊,現在A給B傳送資料,當B出現某種情況(可能是接受快取快要滿了)的時候,B的RTS拉低(一般拉低表示有效,但也不一定),A的CTS是與A的RTS相連的,則A檢測到它的CTS拉低,就知道B在告訴他暫時不要再發了。他就乖乖地停止傳送。等到B可以繼續接收資料的時候,B的RTS拉高,這時候A的CTS也拉高,A就知道可以繼續傳送資料了。如果A和B收發情況換一下也是一樣的道理。