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

?

基于CAN總線的設(shè)計應(yīng)用

2012-04-29 00:00:00席燦江
中國新通信 2012年14期

【摘要】CAN總線(Controller Area Network)是控制器局域網(wǎng),已被廣泛應(yīng)用到眾多領(lǐng)域中。本文簡要介紹CAN總線的特點和應(yīng)用。同時結(jié)合在實踐中遇到的問題,指出在CAN總線應(yīng)用中需要注意的一些地方。

【關(guān)鍵詞】CAN總線

CAN總線是現(xiàn)在應(yīng)用比較廣泛的現(xiàn)場總線之一,它采用串行通訊方式,總線通信率比極高、抗電磁干擾性好并且能檢測出通訊中的錯誤。CAN總線構(gòu)成比較簡單,通過一根雙絞線就可以通訊,而且應(yīng)用靈活,可以很方便的增加或減少節(jié)點。CAN總線也已形成國際標(biāo)準(zhǔn),方便系統(tǒng)對接。

1起源

CAN總線原來是在20世紀(jì)80年代初應(yīng)用于汽車行業(yè),用來解決汽車控制系統(tǒng)之間的通信問題。后來因為CAN總線具有許多優(yōu)點,逐漸形成了統(tǒng)一規(guī)范,隨著集成電路的飛速發(fā)展,現(xiàn)今CAN總線的應(yīng)用也越來越容易實現(xiàn)且信價比很高。

2CAN總線特點

(1)CAN總線可以連接多個節(jié)點,每個節(jié)點都可根據(jù)總線訪問優(yōu)先權(quán)收發(fā)CAN總線上的數(shù)據(jù),通過通訊報文里的報文標(biāo)識符來區(qū)分數(shù)據(jù)。

(2)CAN總線各節(jié)點之間的數(shù)據(jù)通信實時性強,并且容易構(gòu)成冗余結(jié)構(gòu),提高系統(tǒng)的可靠性。

(3)CAN總線傳輸速率高,當(dāng)信號傳輸距離達到10Km時,CAN總線仍可提供高達5Kbps的數(shù)據(jù)傳輸速率。

(4)CAN總線發(fā)送期間丟失仲裁或由于出錯而遭破壞的幀可自動重發(fā),同時要是總線上節(jié)點出現(xiàn)嚴重故障可自動關(guān)閉輸出,使整條總線不受影響。這使CAN總線有良好的可靠性。

(5)CAN總線在不關(guān)閉總線情況下即可任意掛接或拆除節(jié)點,保證了系統(tǒng)的靈活性和可擴展性;

(6)CAN總線有統(tǒng)一的標(biāo)準(zhǔn)和規(guī)范,使總線上各設(shè)備之間具有較好的互操作性、互換性和通用性。同時CAN總線也具有標(biāo)準(zhǔn)的通信協(xié)議,由CAN控制器芯片及其接口芯片來實現(xiàn)。

3設(shè)計應(yīng)用

簡單介紹一種CAN總線的應(yīng)用。CAN總線控制器采用芯片SJA1000,CAN總線收發(fā)器采用芯片PCA82C250。

SJAl000是一種獨立的CAN控制器,主要完成CAN總線通信協(xié)議的物理層和數(shù)據(jù)鏈路層的功能。SJAl000含有控制寄存器、命令寄存器、狀態(tài)寄存器、中斷寄存器和收發(fā)寄存器。通過讀寫這些寄存器來實現(xiàn)對SJAl000的控制;芯片的TX0、TXl、RX0、RXl引腳用于與CAN總線收發(fā)器的接口,其基本特性有:

(1)有擴展的接收緩沖器64字節(jié),先進先出(FIFO);

(2)支持CAN2.0A和CAN2.0B協(xié)議;

(3)通信位速率可達1Mbps。

