新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > LIN總線技術及應用——協議規范(三)

        LIN總線技術及應用——協議規范(三)

        作者: 時間:2016-12-13 來源:網絡 收藏

        本文引用地址:http://www.104case.com/article/201612/329289.htm

        一、調度表(Schedule Table)

        ——主任務發送報頭,從任務用響應來補充報頭形成完整的報文。那么報頭到底是怎么發送的呢?

        ——這是在調度表中定義的。

        • 調度表負責調度網絡中各報文發送的順序

        • 調度表為每幀報文分配發送時隙(slot)(發送時隙是報文可以被發送的時間)

        • 不同報文的發送時隙可能不同

        • 報文發送的順序可以在調度表中設定

        • 調度表在網絡系統設計階段確定

        • 調度表使得LIN通信具有可預測性

        • 切換調度表

        • 主任務可以擁有多個調度表,并在不同的調度表之間切換

        • 增加通信的靈活性

        • 調度表可以保證總線永遠不會過載,同時還可以保證信號的周期性。

        • LIN總線最小時間單位是時基(Tbase)。

        • 調度表中用來發送一幀報文的時間稱為幀時隙(Frame_Slot),幀時隙必須是時基的整數倍,調度表是由幀時隙組成的。

        TFrame_Slot = Tbase * n

        • 偏移(jitter)是指一幀報文實際開始發送的時刻與幀時隙起點的時間差。

        TFrame_Slot > jitter + TFrame_Maximum

        二、網絡管理(Network Management)

        1、睡眠(Go To Sleep)

        • 主節點可以發送一幀ID為60(0x3c),第一個字節為0x00其余全為0xFF的主請求幀來使處于工作狀態的從節點進入睡眠。這幀報文稱為睡眠指令。

        • 從節點在接到睡眠指令之后,也可以選擇不進入睡眠狀態而繼續工作,這根據應用層程序而定。

        • 當總線空閑4到10秒的時候,所有從節點自動進入睡眠狀態。

        注:空閑的定義是沒有顯性位和隱性位之間的轉換。

        2、喚醒(Wake Up)

        • 在一個處于睡眠狀態的LIN網絡中,任何一個節點都可以發送喚醒信號。

        • 喚醒信號是一個250us(在20Kbit/s波特率)到5ms(在1Kbit/s波特率)的顯性電平(5個位)。

        • 每一個從節點都需要檢測喚醒信號,當檢測到喚醒信號之后,在100ms以內完成初始化工作。

        • 當從節點發出喚醒信號之后150ms,主節點仍未發送報頭時,從節點可以再次發送喚醒信號。當連續發送了3次喚醒信號之后如果主節點仍未發送報頭,從節點要至少等待1.5秒以后才可以發送第四次喚醒信號。

        • 喚醒過程

        三、狀態管理(Status Management)

        狀態管理的目的是用來發現工作狀態中總線上產生的錯誤。

        • response error

        每一個從節點必須通過狀態管理幀發送response error信號(一個位長),當在響應幀中檢測到錯誤時,這個信號由從節點的驅動器自動設定,發送完狀態管理幀之后又將該位清除。

        • Interpretation

        主節點接收狀態信息位并識別從節點狀態 :



        評論


        技術專區

        關閉
        主站蜘蛛池模板: 巩义市| 武功县| 都兰县| 广东省| 积石山| 临洮县| 随州市| 定西市| 漳浦县| 筠连县| 沙湾县| 靖宇县| 崇仁县| 普格县| 阳朔县| 夹江县| 长宁县| 共和县| 加查县| 武安市| 海门市| 永济市| 黑山县| 裕民县| 合山市| 盈江县| 湘阴县| 嘉善县| 且末县| 咸阳市| 襄樊市| 观塘区| 海阳市| 扎鲁特旗| 化德县| 琼海市| 镇巴县| 林甸县| 沐川县| 九寨沟县| 藁城市|