本發(fā)明涉及CAN現(xiàn)場(chǎng)總線領(lǐng)域,具體涉及一種包含CAN控制器與CAN收發(fā)器的CAN總線節(jié)點(diǎn)芯片,有效提高了CAN總線系統(tǒng)的集成度與可靠性。
背景技術(shù):
隨著計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)和芯片技術(shù)的發(fā)展,網(wǎng)絡(luò)系統(tǒng)中控制芯片的性能大幅提高,成本不斷降低,以現(xiàn)場(chǎng)總線為代表的控制網(wǎng)絡(luò)也在工業(yè)以及其他控制系統(tǒng)中扮演著不可缺少的角色?,F(xiàn)場(chǎng)總線是應(yīng)用在現(xiàn)場(chǎng)的,在測(cè)量控制設(shè)備之間實(shí)現(xiàn)雙向、串行、多點(diǎn)通信的數(shù)字通信系統(tǒng)。它把通用或者專(zhuān)用的微處理器置入傳統(tǒng)的測(cè)量控制儀表,使之具有數(shù)字計(jì)算和數(shù)字通信能力。其采用一定的介質(zhì)作為通信總線,按照公開(kāi)、規(guī)范的通信協(xié)議,在位于現(xiàn)場(chǎng)的多個(gè)設(shè)備之間以及現(xiàn)場(chǎng)設(shè)備與遠(yuǎn)程監(jiān)控計(jì)算機(jī)之間,實(shí)現(xiàn)數(shù)據(jù)傳輸和信息交換,形成各種適應(yīng)實(shí)際需要的自動(dòng)化控制系統(tǒng)。
CAN是控制網(wǎng)絡(luò)Control Area Network的簡(jiǎn)稱(chēng),CAN現(xiàn)場(chǎng)總線是基于CAN協(xié)議的一種現(xiàn)場(chǎng)總線。CAN現(xiàn)場(chǎng)總線具有通信速率高、直接傳輸距離遠(yuǎn)、抗干擾能力強(qiáng)、幾乎可以檢測(cè)發(fā)生的任何錯(cuò)誤等一系列優(yōu)點(diǎn)。CAN的高性能和可靠性已被認(rèn)同,并被廣泛地應(yīng)用于工業(yè)自動(dòng)化、船舶、醫(yī)療設(shè)備、工業(yè)設(shè)備等方面。CAN總線是當(dāng)今自動(dòng)化領(lǐng)域技術(shù)發(fā)展的熱點(diǎn)之一,被譽(yù)為自動(dòng)化領(lǐng)域的計(jì)算機(jī)局域網(wǎng)。它的出現(xiàn)為分布式控制系統(tǒng)實(shí)現(xiàn)各節(jié)點(diǎn)之間實(shí)時(shí)、可靠的數(shù)據(jù)通信提供了強(qiáng)有力的技術(shù)支持。
在CAN總線系統(tǒng)中,一條總線上通常連接多個(gè)CAN節(jié)點(diǎn),網(wǎng)絡(luò)中各個(gè)節(jié)點(diǎn)都可根據(jù)總線訪問(wèn)優(yōu)先權(quán)競(jìng)爭(zhēng)向總線發(fā)送數(shù)據(jù),并且不同節(jié)點(diǎn)之間可以同時(shí)接收到相同的總線數(shù)據(jù)。系統(tǒng)中的每個(gè)CAN節(jié)點(diǎn)均包含CAN收發(fā)器與CAN控制器,CAN收發(fā)器的功能是實(shí)現(xiàn)數(shù)字邏輯電平與模擬差分電平之間的轉(zhuǎn)換。在CAN節(jié)點(diǎn)中,控制器的內(nèi)部信號(hào)為數(shù)字邏輯電平,而總線上的信號(hào)是模擬差分電平,收發(fā)器的作用就是實(shí)現(xiàn)控制器與總線之間的電平轉(zhuǎn)換。CAN控制器是其主要組成部分,用于控制數(shù)據(jù)的發(fā)送與接收、故障處理、仲裁等一系列邏輯功能,CAN所具有的完善的通信協(xié)議均由控制器來(lái)實(shí)現(xiàn)。
在實(shí)際的CAN總線系統(tǒng)中,需要CAN收發(fā)器與CAN控制器相互配合,才能實(shí)現(xiàn)多個(gè)現(xiàn)場(chǎng)設(shè)備以及現(xiàn)場(chǎng)設(shè)備與遠(yuǎn)程計(jì)算機(jī)之間數(shù)據(jù)通信。但目前市面上的CAN收發(fā)器與CAN控制器多為分立設(shè)計(jì),未集成至一起,這就為芯片的使用帶來(lái)了不便。
參考文獻(xiàn)
1、Dong-Hee Noh,Dong-Seong Kim.Message Scheduling on CAN Bus for Large-Scaled Ship Engine Systems[J].World Congress,2014,47(3):7911-7916.
2、饒運(yùn)濤,鄒繼軍,鄭勇蕓.現(xiàn)場(chǎng)總線CAN原理與應(yīng)用技術(shù)[M].北京:北京航空航天大學(xué)出版社,2007,12-18.
3、來(lái)清民.手把手教你學(xué)CAN總線[M].北京:北京航空航天大學(xué)出版社,2010,109-112。
技術(shù)實(shí)現(xiàn)要素:
為克服現(xiàn)有技術(shù)的不足,本發(fā)明旨在將CAN總線收發(fā)器與CAN總線控制器集成至同一芯片中,實(shí)現(xiàn)芯片的小型化設(shè)計(jì),簡(jiǎn)化CAN總線芯片的使用,提高CAN現(xiàn)場(chǎng)總線系統(tǒng)的集成度與可靠性。本發(fā)明采用的技術(shù)方案是,包含收發(fā)器與控制器的CAN總線節(jié)點(diǎn)芯片,由總線收發(fā)器模塊、CAN總線控制器模塊組成,CAN總線控制器模塊由內(nèi)部寄存器、接口管理邏輯、位流處理器、驗(yàn)收濾波器、位時(shí)序邏輯以及數(shù)據(jù)緩沖器組成,內(nèi)部寄存器用于設(shè)定各種控制信號(hào),微控制器和總線控制器之間狀態(tài)、控制和命令信號(hào)的交換都是在內(nèi)部寄存器中完成;接口管理邏輯用于執(zhí)行微控制器的命令,管理總線控制器內(nèi)部的尋址。位流處理器用來(lái)控制數(shù)據(jù)緩沖器和CAN總線之間的數(shù)據(jù)流同時(shí)執(zhí)行錯(cuò)誤檢測(cè);驗(yàn)收濾波器用于識(shí)別CAN網(wǎng)絡(luò)中的幀標(biāo)識(shí);位時(shí)序邏輯負(fù)責(zé)處理與總線相關(guān)的位時(shí)序;數(shù)據(jù)緩沖器的功能是存儲(chǔ)收發(fā)的信息,其劃分為發(fā)送緩沖器和接收緩沖器;
總線收發(fā)器模塊包括兩個(gè)部分,分別是發(fā)送部分和接收部分;發(fā)送部分由兩個(gè)驅(qū)動(dòng)控制模塊、非門(mén)、兩個(gè)開(kāi)關(guān)MOS管、分壓電阻組成,發(fā)送的信息接入一個(gè)驅(qū)動(dòng)控制模塊,發(fā)送的信息同時(shí)還通過(guò)非門(mén)接入另一個(gè)驅(qū)動(dòng)控制模塊,兩個(gè)驅(qū)動(dòng)控制模塊的輸出分別對(duì)應(yīng)連接一個(gè)開(kāi)關(guān)MOS管的柵極從而形成差分輸出至CAN總線;接收部分由遲滯比較器構(gòu)成。
驅(qū)動(dòng)控制模塊由反相器級(jí)聯(lián)構(gòu)成。
本發(fā)明的特點(diǎn)及有益效果是:
目前現(xiàn)場(chǎng)總線的應(yīng)用已經(jīng)十分廣泛,而CAN總線因其一系列優(yōu)勢(shì)已被應(yīng)用于工業(yè)自動(dòng)化、船舶、汽車(chē)工業(yè)等多個(gè)領(lǐng)域。傳統(tǒng)的CAN總線芯片多為分立設(shè)計(jì),控制器與收發(fā)器未集成在一起,增加了芯片的使用難度,降低了CAN總線系統(tǒng)的穩(wěn)定性。本發(fā)明通過(guò)將CAN控制器與CAN收發(fā)器集成至同一芯片,實(shí)現(xiàn)了芯片的小型化設(shè)計(jì),簡(jiǎn)化了CAN總線芯片的使用,提高了CAN總線系統(tǒng)的穩(wěn)定性。
附圖說(shuō)明:
圖1 CAN節(jié)點(diǎn)芯片整體結(jié)構(gòu)框圖。
圖2 收發(fā)器模塊結(jié)構(gòu)示意圖。
圖3 整體版圖。
圖4 CAN總線系統(tǒng)示意圖。
具體實(shí)施方式
本發(fā)明給出了一種將CAN收發(fā)器與CAN控制器集成至一起的CAN總線節(jié)點(diǎn)芯片。
本發(fā)明將CAN收發(fā)器與CAN控制器集成至同一芯片,芯片整體結(jié)構(gòu)框圖如圖1所示??蓜澐譃榭偩€接收/發(fā)送模塊和總線協(xié)議控制器兩個(gè)模塊。收發(fā)器模塊包含發(fā)送部分與接收部分,控制器模塊包含內(nèi)部寄存器等功能模塊,用以實(shí)現(xiàn)總線協(xié)議。
CAN總線收發(fā)器模塊結(jié)構(gòu)示意圖如圖2所示,主要包括發(fā)送部分與接收部分。發(fā)送部分由驅(qū)動(dòng)控制模塊、開(kāi)關(guān)MOS管、分壓電阻組成,接收部分則為一個(gè)遲滯比較器。圖中電阻R5為總線等效電阻(一般為60Ω),在實(shí)際設(shè)計(jì)中為保證對(duì)總線的驅(qū)動(dòng)能力,設(shè)計(jì)時(shí)R5設(shè)為50歐姆,R1和R2分壓得到2.5V電壓用于提供總線的隱性偏置,R3和R4用于隔離顯性電平和隱性電平(P0和N0處于導(dǎo)通狀態(tài)),二極管用于防止總線上電平過(guò)高或者過(guò)低對(duì)電源造成影響。P0與N0同時(shí)導(dǎo)通時(shí)CANH和CANL的電平分別為3.5V、1.5V,此時(shí)總線上的電流為40mA,因此P0與N0導(dǎo)通時(shí)的電流為40mA,這樣需要P0和N0的寬長(zhǎng)比較大(提供40mA的電流)。大比例MOS管需要前一級(jí)有較強(qiáng)的驅(qū)動(dòng)能力,所以電路中采用了反相器級(jí)聯(lián)的驅(qū)動(dòng)電路。接收電路是一個(gè)遲滯比較器,將差分模擬信號(hào)轉(zhuǎn)化為數(shù)字信號(hào),采用遲滯的目的是為了防止信號(hào)的抖動(dòng),提高信號(hào)的質(zhì)量。
收發(fā)器是數(shù)據(jù)交換的接口,分別連接CAN控制器與物理總線,本質(zhì)就是實(shí)現(xiàn)總線差動(dòng)電平向數(shù)字邏輯電平的轉(zhuǎn)換。因此,作為一個(gè)收發(fā)器,IO端口設(shè)置有連接物理總線的CANH和CANL端口,并有從協(xié)議控制器端接收和發(fā)送數(shù)據(jù)的RX和TX端口,以及VDD和GND接電源和接地端口。
CANH對(duì)應(yīng)高電平總線,CANL對(duì)應(yīng)低電平總線,兩者連接到物理總線上,接收來(lái)自總線上的差動(dòng)信號(hào)。TX端口是指經(jīng)協(xié)議控制器處理過(guò)的數(shù)據(jù)通過(guò)此端口傳入到收發(fā)器然后由收發(fā)器發(fā)送到總線上,稱(chēng)為發(fā)送數(shù)據(jù)端口;RX端口是指收發(fā)器將從物理總線上接收差動(dòng)數(shù)據(jù)處理為串行的數(shù)字信號(hào)之后傳輸?shù)絽f(xié)議控制器,稱(chēng)為接收數(shù)據(jù)端口。
當(dāng)CAN控制器向發(fā)送端發(fā)送數(shù)字邏輯電平0時(shí),物理總線上得到差動(dòng)電平CANH和CANL分別為3.5V和1.5V,接收端得到信號(hào)0;當(dāng)CAN控制器向發(fā)送端發(fā)送數(shù)字邏輯電平1時(shí),物理總線上得到差動(dòng)電平CANH和CANL分別為2.5V和2.5V,接收端得到信號(hào)1。
CAN總線控制器模塊是實(shí)現(xiàn)總線協(xié)議的主要模塊,其劃分為內(nèi)部寄存器、接口管理邏輯、位流處理器、驗(yàn)收濾波器、位時(shí)序邏輯以及數(shù)據(jù)緩沖器。內(nèi)部寄存器用于設(shè)定各種控制信號(hào),微控制器和總線控制器之間狀態(tài)、控制和命令信號(hào)的交換都是在內(nèi)部寄存器中完成。接口管理邏輯用于執(zhí)行微控制器的命令,管理總線控制器內(nèi)部的尋址。位流處理器用來(lái)控制數(shù)據(jù)緩沖器和CAN總線之間的數(shù)據(jù)流同時(shí)執(zhí)行錯(cuò)誤檢測(cè)等功能。驗(yàn)收濾波器用于識(shí)別CAN網(wǎng)絡(luò)中的幀標(biāo)識(shí)。位時(shí)序邏輯負(fù)責(zé)處理與總線相關(guān)的位時(shí)序。數(shù)據(jù)緩沖器的功能是存儲(chǔ)收發(fā)的信息,其劃分為發(fā)送緩沖器和接收緩沖器。
在完成控制器模塊與收發(fā)器模塊的設(shè)計(jì)之后,通過(guò)合理的版圖布局(如圖3所示)將兩個(gè)模塊集成至同一芯片中。經(jīng)過(guò)適當(dāng)?shù)姆庋b,得到集成有CAN控制器與CAN收發(fā)器的CAN總線節(jié)點(diǎn)芯片。
本發(fā)明的一個(gè)實(shí)例如下:
首先對(duì)CAN總線節(jié)點(diǎn)芯片進(jìn)行整體測(cè)試,確定芯片功能正確性。以CAN總線節(jié)點(diǎn)芯片為基礎(chǔ),搭建CAN總線系統(tǒng)。如圖4所示,每個(gè)CAN節(jié)點(diǎn)均由傳感器執(zhí)行器、微控制器(單片機(jī))、CAN總線節(jié)點(diǎn)芯片組成,通過(guò)適當(dāng)?shù)膫鞲衅鳈z測(cè)到現(xiàn)場(chǎng)設(shè)備發(fā)生的變化,執(zhí)行器發(fā)送相應(yīng)的信號(hào)給微控制器,然后控制CAN總線節(jié)點(diǎn)芯片產(chǎn)生對(duì)應(yīng)的信號(hào),并經(jīng)過(guò)仲裁發(fā)送至總線,信號(hào)通過(guò)總線傳送至遠(yuǎn)程控制計(jì)算機(jī),進(jìn)而使遠(yuǎn)程控制計(jì)算器得知現(xiàn)場(chǎng)設(shè)備發(fā)生的變化,并作出回應(yīng)。