国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于MCS-51的CAN/LIN網(wǎng)關(guān)設(shè)計(jì)

2014-02-28 07:50:36呂晉超葉玖林李世超
關(guān)鍵詞:波特率緩沖器網(wǎng)關(guān)

呂晉超,葉玖林,李世超

(電子科技大學(xué),微電子與固體電子學(xué)院,四川成都610054)

基于MCS-51的CAN/LIN網(wǎng)關(guān)設(shè)計(jì)

呂晉超,葉玖林,李世超

(電子科技大學(xué),微電子與固體電子學(xué)院,四川成都610054)

CAN總線和LIN總線在汽車工業(yè)中大規(guī)模應(yīng)用后,如何有效地解決CAN總線和LIN總線相互轉(zhuǎn)換已然成為一個(gè)問(wèn)題。論文基于MCS-51提供了一個(gè)有效的解決方案,運(yùn)用MCS-51定時(shí)器的定時(shí)功能,定時(shí)向各節(jié)點(diǎn)發(fā)起通訊來(lái)達(dá)到實(shí)現(xiàn)數(shù)據(jù)傳輸?shù)哪康摹?/p>

MCS-51;CAN總線;LIN總線;網(wǎng)關(guān)

1 引言

在汽車電子工業(yè)的發(fā)展過(guò)程中,CAN總線協(xié)議和 LIN總線協(xié)議在其中扮演著重要的角色。CAN適用于要求高速長(zhǎng)距離傳輸?shù)膱?chǎng)合,而對(duì)于低速廉價(jià)的要求,LIN更加適用,但因?yàn)橐粋€(gè)系統(tǒng)內(nèi)出現(xiàn)了兩個(gè)不同的總線協(xié)議,并且兩個(gè)協(xié)議之間要進(jìn)行數(shù)據(jù)交換,所以我們就需要CAN/LIN網(wǎng)關(guān)對(duì)速率、其數(shù)據(jù)等進(jìn)行轉(zhuǎn)換,下面我們對(duì)CAN和LIN協(xié)議進(jìn)行簡(jiǎn)單介紹。

1.1 CAN協(xié)議

CAN總線是德國(guó)BOSCH公司從80年代初為解決現(xiàn)代汽車中眾多的控制與測(cè)試儀器之間的數(shù)據(jù)交換而開(kāi)發(fā)的一種串行數(shù)據(jù)通信協(xié)議。CAN總線具有如下特點(diǎn):可在各節(jié)點(diǎn)之間實(shí)現(xiàn)自由通信。CAN總線采用了多主競(jìng)爭(zhēng)式總線結(jié)構(gòu),具有多主站運(yùn)行和分散仲裁的串行總線以及廣播通信的特點(diǎn);通信速率快,通信速率最高可達(dá)1Mbps;結(jié)構(gòu)簡(jiǎn)單,只有2根線與外部相連,并且內(nèi)部集成了錯(cuò)誤探測(cè)和管理模塊。CAN總線的數(shù)據(jù)傳輸采用短幀的格式,可分為標(biāo)準(zhǔn)格式幀和擴(kuò)展格式幀,幀則可分為:數(shù)據(jù)幀、遠(yuǎn)程幀、錯(cuò)誤幀、過(guò)載幀。

1.2 LIN協(xié)議

LIN總線是由1999年成立的LIN聯(lián)盟所推出的專門(mén)用于汽車控制的串行通信協(xié)議。在對(duì)通訊速率要求不高的應(yīng)用中(在門(mén)窗、空調(diào)、照明燈等),LIN總線是CAN總線的低成本的有效補(bǔ)充。LIN總線具有如下特點(diǎn):低成本:基于通用UART接口幾乎所有微控制器都具備LIN必需的硬件;單主控器/多從設(shè)備模式無(wú)需仲裁機(jī)制;傳輸速率最高可達(dá)20Kbit/s。LIN總線的傳輸(報(bào)文傳輸)由報(bào)文幀的格式形成和控制,一個(gè)報(bào)文幀是由主機(jī)節(jié)點(diǎn)發(fā)送的報(bào)頭和由主機(jī)或一個(gè)從機(jī)節(jié)點(diǎn)發(fā)送的響應(yīng)組成。報(bào)文幀的報(bào)頭包括同步間隔場(chǎng)、同步場(chǎng)和標(biāo)識(shí)符場(chǎng)。報(bào)文幀的響應(yīng)則由字節(jié)場(chǎng)組成:數(shù)據(jù)場(chǎng)和校驗(yàn)和場(chǎng)。

