基于ARM的CAN總線智能節(jié)點(diǎn)的設(shè)計(jì)
摘 要:CAN總線是一種應(yīng)用廣泛的實(shí)時(shí)性現(xiàn)場(chǎng)總線,提出了基于具有ARM7TDMI內(nèi)核的32位微控制器的CAN總線智能節(jié)點(diǎn)設(shè)計(jì)方案。詳細(xì)介紹了ARM控制(LPC2294)的特點(diǎn)、智能節(jié)點(diǎn)的結(jié)構(gòu)以及系統(tǒng)軟件設(shè)計(jì),同時(shí)結(jié)合現(xiàn)場(chǎng)實(shí)際使用給出了硬件抗干擾措施。
本文引用地址:http://m.butianyuan.cn/article/14380.htm關(guān)鍵詞:CAN總線 ARM 嵌入式控制器
CAN(Controller Area Network)即控制器局域網(wǎng),CAN總線是國(guó)際上應(yīng)用最廣泛的現(xiàn)場(chǎng)總線之一。它最早是由德國(guó)Bosch公司推出的,CAN通信協(xié)議是一種用于汽車內(nèi)部測(cè)量與執(zhí)行部件之間的數(shù)據(jù)通信協(xié)議。
作為一種技術(shù)先進(jìn)、可靠性高、功能完善、成本合理的遠(yuǎn)程網(wǎng)絡(luò)通訊控制方式,CAN總線已被廣泛應(yīng)用于各個(gè)自動(dòng)化控制系統(tǒng)中。例如,在汽車電子、自動(dòng)控制、智能大廈、電子系統(tǒng)、安防監(jiān)控等各領(lǐng)域中,CAN總線具有不可比擬的優(yōu)越性。本設(shè)計(jì)給出CAN總線節(jié)點(diǎn)方案。它采用內(nèi)置多路CAN總線控制器PLC2294作為主控制器,使得該節(jié)點(diǎn)體積小、功耗低、抗干擾性好,因而特別適用于汽車、工業(yè)控制以及醫(yī)療系統(tǒng)和容錯(cuò)維護(hù)總線中。
1 硬件設(shè)計(jì)
1.1 LPC2294的特點(diǎn)
ARM7系列具有ARM7TDMI內(nèi)核的32位嵌入式微處理器是目前應(yīng)用很廣的嵌入式RISC處理器。該系列芯片體積小、功耗低、成本低,高性能與靈活性相結(jié)合,有較多的寄存器,提供了擴(kuò)充的增強(qiáng)的固定長(zhǎng)的16/32位雙指令集。用16位的Thumb指令可以節(jié)省高達(dá)35%的空間。另外它還實(shí)行注水線作業(yè),提供嵌入式ICE2RT邏輯,支持片上斷點(diǎn)和調(diào)試點(diǎn)支持,具有先進(jìn)的軟件開發(fā)和調(diào)試環(huán)境。
本設(shè)計(jì)選用的LPC2294是PHILIPS公司新推出的一款功能強(qiáng)大的超低功耗的具有ARM7TDMI內(nèi)核的32位微控制器。144腳封裝、兩個(gè)32位定時(shí)器、八路10位ADC、四路CAN通道和PWM通道以及多達(dá)九個(gè)的外部中斷,內(nèi)部嵌入256K字節(jié)高速Flash存儲(chǔ)器和16K字節(jié)靜態(tài)RAM,包含76(使用了外部存儲(chǔ)器)~112(單片)個(gè)GPIO口。如此豐富的片上資源完全可以滿足一般的工業(yè)控制的需要,同時(shí)還可以減少系統(tǒng)硬件設(shè)計(jì)的復(fù)雜度。另外,LPC2294支持JTAG實(shí)時(shí)仿真和跟蹤、128位寬度的存儲(chǔ)器接口和獨(dú)特的加速結(jié)構(gòu),使32位代碼能夠在高達(dá)60MHz的操作頻率下運(yùn)行。
LPC2294內(nèi)部集成有四路CAN控制器:符合CAN規(guī)范CAN2.0B,ISO 11989-1標(biāo)準(zhǔn):總線數(shù)據(jù)波特度均可達(dá)1Mbps;可訪問32位的寄存器和RAM;全局驗(yàn)收過濾器可識(shí)別幾乎所有總線的11位和29位Rx標(biāo)識(shí)符;驗(yàn)收過濾器為選擇的標(biāo)準(zhǔn)標(biāo)識(shí)符提供了FullCAN-style自動(dòng)接收功能。
作為本設(shè)計(jì)的核心部件,LPC2294不僅擔(dān)起主控制器的作用,同時(shí)還作為CAN網(wǎng)絡(luò)的節(jié)點(diǎn)控制器,與網(wǎng)絡(luò)中的其它節(jié)點(diǎn)實(shí)現(xiàn)數(shù)據(jù)傳輸與交換。
1.2 CAN節(jié)點(diǎn)硬件電路組成
CAN節(jié)點(diǎn)硬件電路如圖1所示,由ARM微控制器LPC2294、CAN總線收發(fā)器TJA1050T、高速光耦6N137和電源隔離模塊B0505S等組成。
主控芯片LPC2294的晶振頻率范圍為1~30MHz。本設(shè)計(jì)選晶振頻率為20MHz,通過設(shè)置內(nèi)部的VPB分頻器可以提高CPU時(shí)鐘頻率。內(nèi)部256K字節(jié)的高速Flash存儲(chǔ)器用于代碼和數(shù)據(jù)的存儲(chǔ)。對(duì)于FLASH存儲(chǔ)器,可通過內(nèi)置的串行JTAG接口進(jìn)行在系統(tǒng)編程(ISP),或進(jìn)行在應(yīng)用編程(IAP)。為了便于調(diào)試和系統(tǒng)升級(jí),在設(shè)計(jì)中可以預(yù)留這些接口電路。
LPC2294采用雙電源供電。CPU的供電電壓范圍為1.65~1.95V(1.8V
linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)
評(píng)論