Hands On-基於 E3110 開發板外設 LIN 的簡介

關鍵字 :E3110LIN

一、前言

       LIN(Local Interconnect Network)是一種基於UART/SCI(通用異步收發器/串行通信接口)的低成本串行通信協議,主要用於汽車、家電、辦公設備等多種領域。LIN 總線可以連接各種電子控制單元(ECU)和傳感器,實現分布式智能化控制,同時具有低成本、低功耗、可靠性高等特點。在汽車應用中,LIN 總線可以用於發動機、車身和車輪等部位的控制系統,實現智能化的車輛控制。

本文的 E3110 開發板就使用了 LIN_TJA1022TK 晶片,本文旨在通過 E3110 開發板所需的 LIN 外設做一個簡單的介紹。

 

二、LIN 總線概述

       LIN 總線是一種低成本的串行通訊網絡,專門針對汽車分布式電子系統而定義的。它基於 SCI(UART)數據格式,採用單主控制器/多從設備的模式,是 UART 中的一種特殊情況。

       LIN 總線的主要優勢在於其低成本和簡單性。它使用一根 12V 信號總線和無固定時間基準的節點同步時鐘線進行通信,通過通信雙方約定的波特率進行通信。這種設計使得 LIN 總線可以廣泛應用於對網絡的帶寬、性能或容錯功能沒有過高要求的應用中,例如汽車座椅、車窗、車燈等分布式電子控制系統。

總的來說,LIN 總線是一種經濟實惠、簡單易用的通信協議,在汽車和家電等領域得到了廣泛應用。

 

2.1  LIN 通信原理

        LIN 總線是一種低成本的串行通訊網絡,針對汽車分布式電子系統而定義。它採用單線傳輸方式,傳輸速率較低,通常只有 20kbps 左右。

        LIN 總線工作原理是由一個總線線路、一個或多個 LIN 節點和一個 LIN 總線管理器組成。LIN 總線管理器負責總線上數據的傳輸,LIN 節點接收和發送數據,通過接收到的信號確定數據的發送方向,然後傳輸數據。

        LIN 總線的主控制單元監控數據傳輸過程和數據傳輸速率。每條信息的開始處都通過 LIN 總線主控單元發送一個信息標題,從屬控制單元通過 LIN 總線進行數據傳輸。

        LIN 總線具有無線連接、支持多種功能、自動化通信、簡單線路和高速高可靠性等優點,是汽車內部通信的重要技術。

 

2.2  LIN 總線技術特點

LIN總線的主要技術特點

1

低成本:基於UART串口通訊,幾乎所有MCU都支持,因此具有廣泛的應用範圍。

2

一個主節點對應多個從節點:在LIN總線中,存在一個主節點,它負責發送信息給從節點。每個從節點都有一個地址碼,主節點通過這個地址碼來確定將信息發送給哪個從節點。

3

從節點不需要時鐘,晶振同步:LIN總線採用單線傳輸方式,從節點不需要獨立的時鐘或晶振來同步,而是通過接收主節點的信號來確定傳輸速率。

4

最大傳輸速率可達20Kbit/s:LIN總線的傳輸速率較低,最大傳輸速率只有20Kbit/s,這使得它適用於對傳輸速率要求不高的應用場景。

5

一根LIN信號線就可以實現ISO9141標準:LIN總線只需要一根信號線就可以實現信息的傳輸,符合ISO9141標準。

6

信號傳輸是可預測的:由於LIN總線採用單線傳輸方式,主節點和從節點之間的通信是按照一定的順序進行的,因此信號傳輸是可預測的。

7

可配置的:不需要改變LIN從節點的硬體軟體就可以增加從節點。

8

支持傳輸層和診斷功能:LIN總線具有傳輸層和診斷功能,可以用於檢測和診斷網絡中的故障。

表2-1 LIN 總線主要技術特點

 

