新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > LIN2.1協議在車窗控制系統中的應用

        LIN2.1協議在車窗控制系統中的應用

        作者: 時間:2012-08-11 來源:網絡 收藏

        當從節點獲得有條件分配NAD的請求后,將根據下面的步驟判斷是否要修改NAD:
        ①根據ID讀取從節點的相關信息。
        ②根據Byte提取相關信息中一個8位數據,例如Byte=1,則提取D1。
        ③與Invert進行異或運算。
        ④與Mask進行與運算。
        ⑤如果結果為0,則修改NAD。
        例如:本產品被新增到一個LIN網絡中,初始NAD為0x06,但網絡中已有了一個NAD為0x06的從節點。于是,用戶可以利用本產品的Func tion ID,假設為0x0000,分配新的NAD為0x08。這里似設已存在的從節點的Function ID不為0x0000。這樣,只有新增節點的NAD會被修改,而已存在從節點的NAD維持為0x06不變。
        (3)保存配置
        保存配置是LIN2.1添加的新功能,用來將從節點的當前配置存入非易失的存儲空間中,下次上電時可以讀出配置數據,這里主要是保存NAD和幀ID。
        (4)分配一系列幀ID
        這一功能可以配置最多4個幀ID,注意診斷幀ID和保留幀ID是不能配置的。
        主節點的請求幀在D1中給出需要分配幀ID的第一個幀在幀數組中的序號,一般來說,從節點所用到的所有幀的ID會被排列成一個幀數組。如果要分配幀ID,則通過D2到D5給出新的幀ID;如果要禁止某個幀,則將這個幀對應的PID設為0x00;如果要繼續使用現在的幀ID,則將這個幀對應的PID設為0xFF。
        (5)讀取從節點信息
        讀取節點信息根據D1中ID的值,可以讀取不同的從節點信息。目前,只規定了ID為0和ID為1的情況,其他可保留或由用戶自己確定。

        3 LIN通信的實現
        3.1 TLE9832的LIN模塊
        TLE9832是一款由英飛凌公司生產的8位功率級單片機,專門用于車窗控制。其中的LIN總線模塊支持LIN2.1和LIN2.0,并向下兼容LIN 1.3。該模塊可以工作在普通模式、接收模式和禁止模式下。各個模式的特點如表1所列。

        c.JPG


        其中,普通模式又可根據傳輸速率的大小分為低速模式、中速模式、高速模式和Flash模式。低速模式的最大傳輸速率為10.4 kbps;中速模式是普通的LIN傳輸模式,最大傳輸速率為20 kbps;高速模式的最大傳輸速率為40 kbps;Flash模式的最大傳輸速率為11 5 khps。為了避免打斷傳輸過程,在普通模式下禁止改變傳輸速率。正確的做法是先禁止發送功能,再改變傳輸速率,最后允許發送功能。
        LIN模塊在普通模式下還建立了一種自動省電機制。當發送隊列中沒有數據時,將自動禁止發送功能;當有發送請求時,將自動開啟發送功能。
        3.2 基于TLE9832的車窗防夾控制系統
        基丁TLE9832的防夾是英飛凌-同濟微控制器與嵌入式系統實驗室的最新研究成果。用戶可以通過按鍵或者LIN總線控制車窗的上升和下降。基于TLE9832的防夾車窗系統原理圖如圖4所示。可通過控制PWM信號控制電機的轉速,而霍爾傳感器TLE4966又會采集電機的轉速并傳送給TLE9832,這樣就構成了閉環控制。此外,電機的電樞電流在轉化為電壓信號后,被傳送給TLE9832的ADC模塊。如果車窗在上升過程中遇到不正常的阻力,電樞電流和電機轉速都會發生異常的變化,TLE9832可以根據這種變化判斷是否執行防夾算法,避免傷害乘客。

        d.JPG


        3.3 LIN通信部分的軟件設計
        LIN通信部分的程序流程如圖5所示。可將車窗控制器中LIN通信部分的程序分為兩個部分:
        ①第一部分為初始化,在每次重新上電后,程序都會首先讀取Flash中的數據,若0x8000中的數據為0x78,則判斷產品在出廠后執行過保存配置的功能。所以程序會將存儲在Flash中的NAD和幀ID讀出來,作為當前的NAD和幀ID。接著是初始化LIN模塊,包括設置與LIN通信相關的定時器和UART等外設,設置從節點的各個參數、波特率等。



        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 天峻县| 洛浦县| 金寨县| 马边| 澜沧| 临清市| 中卫市| 全椒县| 日喀则市| 天津市| 栖霞市| 招远市| 荣成市| 合川市| 香港| 大同市| 阿巴嘎旗| 凤阳县| 德惠市| 汽车| 防城港市| 射洪县| 栖霞市| 泽普县| 长宁县| 利辛县| 霍林郭勒市| 平山县| 沁阳市| 吕梁市| 金阳县| 左云县| 合川市| 阿合奇县| 政和县| 富顺县| 兰西县| 吉安市| 衡阳县| 荥经县| 长沙县|