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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于32位ARM7的CAN節(jié)點(diǎn)設(shè)計(jì)

          基于32位ARM7的CAN節(jié)點(diǎn)設(shè)計(jì)

          作者: 時(shí)間:2016-11-21 來源:網(wǎng)絡(luò) 收藏
          CAN總線是一種最有前途的現(xiàn)場總線,因其優(yōu)異性能而在工業(yè)控制汽車電子、安防等方面得到廣泛應(yīng)用。設(shè)計(jì)CAN-bus通訊接口是很重要的一個(gè)環(huán)節(jié),設(shè)備的正確運(yùn)行與其密切相關(guān)。如圖 1給出了一個(gè)實(shí)際的CAN-bus通訊單元電路圖,電路結(jié)構(gòu)為: LPC2119(內(nèi)部集成CAN控制器的32位ARM7芯片)+隔離CAN收發(fā)器(CTM Module)。

          圖 1 CAN-bus通訊單元原理圖
          LPC2119/2129/2194處理器包含2個(gè)或4個(gè)CAN模塊,可同時(shí)支持多個(gè)CAN總線的操作,使器件可用作網(wǎng)關(guān)、開關(guān)、工業(yè)或汽車應(yīng)用中多個(gè)CAN總線的路由器。PHILPIS公司的LPC2119/2192/2194ARM7TDMI-S處理器區(qū)別于LPC2214/2124處理器的最大特點(diǎn)就是內(nèi)建CAN控制器。如圖1.1所示,給出了一個(gè)基于LPC2119的CAN節(jié)點(diǎn)電路,對于LPC2119芯片,最小系統(tǒng)需要兩組電源、復(fù)位電路、晶振電路,P0.14引腳接一個(gè)上拉電阻(一個(gè)連接到正電源的電阻),以禁止ISP功能。該電路中采用了隔離CAN收發(fā)器模塊,以確保在CAN總線遭受嚴(yán)重干擾時(shí)控制器能夠正常運(yùn)行.

          CAN控制器發(fā)送示例程序




          int main()



          數(shù)據(jù)長度
          遠(yuǎn)程幀,數(shù)據(jù)幀標(biāo)志
          標(biāo)準(zhǔn)幀,擴(kuò)展幀標(biāo)志

          前四字節(jié)數(shù)據(jù)
          后四字節(jié)數(shù)據(jù)
          結(jié)束初始化






          }
          以上為LPC2119+CTM隔離CAN收發(fā)器構(gòu)成的CAN節(jié)點(diǎn),介紹了隔離CAN收發(fā)器的優(yōu)點(diǎn):簡化設(shè)計(jì),穩(wěn)定可靠,能夠?qū)崿F(xiàn)CAN總線上各節(jié)點(diǎn)在電氣、電源上完全獨(dú)立和隔離。軟件設(shè)計(jì)部分簡單介紹基于FullCAN函數(shù)庫CAN發(fā)送報(bào)文流程及部分例程。


          關(guān)鍵詞: 32位ARM7CAN節(jié)

          評論


          技術(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); })();