時(shí)間:2021-06-28 作者:眾山科技
什么是串口通信?學(xué)術(shù)解釋是通過(guò)總線(xiàn)在一個(gè)時(shí)間點(diǎn)連續發(fā)送數據的方法。就像弓箭手經(jīng)常射出弓箭一樣,嗖,嗖,嗖…
什么是串口通信協(xié)議?就是串口通信中使用的協(xié)議傳輸方式。
串行通信協(xié)議有多少種?串行通信協(xié)議包括系統間協(xié)議和內部系統協(xié)議。
系統間協(xié)議:用于通信兩種不同設備的系統間協(xié)議。就像電腦和微控制器套件之間的通信一樣。通過(guò)內部總線(xiàn)系統進(jìn)行通信。常見(jiàn)的有UART協(xié)議、USART協(xié)議、USB協(xié)議。
內部系統協(xié)議:內部系統協(xié)議用于通信電路板上的兩個(gè)設備。使用這些系統內部協(xié)議時(shí),我們不使用系統內部協(xié)議來(lái)擴展微控制器的周邊設備。使用系統內協(xié)議會(huì )增加電路的復雜性和功耗。使用系統內協(xié)議,降低電路的復雜性和功耗,降低成本,訪(fǎng)問(wèn)數據非常安全。常見(jiàn)的有I2C協(xié)議、SPI協(xié)議、CAN協(xié)議。
UART協(xié)議。
UART代表通用異步發(fā)送器和接收器。UART協(xié)議是一個(gè)串行通信,有兩個(gè)有線(xiàn)協(xié)議。數據電纜信號線(xiàn)標有Rx和Tx。串行通信通常用于發(fā)送和接收信號。它傳輸并與串行通信接收數據,而不是脈沖。UART接收數據字節,并按順序發(fā)送每個(gè)位置。
在嵌入式系統中,USAT協(xié)議通常用作MCU的外部設備;一般而言,由芯片引腳直接引出的一般是TTL電平;而中間有轉換芯片的可能是RS232電平。詳細信息可以查看:串行通信標準。
UART是半雙工協(xié)議。半雙工具有傳輸和接收數據的功能,但不能同時(shí)進(jìn)行。大部分控制器在電路板上都有硬件UART。它使用一條數據線(xiàn)來(lái)發(fā)送和接收數據。它有一個(gè)起始位置、一個(gè)8位數據和一個(gè)停止位置,這意味著(zhù)8位數據傳輸一個(gè)人的信號從高到低。例如,電子郵件、短信、對講機、工業(yè)物聯(lián)網(wǎng)傳輸設備串行服務(wù)器。
USART協(xié)議。
USART代表通用同步、異步發(fā)送器和接收器。這是雙線(xiàn)協(xié)議的串行通信。數據電纜信號線(xiàn)標記為Rx和TX。該協(xié)議用于逐字節發(fā)送和接收數據和時(shí)鐘脈沖。這是雙工協(xié)議,意味著(zhù)以不同的板速發(fā)送和接收數據。不同的設備通過(guò)這個(gè)協(xié)議與微控制器通信。比如電信。
USB協(xié)議。
USB代表通用串行總線(xiàn)。同樣,它也是雙線(xiàn)協(xié)議的串行通信。數據電纜信號線(xiàn)標記為D+和D-。該協(xié)議用于與系統周邊設備通信。USB協(xié)議用于向主機和周邊設備串行發(fā)送和接收數據。USB通信需要基于系統功能的驅動(dòng)軟件。USB設備可以在其上傳數據主機上沒(méi)有任何要求的總線(xiàn)?,F在大部分設備都在用這個(gè)技術(shù)和USB協(xié)議通信。像電腦一樣使用USB和ARM控制器通信。USB以不同的模式傳輸數據。首先是10kbps到100kbps的慢速模式;二是全速模式500kbps到10mbps,高速模式25mbps到400mbps。USB最大電纜長(cháng)度為4米。比如鼠標,鍵盤(pán),集線(xiàn)器,開(kāi)關(guān),筆式驅動(dòng)。
I2C協(xié)議
I2C代表內部集成電路。I2C只需要兩條線(xiàn)就可以把所有的外部設備連接到微控制器上。I2C只需要兩條線(xiàn)SDA(串行數據線(xiàn))和SCL(串行時(shí)鐘線(xiàn))就可以在設備之間傳輸信息。它是從屬通信協(xié)議的主控。每個(gè)站都有一個(gè)唯一的地址。主設備發(fā)送目標來(lái)自設備的地址和讀寫(xiě)標志。該地址與設備打開(kāi)的任何從設備匹配,其余從設備處于禁用模式。一旦地址匹配,在主機和從機之間通信,發(fā)送和接收數據。發(fā)送機發(fā)送8位數據,接收機回復1位確認。通信完成后,主站發(fā)出停止條件。
飛利浦半導體公司開(kāi)發(fā)了I2C總線(xiàn)。它的最初目的是提供一個(gè)簡(jiǎn)單的方法來(lái)將CPU連接到外圍設備芯片。嵌入式系統中的外圍設備通常作為內存映射設備與微控制器連接。I2C只需要兩條線(xiàn)就可以把所有的外部設備連接到微控制器上。所謂SDA和SCL的有源線(xiàn)都是雙向的。SDA線(xiàn)是串行數據線(xiàn),而SCA線(xiàn)是串行時(shí)鐘線(xiàn)。
SPI協(xié)議。
SPI代表串行外部接口。這是摩托羅拉開(kāi)發(fā)的串行通信協(xié)議之一。有時(shí)候SPI協(xié)議也叫四線(xiàn)協(xié)議。需要四線(xiàn)MOSI,MISO,SS和SCLK。SPI協(xié)議用于通信主設備和從設備。主機首先使用頻率配置時(shí)鐘。然后,主機通過(guò)拉片按鈕選擇特定的設備進(jìn)行通信。選擇特定設備,開(kāi)始主機和特定從機之間的通信。主機一次只選一個(gè)從機。這是一個(gè)全雙工通信協(xié)議。在位傳輸的情況下,不限于8個(gè)字。
CAN協(xié)議
CAN代表控制器局域網(wǎng)。這是一個(gè)串聯(lián)通信協(xié)議。這需要兩條線(xiàn)的CAN高(H+)和CAN低(H-)。Robertbosh公司于1985年開(kāi)發(fā),用于車(chē)載網(wǎng)絡(luò )。這是基于信息傳輸協(xié)議。
20世紀70年代是汽車(chē)制造商開(kāi)始引入新功能的時(shí)代,如防抱死制動(dòng)、空調、齒輪控制、中央操作門(mén)鎖等。這些功能保證了額外的接線(xiàn)和復雜的設計,從而增加了成本和風(fēng)險。為了克服這些問(wèn)題,RobertBosch在20世紀80年代引入了CAN協(xié)議。這個(gè)串行通信協(xié)議在1993年進(jìn)一步標準化為ISO11898。CAN協(xié)議完全改變了高級傳感器之間的通信。CAN協(xié)議常用于汽車(chē)、飛機和醫療系統的電子網(wǎng)絡(luò )。