2 CAN/LIN網(wǎng)關(guān)的硬件實(shí)現(xiàn)

CAN總線和LIN總線是一個(gè)系統(tǒng)中兩個(gè)不同的總線,并且要進(jìn)行數(shù)據(jù)交換,CAN/LIN網(wǎng)關(guān)就是充當(dāng)一個(gè)橋梁的角色,在網(wǎng)關(guān)內(nèi)部實(shí)現(xiàn)協(xié)議的轉(zhuǎn)換,除此之外網(wǎng)關(guān)還要匹配兩種總線的傳輸速率。就硬件邏輯實(shí)現(xiàn)的角度,可采用“CAN接口驅(qū)動(dòng)—中央控制器—LIN接口驅(qū)動(dòng)”的結(jié)構(gòu)。

2.1 CAN接口驅(qū)動(dòng)

一個(gè)CAN接口驅(qū)動(dòng)由一個(gè)CAN控制器、CAN收發(fā)器。CAN控制器完成CAN協(xié)議的所要求的報(bào)文格式的發(fā)送和接收,CAN收發(fā)器為CAN控制器和CAN總線提供物理接口。本文的CAN控制器采用 Philips公司的 SJA1000,SJA1000具有支持CAN2.0,包括標(biāo)準(zhǔn)的和擴(kuò)展的數(shù)據(jù)和遠(yuǎn)程幀、具有擴(kuò)展的64字節(jié)FIFO接收緩沖器、具有仲裁丟失捕獲寄存器的特點(diǎn);CAN的收發(fā)器采用的是Philips公司的 TJA1050,TJA1050具有高速率(最高達(dá)1Mbps)、電磁抗干擾EMI性極高、驅(qū)動(dòng)能力強(qiáng)等的特點(diǎn)。

2.2 LIN接口驅(qū)動(dòng)

由于LIN協(xié)議相較于CAN協(xié)議較為簡(jiǎn)單并且對(duì)速度要求不高,所以LIN的接口驅(qū)動(dòng)中沒(méi)有LIN控制器,LIN總線的協(xié)議只需具有UART串口的微處理器軟件編寫(xiě),所以LIN接口驅(qū)動(dòng)只有單獨(dú)的LIN收發(fā)器組成。LIN 收發(fā)器采用 Philips公司的TJA1020,TJA1020具有波特率高達(dá)20Kbps、高抗電磁干擾性、控制輸入電平和3.3V以及5V的器件兼容等的特點(diǎn)。

2.3 中央控制器

中央控制器是CAN/LIN網(wǎng)關(guān)的核心,它起著控制系統(tǒng)的數(shù)據(jù)發(fā)送和接收、報(bào)文格式的轉(zhuǎn)換等功能。中央控制器采用MCS-51單片機(jī),它具有操作簡(jiǎn)單、成本低、穩(wěn)定性高等的特點(diǎn),下圖為CAN/LIN網(wǎng)關(guān)的硬件電路圖。

3 CAN/LIN網(wǎng)關(guān)的軟件實(shí)現(xiàn)

有了硬件的基礎(chǔ),就需要軟件的實(shí)現(xiàn)來(lái)完成網(wǎng)關(guān)的功能。網(wǎng)關(guān)的功能主要功能是實(shí)現(xiàn) CAN/LIN協(xié)議的轉(zhuǎn)換,但同時(shí)網(wǎng)關(guān)是CAN總線上的一個(gè)節(jié)點(diǎn),它能實(shí)現(xiàn)CAN總線的相互通信,網(wǎng)關(guān)也是LIN總線上的主機(jī),由它來(lái)控制LIN總線上節(jié)點(diǎn)之間的通信。無(wú)論是CAN協(xié)議向LIN協(xié)議的轉(zhuǎn)換還是LIN協(xié)議向CAN協(xié)議轉(zhuǎn)換都需要向網(wǎng)關(guān)發(fā)送數(shù)據(jù),網(wǎng)關(guān)處理發(fā)送過(guò)來(lái)的數(shù)據(jù),傳輸?shù)搅硪粭l總線上。如下圖所示,CAN(或LIN)節(jié)點(diǎn)分別將數(shù)據(jù)發(fā)送到總線上,中間的網(wǎng)關(guān)接收總線上的數(shù)據(jù),經(jīng)數(shù)據(jù)處理,發(fā)到LIN(或CAN)總線上,最終LIN(或CAN)節(jié)點(diǎn)接收總線的數(shù)據(jù),需要注意的是網(wǎng)關(guān)中的4個(gè)緩沖器并不是硬件緩沖器,而是軟件緩沖器,是程序模塊,起對(duì)數(shù)據(jù)進(jìn)行處理的作用。