SJAl000有中斷輸出信號/INT,中斷輸出信號是低電平有效,通過中斷方式完成與CAN控制器的通信。時鐘腳XTAL1接入16M時鐘,通過示波器檢查CLKOUT腳可以判斷SJAl000是否初始化正常,ADO…AD7是雙向數(shù)據(jù)/地址端口,連接到處理器上,由處理器對SJA1000初始化,并接受CAN總線數(shù)據(jù)。處理器可以采用單片機或ETX主板等。在單片機或ETX主板的配套硬盤里編寫CAN總線的通信控制程序。通信控制程序應(yīng)該完成以下功能:初始化SJAl000、按報文格式發(fā)送和接收數(shù)據(jù)、監(jiān)測寄存器的變化、在通信故障時軟件復(fù)位等。在控制程序中特別注意監(jiān)視CAN總線狀態(tài),發(fā)現(xiàn)CAN總線節(jié)點出現(xiàn)嚴重故障時可軟件復(fù)位重新初始化該節(jié)點。只要不是硬件上故障,重新復(fù)位就可以恢復(fù)正常。

PCA82C250是用來連接CAN總線控制器和物理總線的接口芯片,接口采用的是雙線差分驅(qū)動,可以減少傳輸中的干擾。PCA82C250的TXD、RXD引腳分別接收和發(fā)送驅(qū)動后的信號;把PCA82C250的VRFF端(約為0.5Vcc)與SJA1000的RXl腳相連,可以簡化電路。CANH、CANL引腳接至雙絞線或同軸電纜等傳輸介質(zhì),CANH端的狀態(tài)是高電平或懸浮狀態(tài),CANL端是低電平或懸浮狀態(tài)。使用PCA82C250可以擴大通信距離、提高系統(tǒng)的抗干擾能力、保護總線、降低射頻干擾、傳輸速率高(最高可達1Mbps)、掉電自動關(guān)閉輸出、可支持多達110個節(jié)點相連接、實現(xiàn)熱防護等。

CAN總線的報文可以由通信雙方約定,主要由幾部分組成:報文起始標(biāo)志;報文標(biāo)識符;正文數(shù)據(jù);CRC校驗;報文結(jié)尾等。每個節(jié)點的報文大致一樣,可以設(shè)置有一定的優(yōu)先權(quán),通過報文標(biāo)識符來決定。

在實際使用中要特別注意幾點,一是CAN總線的匹配電阻問題,標(biāo)準(zhǔn)電路匹配電阻是120歐姆,但如果是多個節(jié)點的話,可以在最后一個節(jié)點的CANH和CANL之間串聯(lián)一個120歐姆電阻就可以了,如果每個節(jié)點都接這匹配電阻,可能會造成通信異常。二是如果因為硬件損壞導(dǎo)致CAN總線整體崩潰,可以通過斷開節(jié)點的方法來排除故障,硬件損壞主要會對CANH和CANL的電壓造成影響。三是可以做報文數(shù)據(jù)顯示程序,將CAN總線上的所有數(shù)據(jù)接收下來,通過報文標(biāo)識符來判斷每個節(jié)點是否工作正常,這樣比較直觀。

4結(jié)束語

CAN總線已經(jīng)越來越得到廣泛的應(yīng)用,掌握好CAN總線技術(shù),給搭建局域網(wǎng)、總線控制、故障檢測、安全防護等系統(tǒng)提供了很好的手段。

嘉荫县| 绍兴市| 东兰县| 禹州市| 江永县| 太康县| 双辽市| 全州县| 巨野县| 华亭县| 祁东县| 马鞍山市| 宝坻区| 洪湖市| 田阳县| 建始县| 大悟县| 宜章县| 丹江口市| 桐城市| 淳安县| 昔阳县| 龙井市| 静安区| 东城区| 万盛区| 许昌县| 海盐县| 香格里拉县| 岳阳市| 鄂尔多斯市| 芒康县| 灯塔市| 房产| 新建县| 綦江县| 弥勒县| 敖汉旗| 张家口市| 龙南县| 洛宁县|