LIN主從節(jié)點設計與實現
摘要:LIN是一種串行通訊協(xié)議,用于實現汽車中的分布式電子系統(tǒng)控制。介紹了具體的LIN主從節(jié)點硬件組成和軟件實現方法,同時提出若干抗千擾措施。測試證明按照這種方法設計的LIN網絡能正確實現通信。
關鍵詞:LIN總線;主節(jié)點;從節(jié)點;CAN總線
LIN(LocalInterconnect Network)是一種低速汽車網絡,采用單主多從、異步串行通信方式,定位于現有汽車網絡(如CAN總線)的輔助和補充,目的是以低廉的價格聯(lián)接車上的傳感器、執(zhí)行器和處理器,并且允許不同廠家的模塊隨時添加進來。LIN的主要特點有:低成本,基于通用UART接口,幾乎所有微控制器都具備LIN必須的硬件;傳輸速率最高可達20 Kb/s;從節(jié)點不需晶振或陶瓷震蕩器就能實現自同步,節(jié)省了從設備的硬件成本;單主控器/多從設備模式,無需仲裁機制;不需要改變LIN從節(jié)點的硬件和軟件就可以在網絡上增加節(jié)點等。
1 主從節(jié)點硬件設計
LIN網絡由一個主節(jié)點和最多15個從節(jié)點構成。設計LIN節(jié)點可以有三種方法:用普通I/O口線模擬異步串行通信;用UART和定時器實現;用專門的LIN模塊來實現。第一種方法成本最低,但CPU負擔最重,代碼較多;第二種方法成本適中,CPU負擔較輕;第三種方法成本較高,但CPU負擔最輕,代碼最少。這里采用最常用的一種,即基于UART和定時器的LIN節(jié)點設計和實現。LIN網絡拓撲結構如圖1所示。
在LIN網絡中所有的通信都由主節(jié)點發(fā)起,同時還承擔與CAN總線通信的任務,因此主節(jié)點硬件電路主要包括微控制器、LIN收發(fā)器和CAN收發(fā)器。LIN收發(fā)器將協(xié)議控制器向TXD引腳輸入的傳輸數據流轉換成總線信號并由收發(fā)器控制回轉速率和波形以減少EME;CAN收發(fā)器作為CAN總線與控制器之間的接口以及提供CAN總線的差動發(fā)送和接收功能。需要注意的是主節(jié)點電路中必須連接一個1 kΩ的上拉電阻和一個二極管。采用Microchip公司的PICl8系列單片機作為主節(jié)點的微控制器,MCP2551作為CAN總線收發(fā)器,MCP201作為LIN總線收發(fā)器。主節(jié)點硬件原理圖如圖2所示。在實際設計過程中還要注意EMI(電磁干擾)和ESD(靜電危害)對LIN總線的干擾,為了避免EMI的影響,LIN協(xié)會把LIN的最高位速率限制在20 Kb/s,同時最大傳輸距離不能超過40 m;ESD表現為短暫而幅度迅速衰減的高壓、大電流放電,而LIN總線收發(fā)器最容易受到:ESD的沖擊,因此設計時可以在電源線和地線之間串聯(lián)電阻和電容,也可以把地線加粗,并與其他大面積接地導體就近、低阻抗連接。
從節(jié)點采用PIC18F1320作為主控制器,MCP201作為LIN總線收發(fā)器;需要注意的是從節(jié)點中必須連接一個30 kΩ的上拉電阻,當然串聯(lián)二極管也是必須的,它可以防止電子控制單元在本地電池掉電的情況下通過LIN總線上電。從節(jié)點電路原理圖與主節(jié)點相似,去掉CAN收發(fā)器,其余不再贅述。
評論