2.3  LIN 主從機節點

       LIN 總線採用單主多從結構,一個主節點對應多個從節點,由總線電氣特性的原因,一個 LIN 網絡最多可以連接 16 個節點。從節點不需要時鐘、晶振同步,LIN 總線具有可預測性,信號傳輸是可預測的。可重構性,不需要改變 LIN 從節點的硬體/軟體就可以增加從節點。LIN 支持傳輸層和診斷功能。LIN 總線上的節點通常被分為兩種類型:主機節點和從機節點。

       主機節點(Master Node)是 LIN 網絡的最高級別節點,負責管理和調度 LIN 網絡上的數據傳輸。它包含主機任務(Master Task)和從機任務(Slave Task),其中主機任務負責調度總線上幀的傳輸次序、監測數據、處理錯誤,並作為標準時鐘參考,而從機任務則負責接收從機節點發出的總線喚醒命令。在 LIN 總線通信中,主機任務決定在 LIN 總線上傳送哪一幀,即實現總線調度表切換,LIN 報文幀頭產生和發送,從機任務提供每一幀響應數據/狀態。

從機節點(Slave Node)則是 LIN 網絡中接收和響應主機節點命令的節點,通常只包含從機任務。

        在實際應用中,主機節點通常只有一個,而從機節點則可以有 1 到 15 個。每個 LIN 從機節點都需要設定唯一的設備地址碼(Device Address),用於標識和區別不同的從機節點。當主機節點發出指令時,會指定需要與之通信的從機節點的設備地址碼,只有與該地址碼相匹配的從機節點才會響應主機節點的指令。

圖2-2 LIN 總線拓撲圖

 

LIN 主從機任務

 

主機任務

從機任務
(從機不能主動發送數據,需要接收主機發送的幀頭、根據幀頭鎖包含的信息做反應)

1

調度總線上幀的傳輸次序

發送應答(幀中除幀頭外剩下的部分)

2

檢測數據,處理錯誤

接收應答

3

作為標準時鐘參考

既不接收也不應答

4

接受從機節點發出的總線喚醒命令

 

表2-3  LIN 主從機任務匯總表

 

2.4  LIN 總線報文幀

LIN報文幀是LIN總線協議中傳輸的基本單元,包含以下幾個部分:

        A、同步間隔(Break Field):LIN總線報文幀的開始部分,由主機任務負責發送幀頭。同步間隔段用於同步所有節點的時間,以便於後續數據傳輸的同步。

        B、同步段(Sync Byte Field):在同步間隔後,由主機任務發送同步段,所有從機任務會接收該同步段並對幀頭所包含的信息進行解析。

        C、受保護的ID段(Protected Identifier Field):該部分用於標識幀的類型和接收者,有助於區分不同的幀類型和接收者。

        D、數據段(Data Field):數據段包含傳輸的具體信息,例如指令、傳感器讀數等。

        E、校驗和段(Checksum Field):用於檢測數據域中是否發生了錯誤,以保證傳輸的正確性。

        在 LIN 報文幀的傳輸過程中,主機任務負責發送幀頭,從機任務接收幀頭並對幀頭所包含的信息進行解析,然後決定是發送應答,還是接收應答,還是不作任何反應。一旦主機發送了幀頭,從機必須對主機發送的幀頭髮送應答,以確認收到。如果從機沒有接收到完整的幀,它會發送一個錯誤應答或者丟棄該幀。



圖2-4 幀結構示意圖


2.5  LIN 網絡管理

LIN 網絡管理分為網絡休眠和喚醒管理,具體情況如下:

       喚醒:當總線處於休眠狀態時,主/從機節點都可以向總線上發送喚醒信號,喚醒信號持續 250μs~5ms。喚醒信號顯性脈衝的結束處算起 100ms 以內準備接收來自主機的命令(幀頭);主機節點也必須被喚醒,在 100ms 之內主機節點發送幀頭開始通信。

       休眠:總線可以再兩種情況下進入休眠。第一種是利用診斷幀中的主機請求幀 0x3C 作休眠命令,要求數據段的第一個字節為 0x00,其餘字節為 0xFF。第二種情況是當總線靜默(沒有顯性和隱性電平之間的切換) 4s~10s 時,節點自動進入休眠狀態。

 

