工業以及汽車應用中多種串行總線特性及比較
d. 數據方向和通信速度
數據字節的傳輸首先從最高位開始。一個8位的數據字節能在一次發送中進行傳輸,最大的CAN總線速度是1Mbps。
e. CAN在汽車中的應用
圖3的例子顯示了CAN網絡是如何通過富士通的16位CAN微控制器在汽車中應用。
![]() |
大多數CAN微控制器需要一個外部收發器來連接物理總線。目前市場上提供以下一些收發器:
- 高速CAN收發器有飛利浦的82C251,TI的SN65/75LBC031,Bosch的CF150,C250,Unitrode的UC5350;
- 低速CAN收發器有飛利浦82C252、TJA1053,西門子TLE 6252G;
- 單線CAN收發器有飛利浦AU5790,英飛凌TLE 6255,Delphi DK166153。
5.本地互連網絡
本地互連網絡(LIN)是一個低成本、單線串行總線,能執行全雙工串行通信。LIN用在汽車的分布式電子系統中,例如與智能傳感器和傳動器的通信。LIN協議能采用低成本的UART/SCI接口來實現,幾乎所有的微控制器都提供這些接口。
a. LIN通信
LIN網絡由一個主控和多個從器件組成,主控器件發起所有的通信。
所有節點執行包括發送和接收任務在內的從屬通信任務。此外,主節點執行主控發送任務,主控任務能決定什么時候、哪一個幀將在總線上傳輸。在該方式中,沒有總線仲裁,并且在最壞情況下每個消息的時間很容易計算。當一個消息幀發送時,在接收和過濾標識符后,僅有一個從器件得到激活。
總線上的所有消息以幀的形式發送,幀由一個幀頭和響應字段(response field)組成。主控器件始終在總線上發送幀頭,幀頭至少由一個13位字段、一個同步字節和一個6位標識符組成,該標識符的范圍為0到63。響應字段由兩個、四個和八個數據字節和具有倒置8位和的校驗和字段,以及所有的數據字節和標識符組成。
圖4顯示了在一個消息幀上所有字段的排列順序。
![]() |
b. 數據方向和通信速度
只有很少微控制器集成有專用的LIN硬件,大多數供應商用SCI或UART來提供支持。因為LIN物理層是一個從汽車自診斷用ISO9141標準引出的單線12V總線,所以需要一個外部LIN收發器來轉換電平。例如當前市場上已有供貨的摩托羅拉IMC33689 LIN和英飛凌公司的TLE6259-2G收發器。
d. CAN與LIN的比較
CAN和LIN兩者都使用在汽車工業中。CAN用于汽車中的高速和低速網絡,而LIN僅用于低速網絡,如門控制單元。在很多方面,CAN比LIN更貴也更可靠,必需在可靠性和為設計硬件與軟件支付額外成本之間進行權衡。由于LIN的成本較低且容易在UART中實現,故在低速網絡應用方面LIN有望替代CAN。
6. 其它通用串行總線
用在微控制器工業中的其它總線有RS422、RS485、USB和Microwire.
RS422和RS485通信可以用一個UART來執行。因此,在用于這些總線時微控制器中不需要增加另外的硬件。
USB總線的普及性極大地鼓舞了微控制器制造商把USB控制器集成到他們的微控制器中。將外圍器件加到USB總線中是很容易的,并不需要重自舉系統。Cypress半導體公司和其它業界主導廠商都提供各種系列USB芯片來滿足市場的需要。
國家半導體公司(NSC)開發的單線總線Microwire用在許多微控制器和像EEPROM這類非易失性存儲器,以及ADC中。該總線能像SPI一樣提供同步通信,可用在使用SPI的地方。有些微控制器供應商通過使用UART來支持Microwire總線。
FlexRay是一種在汽車工業中即將推出的新型總線,可用在使用CAN總線的地方,該總線的速度是CAN總線的10倍,可以達到10Mbps。目前微控制器制造商正在努力開發具有FlexRay總線的器件。
總線選擇準則
不同的應用在選擇總線的標準方面并不同,下面是一些進行總線選擇的通用參考準則:
1. 評估使用不同串行總線在網絡上連接各種器件的系統成本。例如,在汽車應用中,一個只需要控制功能的系統可以用像LIN這類低成本的串行總線來管理。
2. 在效率、速度和可靠性方面確定對你最重要的性能。例如,對于一個安全關鍵系統來講,可靠性是極為重要的,故而CAN是較好的選擇。
3. 確定在網絡上將連接多少器件,以及總線將可能具有的電容量。有些串行總線對連在網絡上的器件數目有限制。
4. 注意器件間的距離,有些串行總線只支持短距離通信。
5. 如果用在汽車中,CAN或LIN是較好的選擇。由于它們具有很強的魯棒性,因此具有較強的容故障能力和傳輸可靠性。
評論