在LIN總線通信中,主任務確定在LIN總線上傳輸哪個幀,從任務提供每個幀所攜帶的數據。
2.下圖顯示了阿林節點的層次結構:
LIN1.3和LIN2.1的區別在於LIN1.3沒有TL層,信號交互放在協議層,沒有單獨的TP層。
3.LIN總線特性:
串行通信:線路間幹擾少,節省線束,傳輸距離遠;
單線傳輸:增強型ISO 9141(ISO 15765-1),母線電壓基於VBAT;
?最高速度為20Kbit/s:滿足車體的大部分應用要求;
單主多從結構:無仲裁;
基於通用UART/SCI的低成本接口硬件:幾乎所有的MCU都具有LIN總線的硬件基礎;
從節點無需晶振或陶瓷振蕩器即可實現同步:成本大大降低;
壹條總線最多可以連接16個節點:這是由總線的電氣特性決定的;
支持診斷功能:支持UDS服務;
4.LIN2.1節點型號:
LIN1.3節點型號:
LIN2.1與LIN1.3的區別在於LIN1.3沒有傳輸層,因此沒有流量控制和傳輸時間控制功能。LIN1.3協議中沒有對診斷和節點配置進行標準化,因此在LIN1.3中完成的相應功能都是在自定義診斷中完成的。
5.LIN網絡拓撲:
1)單個主任務,多個從任務;
2)主節點包含主任務和從任務;
3)從節點只包含從任務;
4)主任務決定總線上的消息並從從任務發送數據;
6.林框架:
通信原理:主任務發送報頭,從任務用響應補充報頭,形成完整的消息。
消息傳輸:消息的內容由ID定義。
廣播:所有節點都可以接受總線上的幀。
7、排班表
1)負責調度網絡中發送消息的順序;
2)分配發送時隙;對於每壹幀消息;
3)發送時隙:可以發送消息的時間;
4)不同消息的發送時隙可能不同;
5)在網絡系統設計階段確定調度表;
6)調度表使LIN通信可預測;
8、開關調度:
主任務可以有多個時間表並在不同的時間表之間切換,這增加了通信的靈活性。
(1)字節間隔位於每個字節之間;
(2)響應間隔位於報頭和響應之間;
(3)給MCU留足處理時間;
(4)幀長度可能增加;
1,字節字段
1)基於SCI的通信格式;
2)發送壹個字節需要10位時間(TBIT );
2.間隔場
1)表示由主節點發送的幀消息的開始;
2)間隔信號由至少13個主導位組成;
3)間隔符由至少1個不可見位組成;
4)空間字段是唯壹不符合字節字段格式的字段;
5)從節點需要檢測至少11個連續的主導位,才能將其視為間隔信號;
3.同步字段
1)確保所有從節點使用與發送和接收數據的節點相同的波特率;
2)壹個固定結構的字節:0X55;
4.標識符字段
1)ID的範圍從0到63(0x3f);
2)奇偶P0,p 1;
5.數據區
1)數據字段長度1到8個字節;
2)低位字節優先,低位字節優先;
3)如果信號的長度超過1字節,則首先用低位發送(小端);
6.校驗和字段
用於檢查接收到的數據是否正確。
1)經典校驗和僅檢查數據字段(LIN1.3)。
2)增強校驗和以檢查標識符字段和數據字段的內容(LIN2.0,LIN2.1)。
標識符為0x3C和0x3D的幀只能使用經典檢查。
計算方法:反轉八位和。
示例:數據=0x4A、0x55、0x93、0xe5。
7.幀長度
最小幀長度
THEADER_NOMINAL=34*TBIT
t response _ NOMINAL = 10 *(NDATA+1)* TBIT
t frame _ NOMINAL = THEADER _ NOMINAL+t response _ NOMINAL
最大幀長度
THEADER _ MAX = 1.4 * THEADER _ NOMINAL
t響應_最大值= 1.4 * t響應_標稱值
t幀最大值=標題最大值+響應最大值
8.框架類型
1)無條件幀
最常用的幀類型,沒有任何發送條件;
標識符(ID)是0到59(0x3b);
主任務發送壹個標頭,壹個任務響應,壹個或多個任務接收下圖:
框架?ID = 0x30響應部分的發布節點是從節點1,監聽節點是主節點。典型應用,如從節點1,向主節點報告信號狀態。
框架?ID = 0x31響應部分的發布節點為主節點,監聽節點為從節點1和從節點2。典型的應用如主節點向從節點發布信息。
框架?ID = 0x32響應部分的發布節點是從節點2,監聽節點是從節點1。典型的應用是從節點之間的通信。
2)
引入事件觸發幀的目的是節省帶寬。
BCM(主人)需要獲得四門的地位。如何實現這壹點?
第壹種方式:
壹次請求四個門的狀態會浪費帶寬,因為門的狀態並不經常發生。
第二種方法:
將請求四個門狀態的幀組合成壹個事件觸發幀,主機不需要壹次發送四個幀來請求門狀態,而只需要發送壹個事件觸發幀,並且哪個門狀態發生變化,相應的門將對事件觸發幀做出響應。
事件觸發幀的響應將出現在以下三種情況下:
第壹種:沒有門狀態變化。
第二種類型:壹扇門的狀態發生變化:
第三種方式:當多個門的狀態發生變化時,就會產生沖突。當處理沖突時,與第壹種方法壹樣,主機需要重新發送四個幀來請求各個門的狀態。LIN1.3與LIN2.0和LIN2.1不同,不同之處在於LIN1.3不切換調度表,占用事件觸發幀的時隙,而LIN2.0和LIN2.1將切換沖突調度表,如下圖所示:
3)零星幀(零星幀)
引入零星幀的目的也是為了節省帶寬。例如,BCM(主機)需要向四個窗口發送控制命令,但兩個窗口的控制命令很少同時執行,浪費了大量帶寬。
具體方案如下:
4 .診斷框架
診斷幀用於傳輸診斷或配置信息,通常包含8個字節。
標識符:
60(0x3C):主請求幀
61(0x3D):來自響應幀
傳輸模式:
5)保留框架。
標識符:?62(0x3e)、63(0x3f)
LIN 2.1中未定義保留幀,保留幀供用戶定制或未來版本升級使用。
9、排班表
10偏移
抖動是指幀消息實際開始發送的時間與幀時隙開始的時間之間的時間差(該值在LDF文件中定義)。
TFrame _ Slot & gt抖動+t frame _最大值
11網絡管理
12,睡覺(去睡覺)
只有主節點可以發送休眠指令,從節點在收到休眠指令後可以選擇不進入休眠狀態繼續工作,這取決於應用層協議。
13醒醒
在休眠LIN網絡中,任何節點都可以發送喚醒信號。
發送節點發送的喚醒信號:
接收由節點檢測到的喚醒信號;
14,主任務狀態機模型
15,從任務狀態機模型