三、E3110 開發板的 LIN 方案設計

        E3110 開發板的設計上,選擇 TJA1022TK 這顆雙 LIN 收發器,它提供了一個本地接口互連網絡(LIN)主/從協議控制器和 LIN 中的物理總線網絡。

        它主要用於使用波特率高達 20kBd 的車載子網並符合 LIN 2.0,LIN 2.1,LIN 2.2,LIN 2.2 a,ISO 17987-4:2016 (12 V LIN) 和 SAE J2602。TJA1022T 和 TJA1022TK(SO14/HVSON14包)是引腳兼容的。

 

3.1  LIN_TJA1022 方框圖

        TJA1022TK 是 LIN 協議控制器系列的接口 IC,具有 6us 的傳播延遲時間。這個系列的接口 IC 通常被應用在汽車分布式電子控制系統中。

        每個 LIN 節點都有一個接口電路,它負責在 LIN 網絡上發送和接收數據。TJA1022TK 是 LIN 節點的一部分,負責將 LIN 網絡與汽車分布式電子控制系統連接起來。

 

圖3-1 LIN_TJA1022TK 系統方框圖

 

3.2  LIN_TJA1022 引腳解析

E3110 開發板的 LIN_TJA1022TK 選用的是  SO8 的一個封裝,晶片共有 8 個管腳及相對應的管腳功能。



圖3-2 TJA1022TK: HVSON14封裝圖

 

引腳號

引腳名稱

功能說明

1

RXD1

接收數據輸出1(開漏),喚醒事件發生後處於低電平狀態。

2

SLP1_N

睡眠控制輸入1,在RXD1上重置喚醒請求。

3

TXD1

發送數據輸入1。

4

RXD2

接收數據輸出2(開漏);喚醒事件發生後處於低電平狀態。

5

SLP2_N

睡眠控制輸入2(活動低);在RXD2上重置喚醒請求。

6

NC

不連接。

7

TXD2

發送數據輸入2。

8

GND

接地。

9

LIN2

LIN總線2號輸入/輸出.

10

VBAT

蓄電池電源。

11

NC

不連接。

12

NC

不連接。

13

LIN1

LIN總線1號輸入/輸出。

14

NC

不連接。

表3-3 LIN_TJA1022TK 引腳解析


備註:為了提高熱和電氣性能,應將 HVSON14 封裝的外露中心焊盤焊接到板級地。

 

3.3  E3110 開發板的 LIN原理圖

        基於 E3110 開發板的 LIN 設計原理圖,LIN 總線輸出引腳通過內部終端電阻器被拉至高電平。對於主控制器應用,應在 VBAT 引腳與 LIN 引腳之間串聯一個外部電阻器和一隻二極體。接收器在 LIN 總線輸入引腳上檢測接收的數據流,然後通過 RXD1 和 RXD2 引腳傳輸給微控制器。當兩個收發器均處於睡眠模式時,功耗非常低。不過即使處於睡眠模式,TJA1022 仍可以通過LIN1/LIN2 和 SLP1_N/SLP2_N 引腳接收到喚醒信號。



圖3-4   LIN_TJA1022TK 原理圖

 

 如對此有更多需求,敬請聯繫世平集團 ATU 部門,atu.cn@wpi-group.com

 

 

四、參考文獻

[1] 《LIN 總線技術及其在汽車電子控制系統中的應用研究》.

[2] 參考《LIN 總線入門》.

[3] 參考【TJA1022TK Product data sheet】.






歡迎在博文下方留言評論,我們會及時回復您的問題。

如有更多需求,歡迎聯繫大聯大世平集團 ATU 部門:atu.sh@wpi-group.com   
作者:Sandy Yang / 楊羽潔


更多資訊,請掃碼關注我們!


★博文內容均由個人提供,與平台無關,如有違法或侵權,請與網站管理員聯繫。

★文明上網,請理性發言。內容一周內被舉報5次,發文人進小黑屋喔~

評論