專利名稱:一種can總線通訊控制系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本實(shí)用新型涉及CAN通訊領(lǐng)域,具體地指一種CAN總線通訊控制系統(tǒng)。
背景技術(shù):
基于FPGA (Field-Programmable Gate Array,現(xiàn)場(chǎng)可編程門陣列)平臺(tái)的CAN(ControIIer Area Network,控制器局域網(wǎng))總線通訊控制器,主要功能是實(shí)現(xiàn)多路獨(dú)立的CAN總線通訊功能。目前CAN總線通訊通常采用D SP (digital signal processor)、ARM (Advanced RISC Machines)、單片機(jī)等配置了 CAN控制器的芯片作為主控制器,上述方式致使每個(gè)主控制器的CAN接口通道數(shù)量有限,如需實(shí)現(xiàn)多通道的CAN通訊,需增加主控芯片作為專用通訊控制器,這就造成了電路設(shè)計(jì)復(fù)雜、且電路的靈活性和拓展性差。
實(shí)用新型內(nèi)容本實(shí)用新型的目的就是要提供一種能使CAN總線通信電路設(shè)計(jì)簡(jiǎn)單、靈活性強(qiáng)、拓展性好的CAN總線通訊控制系統(tǒng)。為實(shí)現(xiàn)此目的,本實(shí)用新型所設(shè)計(jì)的一種CAN總線通訊控制系統(tǒng),其特征在于:它包括FPGA、與FPGA連接的電源模塊、多個(gè)CAN總線通訊控制器,其中,每個(gè)CAN總線通訊控制器均連接有CAN收發(fā)模塊,F(xiàn)PGA包括初始化模塊、通信控制模塊、接收數(shù)據(jù)模塊、發(fā)送數(shù)據(jù)模塊和時(shí)鐘管理模塊,初始化模塊的信號(hào)輸出端連接通信控制模塊的信號(hào)輸入端,通信控制模塊的信號(hào)輸出端分別接入接收數(shù)據(jù)模塊和發(fā)送數(shù)據(jù)模塊,接收數(shù)據(jù)模塊和發(fā)送數(shù)據(jù)模塊通過數(shù)據(jù)和地址總線分別接入每個(gè)CAN總線通訊控制器,所述時(shí)鐘管理模塊通過時(shí)鐘總線分別接入每個(gè)CAN總線通訊控制器,所述通信控制模塊通過控制總線接入每個(gè)CAN總線通訊控制器,所述通信控制模塊還通過片選總線接入每個(gè)CAN總線通訊控制器,所述時(shí)鐘管理模塊包括由15個(gè)反相器構(gòu)成的環(huán)形振蕩器。本實(shí)用新型采用FP GA作為主控制器,控制多路獨(dú)立的CAN總線接口電路的電路設(shè)計(jì)方法,實(shí)現(xiàn)多通道的CAN通訊。解決了現(xiàn)有多通道CAN通訊硬件電路設(shè)計(jì)繁瑣,拓展性差的問題。在FPGA內(nèi)采用VerilogHDL硬件描述語言實(shí)現(xiàn)多路CAN總線通訊控制器通信接口控制,初始化模塊實(shí)現(xiàn)對(duì)總線的速率、驗(yàn)收屏蔽碼、輸出引腳驅(qū)動(dòng)方式、總線模式及時(shí)鐘分頻進(jìn)行定義。通信控制模塊實(shí)現(xiàn)多通道控制、狀態(tài)查詢及轉(zhuǎn)換。接收數(shù)據(jù)模塊和發(fā)送數(shù)據(jù)模塊分別實(shí)現(xiàn)總線數(shù)據(jù)收發(fā)。錯(cuò)誤處理模塊通過查詢CAN通訊控制器的狀態(tài)寄存器進(jìn)行錯(cuò)誤處理,如數(shù)據(jù)超載處理,發(fā)送錯(cuò)誤處理,仲裁丟失捕捉等。上述設(shè)計(jì)能使CAN總線通信電路設(shè)計(jì)簡(jiǎn)單,并提高靈活性和拓展性。
圖1為本實(shí)用新型的原理框圖。
具體實(shí)施方式
[0007]圖1中所示的一種CAN總線通訊控制系統(tǒng),它包括FPGA、給FPGA供電的電源模塊、多個(gè)CAN總線通訊控制器,其中,每個(gè)CAN總線通訊控制器均連接有CAN收發(fā)模塊,F(xiàn)PGA包括初始化模塊、通信控制模塊、接收數(shù)據(jù)模塊、發(fā)送數(shù)據(jù)模塊和時(shí)鐘管理模塊,初始化模塊的信號(hào)輸出端連接通信控制模塊的信號(hào)輸入端,通信控制模塊的信號(hào)輸出端分別接入接收數(shù)據(jù)模塊和發(fā)送數(shù)據(jù)模塊,接收數(shù)據(jù)模塊和發(fā)送數(shù)據(jù)模塊通過數(shù)據(jù)和地址總線分別接入每個(gè)CAN總線通訊控制器,上述時(shí)鐘管理模塊通過時(shí)鐘總線分別接入每個(gè)CAN總線通訊控制器,通信控制模塊通過控制總線接入每個(gè)CAN總線通訊控制器,通信控制模塊還通過片選總線接入每個(gè)CAN總線通訊控制器。時(shí)鐘頻率設(shè)置為16MHz。上述技術(shù)方案中,它還包括晶振和FPGA配置電路,晶振的輸出端連接時(shí)鐘管理模塊,有源晶振作為FPGA外部時(shí)鐘輸入,F(xiàn)PGA內(nèi)部時(shí)鐘管理模塊使用DCM的IP核進(jìn)行時(shí)鐘管理,輸入為外部晶振模塊20MHz,通過DCM的倍分頻功能產(chǎn)生系統(tǒng)同步時(shí)鐘,并產(chǎn)生CAN總線通訊控制器的工作時(shí)鐘XTAL1,該時(shí)鐘可驅(qū)動(dòng)多路CAN總線通訊控制器。系統(tǒng)同步時(shí)鐘和CAN總線通訊控制器芯片工作時(shí)鐘應(yīng)保持同步,即同相位。FPGA配置電路連接FPGA,選用XC18V02作為FPGA的配置芯片。該芯片容量為2Mbit,可采用并行配置模式。上述技術(shù)方案中,F(xiàn)PGA還包括錯(cuò)誤處理模塊,錯(cuò)誤處理模塊的信號(hào)輸入端連接通信控制模塊的信號(hào)輸出端。上述技術(shù)方案中,每個(gè)CAN總線通訊控制器和對(duì)應(yīng)的CAN收發(fā)模塊之間連接有光電隔離模塊,每個(gè)光電隔離模塊連接有光耦供電模塊,每個(gè)光電隔離模塊還連接電源模塊。所述光稱供電模塊給光電隔離模塊提供電壓VDD,電源模塊給光電隔離模塊提供電壓VCC。光電隔離模塊可以提高系統(tǒng)的瞬間抗干擾能力,保護(hù)總線,降低射頻干擾,實(shí)現(xiàn)熱防護(hù)。如果現(xiàn)場(chǎng)傳輸距離近,電 磁干擾小,可以不采用光電隔離,以使系統(tǒng)達(dá)到最大的通信速率。上述技術(shù)方案中,CAN收發(fā)模塊的高電平接口 ICANH和低電平接口 ICANL之間串聯(lián)有電阻Rl和電阻R2。由于通信信號(hào)傳輸?shù)綄?dǎo)線的端點(diǎn)時(shí)會(huì)發(fā)生反射,反射信號(hào)會(huì)干擾正常信號(hào)的傳輸,因而在總線兩端加的兩個(gè)60歐的電阻Rl和電阻R2起匹配總線阻抗的作用。上述技術(shù)方案中,每個(gè)CAN總線通訊控制器的MODE腳接高電平,并選擇Intel模式,每個(gè)CAN總線通訊控制器的TXl腳懸空,RXl腳接地。形成CAN協(xié)議所要求的電平邏輯。上述技術(shù)方案中,CAN總線通訊控制器的型號(hào)為SJA1000,CAN收發(fā)模塊型號(hào)為TJA1040。每個(gè)CAN總線通訊控制器的信號(hào)輸出端通過TXD接口與光電隔離模塊連接,每個(gè)CAN總線通訊控制器的信號(hào)輸入端通過RXD接口與光電隔離模塊連接。每個(gè)光電隔離模塊的信號(hào)輸出端通過TX接口與CAN收發(fā)模塊連接,每個(gè)光電隔離模塊的信號(hào)輸入端通過RX接口與CAN收發(fā)模塊連接。上述技術(shù)方案中,時(shí)鐘總線為XTAL1,控制總線為ALE、WR和RD,片選總線為CS。上述初始化模塊的作用是:配置時(shí)鐘分頻寄存器⑶R,輸出控制寄存器0CR,總線定時(shí)寄存器BTRO、BTR1,驗(yàn)收代碼寄存器ACR,驗(yàn)收屏蔽寄存器AMR,錯(cuò)誤報(bào)警限制寄存器EWLR,實(shí)現(xiàn)對(duì)總線的速率、驗(yàn)收屏蔽碼、輸出引腳驅(qū)動(dòng)方式、總線模式、時(shí)鐘分頻、CPU錯(cuò)誤報(bào)警門限進(jìn)行定義。上述通信控制模塊的作用是:通過控制片選信號(hào)CS有效狀態(tài)從而實(shí)現(xiàn)多路控制,由于數(shù)據(jù)和地址總線及控制總線均為復(fù)用,因此需注意各路CAN總線通訊控制器的控制機(jī)制,在同一時(shí)刻只有一路CAN總線通訊控制器工作,即同一時(shí)刻只有一路片選信號(hào)CS為有效。對(duì)于單路CAN節(jié)點(diǎn)控制來說,在初始化結(jié)束后進(jìn)入空閑等待狀態(tài),由于采用查詢接收方式,隨即轉(zhuǎn)入查詢狀態(tài)寄存器SR的狀態(tài)。查詢接收緩沖器狀態(tài)位RBS為I時(shí)則轉(zhuǎn)到接收數(shù)據(jù)狀態(tài);發(fā)送緩沖器狀態(tài)位TBS為I時(shí)則轉(zhuǎn)到發(fā)送數(shù)據(jù)狀態(tài),如果檢測(cè)到出錯(cuò)狀態(tài)位置I或數(shù)據(jù)溢出狀態(tài)置I則轉(zhuǎn)到錯(cuò)誤處理模塊;如果RBS和TBS都置O,則返回空閑狀態(tài)。上述發(fā)送數(shù)據(jù)模塊的工作過程為:通信控制模塊將數(shù)據(jù)寫入發(fā)送緩沖區(qū),然后對(duì)命令寄存器的發(fā)送請(qǐng)求TR標(biāo)志位進(jìn)行置位開始發(fā)送;上述接收數(shù)據(jù)模塊的工作過程為:CAN通訊控制器將從數(shù)據(jù)和地址總線上接收到的數(shù)據(jù)讀入接收緩沖器,通過其狀態(tài)寄存器接收狀態(tài)標(biāo)志位來處理接收到的信息,接收完畢后清空接收緩沖器,等待下次接收。上述錯(cuò)誤處理模塊的作用是:查詢各相關(guān)寄存器狀態(tài),判斷狀態(tài)寄存器SR溢出狀態(tài)位DOS、出錯(cuò)狀態(tài)位ES以及錯(cuò)誤代碼捕捉寄存器(ECC) DIR位的狀態(tài),進(jìn)而采取相應(yīng)錯(cuò)誤處理措施。本實(shí)用新型使用VerilogHDL硬件描述語言進(jìn)行模塊化設(shè)計(jì),各模塊均采用同步狀態(tài)機(jī)實(shí)現(xiàn),通過通信控制模塊的查詢及判斷結(jié)果在各狀態(tài)間轉(zhuǎn)移。本實(shí)用新型的FPGA軟件實(shí)現(xiàn)單路CAN控制占用650個(gè)CLBs,l個(gè)DCM,20個(gè)可配置10,占XC3S400芯片70%的邏輯資源,25%的DCM資源,8%的可配置IO資源。實(shí)現(xiàn)多路CAN控制需要在通信控制模塊中做相應(yīng)的通道切換,具體實(shí)現(xiàn)占用的邏輯資源較少。本實(shí)用新型硬件電路中選用的芯片,可用具有相同功能,同等規(guī)格的其它芯·片代用。
權(quán)利要求1.一種CAN總線通訊控制系統(tǒng),其特征在于:它包括FPGA、與FPGA連接的電源模塊、多個(gè)CAN總線通訊控制器,其中,每個(gè)CAN總線通訊控制器均連接有CAN收發(fā)模塊,F(xiàn)PGA包括初始化模塊、通信控制模塊、接收數(shù)據(jù)模塊、發(fā)送數(shù)據(jù)模塊和時(shí)鐘管理模塊,初始化模塊的信號(hào)輸出端連接通信控制模塊的信號(hào)輸入端,通信控制模塊的信號(hào)輸出端分別接入接收數(shù)據(jù)模塊和發(fā)送數(shù)據(jù)模塊,接收數(shù)據(jù)模塊和發(fā)送數(shù)據(jù)模塊通過數(shù)據(jù)和地址總線分別接入每個(gè)CAN總線通訊控制器,所述時(shí)鐘管理模塊通過時(shí)鐘總線分別接入每個(gè)CAN總線通訊控制器,所述通信控制模塊通過控制總線接入每個(gè)CAN總線通訊控制器,所述通信控制模塊還通過片選總線接入每個(gè)CAN總線通訊控制器,所述時(shí)鐘管理模塊包括由15個(gè)反相器構(gòu)成的環(huán)形振 蕩器。
專利摘要本實(shí)用新型公開了一種CAN總線通訊控制系統(tǒng),包括FPGA、電源模塊、多個(gè)CAN總線通訊控制器,每個(gè)CAN總線通訊控制器均連有CAN收發(fā)模塊,F(xiàn)PGA包括初始化模塊、通信控制模塊、接收數(shù)據(jù)模塊、發(fā)送數(shù)據(jù)模塊和時(shí)鐘管理模塊,初始化模塊的信號(hào)輸出端連通信控制模塊的信號(hào)輸入端,通信控制模塊的信號(hào)輸出端分別接入接收數(shù)據(jù)模塊和發(fā)送數(shù)據(jù)模塊,接收數(shù)據(jù)模塊和發(fā)送數(shù)據(jù)模塊通過數(shù)據(jù)和地址總線分別接入每個(gè)CAN總線通訊控制器,時(shí)鐘管理模塊通過時(shí)鐘總線分別接入每個(gè)CAN總線通訊控制器,通信控制模塊通過控制總線接入每個(gè)CAN總線通訊控制器,通信控制模塊通過片選總線接入每個(gè)CAN總線通訊控制器。本實(shí)用新型能簡(jiǎn)化CAN總線通信電路的設(shè)計(jì),并具有靈活性強(qiáng)、拓展性好的優(yōu)點(diǎn)。
文檔編號(hào)G05B19/418GK203101951SQ20122075136
公開日2013年7月31日 申請(qǐng)日期2012年12月27日 優(yōu)先權(quán)日2012年12月27日
發(fā)明者李達(dá)生 申請(qǐng)人:天津航思科技有限公司