日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

lin总线通信

發布時間:2024/3/7 编程问答 78 豆豆
生活随笔 收集整理的這篇文章主要介紹了 lin总线通信 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

lin總線通信

文章目錄

    • lin總線通信
      • 一、綜述
      • 二、LIN 報文結構
      • 三、總線傳輸
      • 四、診斷方式

一、綜述

1.采用單主多從的組網方式,無CAN總線那樣的仲裁機制,最多可連接16個節點(1主15從)

2.主要用于can總線的協助輔助功能,汽車低速反應要求應用,對硬件要求簡單,僅需UART/SCI 接口,輔以簡單驅動程序便可實現 LIN 協議。故幾乎所有的MCU均支持LIN。

3.低成本,最大傳輸速率20kbps。通常低速設計2400bps,中速設計9600bps,高速設計19200bps.

5.在LIN的標準中,令牌被稱為“header”,數據被稱為“response”,報文被稱為“Frame”。在“header”中含有表示報文身份的“ID”,各個節點根據“ID”決定是否發送“Response”。同時,LIN報文是地址尋址方式,總線上的所有節點都能收到報文。

二、LIN 報文結構

1、LIN 總線上具有“顯性”和“隱性”兩種互補的邏輯電平。其中,顯性電平(參考地電壓)是邏輯 0,隱性電平(電源電壓)是邏輯1。

2、如上介紹所說LIN采用的是“主從”通信方式。LIN報文的一幀由“Header”和“Response”組成,“Header”由主任務(主節點)發送,“Response”由從任務(主節點或者從節點)發送。下面將分別介紹“Header”和“Response”。

Header

“Header”又可以分為“Break”、“Synch”和“PID”3個場(圖1)。

? 圖1 header 結構

Break場

Break場不同與其他場,它有意的造成UART通信中的FramingError(從起始位到第10位沒有檢出停止位時的錯誤)來提示LIN總線中的所有從節點之后要開始進行LIN報文的傳輸了。

Break場又可以分為“Break”,“Break-delimiter”,“Break”為13位以上的顯性位,“Break-delimiter”為1位的隱形位,“Break-delimiter”是“Break”結束的標志。

Synch場

Synch場即同步場,第一講在介紹同期信號時提到過同步場。同步場是為了修正各個節點間時鐘的誤差,固定發送0x55的UART數據(包含起始位/停止位)。從節點根據最初和最終的下降沿除以8來算出1位的時間,并以此作為基準來調整自己的時鐘誤差(圖 2)。如果從節點使用的是高精度時鐘的話(允許誤差±1.5%),則不需要調整時鐘的誤差。

圖2synch結構 (參照VectorJapan資料作成)

PID場

ID范圍 0-0x3f

PID場標識LIN報文識別信息,由6位(位0~位5)的報文ID和2位(位6、位7)的奇偶校驗位,合計8位組成(圖3)。

Response

Response由“數據”和“和校驗”2個場組成。都可以通過UART的形式進行傳輸。

圖4數據場結構 (參照VectorJapan資料作成)

數據場

數據場最大可以傳輸8Byte數據

和校驗場

和校驗即我們通常說的Checksum,用來確認接收的數據是否正常。和校驗場的具體值為各個數據場的和的反數,如果有溢出的話,則需要取余運算(mod256)。和校驗有“標準和校驗(Classic Checksum)”和“擴張和校驗(Enhanced Checksum)”兩種形式:

? lin1.3 classic checksum lin2.0 enhanced checksum

標準和校驗

計算對象為所有數據場

LIN1.x為所有報文都使用

LIN2.x為診斷報文(ID60~61)使用

擴張和校驗

計算對象為PID場和數據場

LIN2.x為報文ID0~59使用

通過上述結構,各個報文在LIN總線上傳輸。通過Header調整時鐘誤差,確認報文信息,進行數據的接收和發送,并且有奇偶校驗與和校驗來確保數據的正確性。

時間規定

LIN報文的傳輸是根據LIN的時間表執行的。按照LIN的硬件結構,報文的傳輸時間可以分為“Response時間”和“間隔時間”,設計時間表時需要考慮兩者的誤差(圖5)。

三、總線傳輸

1、主機節點報文發送

A.主機任務主要執行以下功能:

1.定義總線上的通信速率。(同步場?待考)

2.發送報文幀頭,包含同步間隔場、同步場和標識符場三個部分。

3.監控總線通信,通過校驗和確定數據正確性與否。

4.使從機進入喚醒或睡眠狀態,并響應從機的喚醒要求。

2、從機節點報文發送

B.從機任務既可運行于主機又可運行于從機,它主要完成以下功能:

1.等待主機任務發送的同步間隔,使從機與主機于同步場中獲得同步。

2.分析標識符場,若與自己相關,則接收或發送數據,若與自己無關則什么都不做。

3.檢查和發送校驗和。

4.接受主機任務的喚醒和睡眠請求。

四、診斷方式

主節點的診斷:

主節點通常與CAN等主干網絡連接。因此,不使用LIN而是使用主干網絡進行診斷。

從節點的診斷:

LIN通信由主節點進行通信控制,因此從節點不能與診斷測試儀直接通信。所以,從節點的診斷必須通過主節點進行。

轉載參考
LIN通信入門二 - 知乎 (zhihu.com)
LIN總線入門 - 知乎 (zhihu.com)
LIN總線協議簡介_IOT2017的博客-CSDN博客_lin協議

總結

以上是生活随笔為你收集整理的lin总线通信的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。