<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于S3C2410的CAN總線通信設(shè)計(jì)與開(kāi)發(fā)

          基于S3C2410的CAN總線通信設(shè)計(jì)與開(kāi)發(fā)

          作者: 時(shí)間:2013-02-27 來(lái)源:網(wǎng)絡(luò) 收藏
          1 引言

          網(wǎng)絡(luò)化控制系統(tǒng)是控制系統(tǒng)的發(fā)展趨勢(shì)和研究熱點(diǎn),現(xiàn)場(chǎng)總線控制系統(tǒng)作為網(wǎng)絡(luò)化系統(tǒng)的重要組成部分,近年來(lái)在實(shí)際的控制系統(tǒng)中得到了廣泛的應(yīng)用。(Con- troller Area Network)總線作為一種容錯(cuò)性強(qiáng)、可靠性高、布線簡(jiǎn)單且成本低廉的現(xiàn)場(chǎng)總線倍受用戶欽睞,在國(guó)內(nèi)總線已經(jīng)得到了廣泛應(yīng)用。目前國(guó)內(nèi)廣泛應(yīng)用的獨(dú)立控制器SJA1000因存在如地址、數(shù)據(jù)總線的分時(shí)復(fù)用常導(dǎo)致接口效率低下;接收、發(fā)送緩沖區(qū)的個(gè)數(shù)太少,導(dǎo)致數(shù)據(jù)吞吐率不高;幀屏蔽和過(guò)濾器的設(shè)置不夠靈活,不能滿足同時(shí)需要更多屏蔽和過(guò)濾條件的要求等。

          ARM芯片是一種高集成度,高性價(jià)比的嵌入式處理芯片,已成功用于工控設(shè)備上。然而其美中不足的是沒(méi)有集成CAN控制器,使其在工控產(chǎn)品中的應(yīng)用中受到了一定的阻礙。為了解決這一問(wèn)題,同時(shí)考慮到盡可能降低硬件電路的復(fù)雜性,保證CAN總線通訊的穩(wěn)定性和效率,采用帶SPI接口的獨(dú)立CAN控制器MCP2515來(lái)給擴(kuò)展CAN接口。下面以自行開(kāi)發(fā)的人機(jī)界面(HMI,Human Machine Interface)中CAN總線通訊接口設(shè)計(jì)為例進(jìn)行說(shuō)明。

          2 CAN總線接口硬件設(shè)計(jì)

          下面先簡(jiǎn)要介紹相關(guān)控制器芯片,后對(duì)CAN接口硬件設(shè)計(jì)作詳細(xì)說(shuō)明。

          2.1 ARM芯片和CAN控制器MCP2515簡(jiǎn)介

          S3C2410是三星公司設(shè)計(jì)的32位RISC嵌入式處理器。該芯片基于ARM920T內(nèi)核,采用五級(jí)流水線和哈佛結(jié)構(gòu),提供1.1MIPS/MHz的性能。為了減少應(yīng)用系統(tǒng)設(shè)計(jì)的成本,S3C2410集成了眾多的常用資源,如:LCD控制器、SDRAM控制器、一個(gè)觸摸屏接口、兩個(gè)SPI接口等,內(nèi)核最高工作頻率可達(dá)266MHz。

          獨(dú)立CAN控制器MCP2515靈活的中斷能力、接收幀屏蔽和過(guò)濾、幀優(yōu)先級(jí)設(shè)定等特性使其能夠很好的對(duì)信息進(jìn)行管理,減輕了處理器的負(fù)擔(dān)和軟件設(shè)計(jì)的復(fù)雜度。其獨(dú)特功能如下:

          (1) 有標(biāo)準(zhǔn)幀和擴(kuò)展幀兩種數(shù)據(jù)幀可供選擇,每個(gè)幀的數(shù)據(jù)字段長(zhǎng)度可為0-8字節(jié),標(biāo)準(zhǔn)幀數(shù)據(jù)段的前兩個(gè)字節(jié)可單獨(dú)過(guò)濾;
          (2) 內(nèi)含3個(gè)發(fā)送緩沖器和2個(gè)接收緩沖器,并且其優(yōu)先級(jí)可編程設(shè)定;
          (3) 內(nèi)含6個(gè)29字節(jié)的接收過(guò)濾器和2個(gè)29字節(jié)的接收屏蔽器;
          (4) 具有Loop-Back(自環(huán)檢測(cè))模式;支持更高層的協(xié)議,如DeviceNet、SAEJ1939;

          2.2 硬件接口設(shè)計(jì)

          S3C2410的SPI接口兼容SPI V2.11協(xié)議,可支持查詢、中斷和DMA三種數(shù)據(jù)傳送模式。MCP2515連接到S3C2410的SPI0口,其相互連接關(guān)系如圖1所示。


          圖1 PROFIBUS 網(wǎng)絡(luò)特性

          (1) 本接口設(shè)計(jì)不使用TXnRTS、RXnBF等5個(gè)引腳,使用了總中斷引腳INT,因此在軟件設(shè)計(jì)的時(shí)候不使能發(fā)送請(qǐng)求和接收完畢中斷對(duì)應(yīng)功能引腳,且在本設(shè)計(jì)中該引腳也不作其它用途,處理器在響應(yīng)總中斷后,通過(guò)SPI接口訪問(wèn)MCP2515內(nèi)部相應(yīng)寄存器來(lái)確定具體的中斷事件,并對(duì)其作出處理。
          (2) 為了隔離總線上的干擾信號(hào),提高系統(tǒng)的可靠性,CAN控制器與CAN收發(fā)器之間采用了光隔。光隔的兩邊應(yīng)該采用獨(dú)立的供電電源,不可與系統(tǒng)的其他部分直接共地。
          (3) 在CANH和CANL之間使用了兩個(gè)等值電阻(R410、R411)和旁路電容(C408)來(lái)提高EME(Electro Magnatic Emission)性能,減少該部分對(duì)系統(tǒng)其他部分的干擾。
          (4) MCP2515在初始上電、復(fù)位以及從休眠模式喚醒后最初的128 OSC時(shí)鐘周期內(nèi),OST(振蕩啟動(dòng)定時(shí)器)保持復(fù)位狀態(tài)。應(yīng)注意在OST超時(shí)前不應(yīng)對(duì)SPI進(jìn)行操作。
          (5) RX是為減少EMI(Electro Magnatic Interference)而設(shè)計(jì)的。CANH、CANL的轉(zhuǎn)換率與RX上流經(jīng)的電流成正比。

          3 CAN總線接口軟件設(shè)計(jì)

          CAN總線軟件接口為應(yīng)用層訪問(wèn)CAN控制器—MCP2515提供了一個(gè)便捷的“通道”,該“通道”屏蔽了CAN控制器工作的實(shí)現(xiàn)細(xì)節(jié),使得應(yīng)用層面向通信是透明的。該接口通過(guò)SPI接口通信來(lái)實(shí)現(xiàn)對(duì)CAN控制器的操作。它們之間的相互關(guān)系如圖2所示。

          上一頁(yè) 1 2 3 下一頁(yè)

          關(guān)鍵詞: S3C2410 CAN 總線通信

          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();