LIN总线
以下內容為自學筆記
LIN總線
主要目的
LIN總線的主要目的在于提供一種低成本的車用總線,從而形成對CAN總線的補充。
LIN與CAN對比
LIN總線的主要特點
①串行通信,線間干擾小,節約線束,傳輸距離長;
②單線傳輸,總線電壓12V;
③最高速率20kbit/s,滿足車身大部分應用的需求;
④單主多從結構,不存在沖突,無需仲裁;
⑤基于通用UART/SCI的低成本接口硬件;
⑥利用報頭中的同步場實現同步,無需晶振或陶瓷振蕩器,大幅度降低成本;
⑦可計算信號傳輸的延遲時間;
⑧可靈活的增加或減少節點;
⑨一根線最多可連接16個節點;
⑩支持多報文傳輸(基于ISO15765-2的傳輸層規范)、支持診斷功能(ISO14299的診斷服務)。
LIN網絡拓撲結構
一個LIN網絡由一個主任務,若干個從任務組成;主節點既有主任務又有從任務;從節點只包含從任務;主任務負責決定總線上的報文,從任務提供每一幀的數據。
數據鏈路層
LIN報文幀
LIN總線上可以傳輸兩類數據
信號報文:信號位于幀的數據場中,以數字或者數組形式出現,同一種信號在相同ID的報文數據場中的位置總是固定的。
診斷報文:由兩個保留ID來傳輸,用來傳輸節點的診斷信息
幀結構
字節間隔:位于每個字節之間
響應間隔:位于報頭與響應之間
①字節場(數據場中一個字節的數據)
基于SCI的通信格式,一共10個位時間(Tbit)(1個起始位+8位數據+1個結束位)
②間隔場
一共14位(13個顯性位+1個隱性位(間隔界定符))
③同步場
注意數據是從低位開始發送的
④標識符場
共10位,除去起始位、結束位后,一個字節數據中前6位是標識符場,后2位是奇偶校驗符,故幀的ID范圍為0~2^6-1,及0到63,
P0:ID0、1、2、4位相異或
P1:ID1、3、4、5位相異或
⑥數據場
從最低字節的最低位依次發送
⑦校驗和場
用于校驗接收的數據是否正確,
經典校驗:僅校驗數據場
增強校驗:校驗標識符場與數據場內容
注:標識符為0x3C(60)和0x3D(61)的幀只能使用經典校驗
具體操作如下圖所示
幀長度
幀類型
分為:無條件幀、事件觸發幀、保留幀、零星幀、診斷幀
①無條件幀
②事件觸發幀(從節點發送)
標識符:0~59(0x3B)
事件觸發幀必須有一個獨立的ID,該ID可以與多個普通幀相關聯
③零星幀(僅由主節點發送)
表示共用一個時隙、在需要時才被發送的一組無條件幀。
目的:
將動態行為和實時性添加到調度表中,同時不影響調度表其余部分的確定性
標識符:0~59(0x3b)
若有無條件幀需要發送,則根據幀的優先級裁定發送順序
若沒有無條件幀需要發送,則時隙保持空白
④診斷幀
⑤保留幀
1、用戶自定義幀
標志符:62(0x3e),可以傳輸任何信息,由用戶自定義
2、保留幀
標志符:63(0x3f),在LIN2.1中未對保留幀進行定義
調度表
提前根據需求設置好調度表后,總線會依次去讀取數據。也可以根據需求,在主任務設置多個調度表,并且在調度表之前切換,增加通信的靈活性。
網絡管理
啟動后100ms內需要完成初始化,ECU(電子控制單元)接收到睡眠指令或者總線空閑4~10s后,進入睡眠模式。
睡眠指令
主節點發送一幀ID為60(0X3C),第一個字節為0x00,其余為0xff的主請求幀來使處于工作狀態的節點進入睡眠狀態。
備注
①接收收到睡眠指令后,可以選擇不進入睡眠狀態而繼續工作,這根據應用層程序而定;
②空閑是指一直為顯性/隱性電平,中間無切換。
喚醒指令
物理層簡述
LIN節點物理結構
LIN總線是沒有單獨控制器的,只有一個收發器,總線波特率是<20kbps
振蕩器要求:從節點必須能夠正確識別間隔場與同步場,同步場后,主、從節點時鐘誤差需小于2%
從節點種類看
采用外部晶振:無需同步場即可與主節點同步
采用內部晶振:需根據同步場與主節點同步
有點不懂下面具體是如何同步的。
猜測:從機根據(同步場數據)計算一個位的時間,及Tbit=(T1-T0)/8,在推出使用的波特率,最后從機設計對應的波特率與主機同步。
總線收發器
LIN信號規范
總線特性
eg
τ在5us內,符合整個系統的時間常數。
容錯性能
總結
- 上一篇: 【广州芯享家】服务器维护过程中,你需要了
- 下一篇: Kubernetes(15):Pod控制