亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于單片機的本地互聯(lián)網(wǎng)絡(luò)LIN總線幀頭發(fā)送單元設(shè)計

        2020-07-21 00:56:48彭曉珊
        關(guān)鍵詞:單片機

        彭曉珊

        (貴陽學(xué)院 教師工作處,貴州 貴陽 550005)

        本地互聯(lián)網(wǎng)絡(luò)LIN總線屬于低速串行現(xiàn)場總線,作為CAN總線的下屬總線,因其低成本的特點被汽車零部件制造商在車窗、空調(diào)以及車輛各類組合開關(guān)等電子控制單元的設(shè)計中廣泛使用,其電子控制單元ECU一般以單片機作為其控制核心,配合外圍相應(yīng)驅(qū)動電路,并利用單片機中運行的軟件來控制單片機引腳產(chǎn)生符合LIN總線協(xié)議的通信幀,以實現(xiàn)對車輛車窗、空調(diào)等低速受控對象的控制。同時也可以對車窗電機、空調(diào)壓縮機以及組合開關(guān)的運行狀態(tài)進行輪詢訪問。在車窗電機等部件出現(xiàn)故障時也能通過LIN總線即時向車輛中控單元傳送故障代碼。

        1 本地互聯(lián)網(wǎng)絡(luò)LIN總線基本原理

        本地互聯(lián)網(wǎng)絡(luò)LIN總線從硬件角度由單個主節(jié)點和多個從節(jié)點構(gòu)成,用一根總線連接所有節(jié)點,主節(jié)點和從節(jié)點中相應(yīng)的協(xié)議控制軟件使相應(yīng)的引腳產(chǎn)生符合總線協(xié)議的幀。其通信原理及幀結(jié)構(gòu)如下圖1所示,圖1所示的主任務(wù)和從任務(wù)屬于協(xié)議控制軟件部分,主節(jié)點中包括主任務(wù)軟件模塊和從任務(wù)軟件模塊,從節(jié)點僅包括從任務(wù)軟件模塊。LIN總線從網(wǎng)絡(luò)結(jié)構(gòu)層次上可分為三層物理層、數(shù)據(jù)鏈路層和應(yīng)用層,物理層定義了總線電平的高低以及驅(qū)動電流大??;數(shù)據(jù)鏈路層定義了幀的構(gòu)成和各位的定義;應(yīng)用層定義了電子控制單元在接收到幀頭后所發(fā)出的響應(yīng)。

        本地互聯(lián)網(wǎng)絡(luò)LIN總線通信的實體為總線幀,每次通信過程包括幀頭和響應(yīng)。由主節(jié)點中的主任務(wù)軟件模塊發(fā)起,向總線發(fā)送幀頭,幀頭包括間隔場,同步場和標(biāo)識符場。所有節(jié)點中的從任務(wù)軟件模塊均接受幀頭,并且從節(jié)點可以由接收到的同步場同步自身的通信波特率,由標(biāo)識符場確定本次通信的類型和通信的雙方,既而發(fā)出相應(yīng)的響應(yīng)以完成整個通信過程。標(biāo)識符定義通信的收發(fā)節(jié)點,可為主節(jié)點和某個從節(jié)點,也可為某個從節(jié)點和另一從節(jié)點。[1]同時標(biāo)識符場定義的三類通信幀,基礎(chǔ)幀為無條件幀用于一般控制用,如電動車窗的自動或者點動上下等等;事件觸發(fā)幀用于檢查各個受控對象的工作狀態(tài),一般以遍歷問詢方式進行,如檢測車窗電機、車燈等的狀態(tài)等等;偶發(fā)幀用于偶發(fā)信號的接收,例如轉(zhuǎn)向燈撥動開關(guān)等等。事件觸發(fā)幀和偶發(fā)幀的實現(xiàn)過程中,均由基礎(chǔ)幀作為最后實現(xiàn)幀。

        圖1 LIN總線通信原理及總線幀

        2 本地互聯(lián)網(wǎng)絡(luò)LIN總線幀頭詳細(xì)結(jié)構(gòu)

        LIN總線電平采用負(fù)邏輯電平,電平的基準(zhǔn)為車載蓄電池的VBAT電平為直流12V。當(dāng)總線電壓為80%VBAT時,總線處于高電平(負(fù)邏輯的隱形電平);當(dāng)總線電壓低于10%VBAT時,總線處于低電平(負(fù)邏輯的顯性電平)。總線處于空閑狀態(tài)時總線電平呈現(xiàn)隱形電平(高電位)。LIN總線的通信速率較低,波特率一般在20Kbps 以下,其每一個位占據(jù)的時間為位定時,位定時則控制在50us以上。

        LIN總線幀頭由間隔場、同步場和標(biāo)識符場構(gòu)成。幀頭的詳細(xì)結(jié)構(gòu)如圖2所示。間隔場是由13位及以上的顯性電平組成,標(biāo)志著一個幀的開始。間隔場與同步場之間的間隔符至少為1位隱形電平。同步場為0x55串行數(shù)據(jù),0x55數(shù)據(jù)的二進制碼為01010101,可用來同步從節(jié)點的時鐘,整個LIN總線通信的速率由0x55數(shù)據(jù)的位定時來標(biāo)定。標(biāo)識符場PID段由10位構(gòu)成,標(biāo)識了幀的類型和目的地,包括起始位、幀ID位0~5、異或校驗位為P0和P1。P0位的值為ID0ID1ID2ID4異或運算的結(jié)果,P1位的值為ID1ID3ID4ID5異或運算結(jié)果并取反。[2]

        圖2 LIN總線幀頭詳細(xì)結(jié)構(gòu)

        3 LIN總線幀頭發(fā)送單元設(shè)計

        3.1 硬件設(shè)計

        針對利用單片機單個通用引腳虛擬串行通信模擬出幀頭的方式和利用單片機UART接口引腳輸出幀頭的方式,硬件設(shè)計略有不同,采用單個通用引腳模擬串行通信模擬幀頭方式在硬件設(shè)計上采用51單片機的通用I/O端口P1口實現(xiàn),P1口的八根引腳P1.0~P1.7均可以采用。P1口引腳接入MCP201驅(qū)動芯片的RXD中,由MCP201驅(qū)動芯片連接至LIN總線。單個引腳模擬串行通信其硬件如圖3所示。單片機采用AT89C51單片機,晶振部分和電源啟動復(fù)位部分采用常規(guī)設(shè)計,P1.0連接至MCP201的RXD端(異步數(shù)據(jù)接收端)。[3]

        MCP201為微芯公司提供的專用LIN總線驅(qū)動芯片,1號引腳RXD接收來自單片機的幀頭信號。CS/WAKE為片選信號和喚醒信號端,利用VCC電壓連接R1和R2限壓控制保持片選信號有效,在車載電控單元中則可考慮采用某一引腳信號對MCP201芯片進行喚醒。

        由于MCP201內(nèi)部輸出電路采用OC門輸出,其輸出集電極通過一個電阻R5和IN4007二極管接入VBAT,理論分析,其顯性電壓應(yīng)為0V,隱形電壓為VBAT。實測LIN總線電壓數(shù)據(jù)和VBAT數(shù)據(jù)表如下,VBAT采用了一可調(diào)電源替代,可調(diào)范圍為0~30VDC,符合MCP201使用電壓范圍以及車載蓄電池電壓范圍。D1和D2采用IN4007二極管,反向擊穿電壓可承受1000V,可有效防止來自總線的浪涌干擾。同時在LIN總線上連接雙向穩(wěn)壓二極管TVS(齊納二極管),利用其在低阻區(qū)中電流增加而電壓則保持恒定電壓。同時利用其極快的響應(yīng)時間(亞納秒級)和相當(dāng)高的浪涌吸收能力保護后面的電路元件不受瞬態(tài)高壓尖峰脈沖的沖擊。電容C4采用200uF電解電容來穩(wěn)定供電電源電壓,電容C3和C5采用104系列瓷片電容濾除電源上的毛刺。

        圖3 模擬串行通信方式硬件原理圖

        針對采用單片機UART接口引腳的方式,將P3.1引腳TXD接入MCP201的RXD中,利用UART(通用異步發(fā)送接收)接口模塊產(chǎn)生符合LIN總線協(xié)議的幀頭。LIN總線幀頭發(fā)送單元硬件設(shè)計如圖4所示。

        圖4 單片機UART接口引腳方式硬件原理圖

        3.2 軟件設(shè)計

        LIN總線幀發(fā)送單元的軟件設(shè)計采用C51語言設(shè)計,針對利用單片機單個通用引腳虛擬串行通信模擬出幀頭的方式,在軟件設(shè)計上較為復(fù)雜,需要利用單片機的定時器模擬出串行通信數(shù)據(jù)。以P1.0引腳作為LIN總線幀頭輸出引腳為例,波特率設(shè)定為20Kbps,位定時為50us,單片機系統(tǒng)晶振設(shè)置為12MHz,則定時計數(shù)器計數(shù)周期1us,按照LIN總線幀頭結(jié)構(gòu)的規(guī)定,間隔場是幀頭開始的標(biāo)志,需要至少13TBIT,根據(jù)設(shè)定的位定時計算出需要650us的低電平。在程序的開始部分,置位P1.0高電平即為產(chǎn)生低電平做好準(zhǔn)備,然后進行定時器T0的設(shè)定并啟動650us定時,利用定時器T0的工作方式0,13位定時器計算定時器初始值為1D76H,其中1DH送至TH0,76H送至TL0,TMOD定時控制寄存器設(shè)定為00H。然后對定時器T0的中斷溢出標(biāo)志位TF0進行采樣,如果采樣值為0,則表示定時的時間未到,則繼續(xù)保持P1.0低電平。如果采樣值為1,則表示定時器溢出,定時時間到,則P1.0置位回到高電平,至此間隔場中650us低電平產(chǎn)生完成。可利用同樣的模式產(chǎn)生50us的間隔場與同步場間隔部分。

        同步場數(shù)據(jù)0x55用來同步整個系統(tǒng)的通信時鐘,該數(shù)據(jù)特點是5個周期的占空比為50%的方波。針對該場信號的特點,利用定時T0的工作模式2自動重裝初值的8位定時計數(shù)方式進行,TMOD設(shè)置為02H,8位定時器計算定時器初始值位為CEH,TH0和TL0均裝入該定時計數(shù)初始值,當(dāng)定時時間到后,TF0置1,并將TH0中的計數(shù)初值自動送入TL0,TL0從初始值重新進行加1計算。同時定時時間到后,取反P1.0口電平狀態(tài)實現(xiàn)電平翻轉(zhuǎn)。利用翻轉(zhuǎn)次數(shù)計數(shù)變量自減1是否為零判斷是否完成了10次電平翻轉(zhuǎn)。

        標(biāo)識符場的實現(xiàn)較為簡單,將定時器T0設(shè)置回工作方式0,13位定時器,定時時間為50us。然后根據(jù)LIN總線對幀頭中標(biāo)識符場的要求計算出10位標(biāo)識符場的每一位數(shù)據(jù),利用P1.0引腳逐個串行輸出每一位數(shù)據(jù)。其程序流程圖如圖5所示。

        圖5 單個引腳模擬串行數(shù)據(jù)方式流程圖

        針對采用單片機UART接口引腳的方式,則充分利用了單片機的UART模塊,將字符數(shù)據(jù)以串行數(shù)據(jù)的方式從單片機的P3.1引腳TXD發(fā)送出去,軟件設(shè)計則重點圍繞UART模塊的設(shè)置展開,核心在總線通信波特率和單片機串行口通信波特率之間進行計算匹配。

        總線幀頭的間隔場13位定時為至少650us。UART的輸出數(shù)據(jù)格式采用10為幀格式,1位起始位、8位數(shù)據(jù)位、1位停止位,8位數(shù)據(jù)位均采用低電平即數(shù)據(jù)位0x00。UART模塊采用方式1工作模式,單片機的晶振采用11.0592MHz,波特率設(shè)定為9600bps,位定時則為1ms。波特率由定時器T1的溢出率設(shè)定,定時器T1則采用自動重裝的8位定時方式,SMOD設(shè)定為0x00,TH1的初始值計算為FDH。采用以上的配置后,利用UART模塊方式1工作方式發(fā)送數(shù)據(jù)0x00,匯同起始位低電平產(chǎn)生9個低電位共900us,實現(xiàn)了總線幀頭的間隔場。

        總線幀頭的同步間隔場為0x55,總線通信波特率為20 Kbps,要求位定時為20us。單片機晶振仍然保持為11.0592MHz,單片機UART模塊波特率也設(shè)定為20 Kbps,SMOD設(shè)置為0x01,工作方式1的波特率計算方式為T1溢出率的16分頻。溢出率的計算方式為TH1計數(shù)個數(shù)12倍的導(dǎo)數(shù)和單片機晶振頻率之乘積。計算匹配后,TH1的初始值為FDH。采用以上的配置后,利用UART模塊方式1工作方式發(fā)送數(shù)據(jù)0x55,實現(xiàn)了總線幀頭的同步場。

        總線幀頭的標(biāo)識符場,由ID0~ID5、P0和P1構(gòu)成,共8位數(shù)據(jù)。ID0~ID5幀ID標(biāo)識了幀的類別和目的地,由開發(fā)人員根據(jù)LIN總線協(xié)議確定,P0和P1為幀ID的異或校驗位。單片機UART模塊仍采用工作方式1,單片機UART模塊波特率也設(shè)定為20 Kbps,SMOD設(shè)置為0x01,計算匹配后,TH1的初始值仍為FDH。采用以上的配置后,利用UART模塊方式1工作方式發(fā)送數(shù)據(jù)ID0~ID5、P0和P1,實現(xiàn)了總線幀頭的標(biāo)識符場。

        圖6 UART模塊產(chǎn)生幀頭的程序流程圖

        3.3 發(fā)送單元測試

        采用上述硬軟件設(shè)計后,經(jīng)過原理圖繪制和對應(yīng)PCB板設(shè)計后,采用泰克示波器對LIN總線幀發(fā)送單元工作波形進行測試,其測試結(jié)果如圖7所示,總線幀頭波形符合LIN2.2標(biāo)準(zhǔn),同步間隔場顯性TSYNBRK低電平為13TBIT,同步間隔界定符隱形TSYNDEL為1 TBIT,即50us設(shè)定。

        圖7 測試波形

        系統(tǒng)給定的波特率為20Kbps,每一個位占用時間為50us,通過調(diào)節(jié)泰克示波器的掃描頻率,可以測得幀頭的間隔場為651us,誤差為0.15%;同步場0x55在波形上完整體現(xiàn)為10個占空比為50%的方波。滿足LIN總線協(xié)議對總線幀頭的要求。

        4 結(jié)論

        本地互聯(lián)網(wǎng)絡(luò)LIN總線幀頭發(fā)送單元的設(shè)計是實現(xiàn)LIN總線通信的重要環(huán)節(jié),在汽車電子行業(yè)中對于車載電子控制單元能耗有要求嚴(yán)格,在測試電控單元時會綜合給出靜態(tài)功耗和動態(tài)功耗指標(biāo),所以對于設(shè)計者而言,需根據(jù)該電控單元所需完成的功能綜合考慮。利用單片機單個通用引腳模擬串行通信模擬出幀頭的方式,僅利用單引腳和定時器T0,可以有效節(jié)省單片機的硬件資源,充分利用軟件實現(xiàn)幀頭的發(fā)送,適用于車載電子控制單元上連接了較多的其他硬件設(shè)備的場合。而利用單片機UART接口引腳輸出幀頭的方式則可充分利用單片機的硬件資源,大大節(jié)省代碼空間。適用于車載電子控制單元需要運行較為復(fù)雜的其他控制協(xié)議,而連接的其他硬件設(shè)備較少的場合。研發(fā)人員可根據(jù)不同的應(yīng)用場合,采用合適的方式進行LIN總線車載電子控制單元的設(shè)計,這兩種設(shè)計方式為LIN總線車載電子控制單元提供了理論基礎(chǔ)和工程技術(shù)支撐。

        猜你喜歡
        單片機
        基于單片機的SPWM控制逆變器的設(shè)計與實現(xiàn)
        電子制作(2019年13期)2020-01-14 03:15:28
        基于單片機的層次漸變暖燈的研究
        電子制作(2019年15期)2019-08-27 01:12:10
        基于單片機的多功能智能插排
        電子制作(2019年11期)2019-07-04 00:34:48
        基于單片機的便捷式LCF測量儀
        電子制作(2019年9期)2019-05-30 09:42:02
        小議PLC與單片機之間的串行通信及應(yīng)用
        電子制作(2018年12期)2018-08-01 00:48:04
        MSP430單片機在仿真中要注意的幾點問題
        電子制作(2017年9期)2017-04-17 03:00:53
        基于單片機的平衡控制系統(tǒng)設(shè)計
        電子制作(2017年19期)2017-02-02 07:08:27
        基于單片機的三維LED點陣設(shè)計
        電子制作(2016年21期)2016-05-17 03:52:51
        Microchip推出兩個全新PIC單片機系列
        基于Proteus的單片機控制系統(tǒng)的仿真設(shè)計
        国产精品麻豆欧美日韩ww| 国产交换精品一区二区三区| 亚洲综合网国产精品一区| 免费va国产高清大片在线| 97久久精品人人做人人爽| 黑森林福利视频导航| 自拍偷自拍亚洲精品播放| 美女熟妇67194免费入口| 亚洲长腿丝袜中文字幕| 麻豆亚洲av熟女国产一区二| 国产亚洲一区二区手机在线观看| 日韩精品国产自在欧美| 三级日本午夜在线观看| 久久久久久久久无码精品亚洲日韩| 久久久久人妻一区精品色欧美 | 夜夜爽无码一区二区三区| 人妻精品人妻一区二区三区四五| 亚洲高清国产一区二区| 丁香六月久久婷婷开心| 国产主播福利一区二区| av资源在线播放网站| 国产99一区二区三区四区| 国产特级毛片aaaaaa| 亚洲久无码中文字幕热| 国产一区二区免费在线观看视频| 国产精品一区二区三区卡| 久久精品国产69国产精品亚洲| av色综合网站| 丰满少妇av一区二区三区| 日本人妻97中文字幕| 欧美成人精品a∨在线观看| 97人人超碰国产精品最新o| 成人av天堂一区二区| 女同同志熟女人妻二区| 曰韩无码二三区中文字幕| 在线精品日韩一区二区三区| 超碰青青草手机在线免费观看| 国产做无码视频在线观看 | 国产97在线 | 日韩| 伊人久久成人成综合网222| 国产精品久久久久久久久免费观看 |