本文利用的是分時(shí)向各節(jié)點(diǎn)發(fā)起通訊,具體的軟件實(shí)現(xiàn)可利用MCS-51單片機(jī)的定時(shí)功能,采用依次向各節(jié)點(diǎn)發(fā)起通信的方式來(lái)進(jìn)行數(shù)據(jù)交換。將MSC-51的定時(shí)器0設(shè)置一定的時(shí)間T,每隔時(shí)間T就去檢測(cè)各節(jié)點(diǎn)的狀態(tài),如下圖所示,最初是初始化MCS-51單片機(jī)和CAN控制器,而后檢查定時(shí)器0是否有置位,如果說(shuō)置位了則檢測(cè)LIN節(jié)點(diǎn)是否有數(shù)據(jù)發(fā)出,有的話將LIN節(jié)點(diǎn)的發(fā)送緩沖器數(shù)據(jù)發(fā)送到網(wǎng)關(guān)的LIN接收緩沖器,然后依次將數(shù)據(jù)一層層地發(fā)送到CAN節(jié)點(diǎn)上,之后再檢測(cè)網(wǎng)關(guān)的CAN接收緩沖器,如果有數(shù)據(jù)則發(fā)送到網(wǎng)關(guān)的LIN發(fā)送緩沖器,網(wǎng)管的LIN發(fā)送緩沖器有數(shù)據(jù),此時(shí)將這個(gè)數(shù)據(jù)發(fā)到LIN節(jié)點(diǎn)上。具體的邏輯結(jié)構(gòu)如下圖所示。

4 實(shí)驗(yàn)測(cè)試

為了驗(yàn)證算法的可行性和程序的正確性以及網(wǎng)關(guān)性能,完成了一個(gè)測(cè)試系統(tǒng)在測(cè)試系統(tǒng)中,由控制臺(tái)、CAN節(jié)點(diǎn)1、LIN節(jié)點(diǎn)1和LIN節(jié)點(diǎn)2組成,其中控制臺(tái)連接到CAN總線,它既是CAN總線上的節(jié)點(diǎn)同時(shí)也是測(cè)試系統(tǒng)的控制臺(tái)。由控制臺(tái)可對(duì)其它三個(gè)節(jié)點(diǎn)進(jìn)行通信,而其它三個(gè)節(jié)點(diǎn)又可通過(guò)故障開(kāi)關(guān)對(duì)控制臺(tái)進(jìn)行通訊,可通過(guò)各節(jié)點(diǎn)上的指示燈來(lái)獲知數(shù)據(jù)的發(fā)送也接收。上圖為測(cè)試系統(tǒng),下圖為測(cè)試網(wǎng)關(guān)。

在CAN/LIN網(wǎng)關(guān)中,實(shí)時(shí)性是評(píng)估系統(tǒng)的重要性能數(shù)據(jù),可以通過(guò)數(shù)據(jù)發(fā)送也接收的時(shí)間差異來(lái)判斷系統(tǒng)實(shí)現(xiàn)的好壞。為了評(píng)估此系統(tǒng)的實(shí)時(shí)性,在不同LIN波特率(Kbps)和CAN波特率(Kbps)測(cè)試延時(shí)時(shí)間。

延時(shí)時(shí)間(m s)L I N波特率( 2 . 4 4 . 8 9 . 6 1 4 . 4 1 9 . 2 1 0 0 5 6 4 8 4 0 3 1 2 1 2 5 0 5 6 4 7 3 9 3 0 2 1 1 0 2 4 5 3 4 5 3 8 2 7 1 9

從上表數(shù)據(jù)可以看出,高速總線CAN的波特率提升對(duì)于延時(shí)時(shí)間的減小影響較小,而通過(guò)對(duì)低速總線LIN波特率的提升對(duì)于延時(shí)時(shí)間的減小效果較為明顯。所以說(shuō) LIN波特率是延時(shí)時(shí)間的主要因素,CAN波特率是延時(shí)時(shí)間的次要因素。在對(duì)實(shí)時(shí)性要求不高的場(chǎng)合,可通過(guò)提高LIN波特率來(lái)達(dá)到較小延時(shí)時(shí)間的目的,而對(duì)實(shí)時(shí)性要求較高的場(chǎng)合,可通過(guò)同時(shí)提高LIN波特率和CAN波特率來(lái)減小延時(shí)時(shí)間。

5 總結(jié)

基于MCS-51單片機(jī)的CAN/LIN網(wǎng)關(guān)設(shè)計(jì)有效地解決了CAN總線與LIN總線的相互數(shù)據(jù)傳輸問(wèn)題,并且采用分時(shí)向各節(jié)點(diǎn)發(fā)起通訊的方法具有程序結(jié)構(gòu)清晰、程序移植性好、通用性好、成本低廉等優(yōu)勢(shì)。利用MCS-51單片機(jī)實(shí)現(xiàn)的CAN/LIN網(wǎng)關(guān)設(shè)計(jì)也存在一定的局限性,在硬件電路的集成度方面還存在不足,有待今后進(jìn)一步改善。

[1]崔俊鋒,袁濤.車身混合網(wǎng)絡(luò)中CAN/LIN網(wǎng)關(guān)的設(shè)計(jì)與實(shí)現(xiàn)[J].微計(jì)算機(jī)信息,2006,22(3).

[2]王豐華.汽車上CAN/LIN混合網(wǎng)絡(luò)組網(wǎng)技術(shù)的應(yīng)用研究[D].鎮(zhèn)江:江蘇大學(xué),2006.

[3]甘永梅,李慶豐等.現(xiàn)場(chǎng)總線技術(shù)及其應(yīng)用[M].北京:機(jī)械工業(yè)出版社,2005.

[4]饒運(yùn)濤,鄒繼軍等.現(xiàn)場(chǎng)總線CAN原理與應(yīng)用技術(shù)[M].北京:北京航空航天大學(xué)出版社,2004.

[5]張毅剛.單片機(jī)原理及應(yīng)用[M].北京:高等教育出版社,2007.

(責(zé)任編輯:王 林)

CAN/LIN Gateway Based on the MCS-51

LV Jin-chao,YE Jiu-lin,LI Shi-chao
(Schoolof Micro-Electronics andSolid-StateElectronics,University of Electronic Science andTechnology ofChina,Chengdu 610054,China)

The CANbus and LINbus have been large-scalely applied in automobile industry.Howto effectively solve the transformation between the CAN bus and LIN bus has become a problem,and this article,based on MCS-51,provides an effective solution,using MCS-51 timer timing function,timing on each node communication,to achieve the purpose of realization of data transmission.

MCS-51;CAN bus;LIN bus;gateway

TN915

A

1009-3583(2014)-0079-03

2014-05-06

呂晉超,男,貴州貴陽(yáng)人,大學(xué)本科生,主要從事CAN總線技術(shù)的應(yīng)用和系統(tǒng)設(shè)計(jì)的研究。

猜你喜歡
波特率緩沖器網(wǎng)關(guān)
更正
輕兵器(2022年3期)2022-03-21 08:37:28
重載貨車用緩沖器選型的研究及分析
鐵道車輛(2021年4期)2021-08-30 02:07:14
基于改進(jìn)RPS技術(shù)的IPSEC VPN網(wǎng)關(guān)設(shè)計(jì)
CAN 總線波特率自適應(yīng)程序設(shè)計(jì)
智能制造(2020年5期)2020-07-03 06:24:00
基于FPGA的異步串行通信波特率容錯(cuò)設(shè)計(jì)
LTE Small Cell網(wǎng)關(guān)及虛擬網(wǎng)關(guān)技術(shù)研究
應(yīng)對(duì)氣候變化需要打通“網(wǎng)關(guān)”
一種實(shí)時(shí)高效的伺服控制網(wǎng)關(guān)設(shè)計(jì)
面向TIA和緩沖器應(yīng)用的毫微微安偏置電流運(yùn)放可實(shí)現(xiàn)500MHz增益帶寬
C*Core芯片SCI串口波特率容限優(yōu)化
余庆县| 千阳县| 洪湖市| 开封市| 吴忠市| 兴国县| 保定市| 城口县| 宁国市| 太仆寺旗| 秦安县| 南乐县| 宜兰市| 德江县| 阜康市| 海淀区| 睢宁县| 灌南县| 蓝山县| 湖北省| 铜梁县| 德庆县| 福州市| 佛学| 盐津县| 兰考县| 平乡县| 封开县| 多伦县| 泾阳县| 太湖县| 镇康县| 司法| 万全县| 黄冈市| 铜川市| 社会| 翼城县| 苏尼特右旗| 新乡市| 汤阴县|