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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > S12X系列雙核單片機的整車控制器CAN結(jié)點設(shè)計

          S12X系列雙核單片機的整車控制器CAN結(jié)點設(shè)計

          作者: 時間:2012-08-21 來源:網(wǎng)絡(luò) 收藏

          摘要:XGATE內(nèi)核的MC9E具有數(shù)據(jù)處理速度快、反應(yīng)時間短、功耗低等優(yōu)點,在汽車電子領(lǐng)域有著很好的應(yīng)用前景。本文介紹了Freescale公司MC9在混合動力汽車中應(yīng)用的優(yōu)點,給出了其進(jìn)行總線通信的硬件接口與執(zhí)行流程。最后給出了其利用協(xié)處理器XGATE管理總線通信的典型配置方法。
          關(guān)鍵詞:;MC9E;XGATE;中斷

          引言
          高精度、高速度、高可靠性的混合動力汽車是實現(xiàn)整車控制的基礎(chǔ)。為了避免車載環(huán)境中的電磁干擾,滿足閉環(huán)控制系統(tǒng)的快速響應(yīng),整車控制器與其他控制器的通信采取CAN總線方式。CAN總線位速率最大可達(dá)1 Mb/s,可以滿足整車控制器與外界的高速通信。
          Freeseal公司MC9S12XE(簡稱S12X)專門用于汽車網(wǎng)絡(luò)和通用車身應(yīng)用,具有32位單片機的性能,且具有16位MCU的所有優(yōu)點和功效。內(nèi)部的增強型XGATE模塊,允許高速數(shù)據(jù)自主地在單片機外設(shè)和內(nèi)部RAM、I/O端口之間進(jìn)行數(shù)據(jù)傳輸與處理,XGATE內(nèi)置有一個16位的精簡指令集內(nèi)核,可以對要傳輸?shù)臄?shù)據(jù)進(jìn)行預(yù)處理并執(zhí)行復(fù)雜的通信協(xié)議,易于用C語言進(jìn)行編程。合理地使用XGATE可以提高整車控制器與外界CAN總線的通信速度,而不增加主CPU(S12X CPU)的中斷負(fù)荷,從而提高了單片機的數(shù)據(jù)處理能力。

          1 CAN總線硬件接口
          S12X單片機CAN總線接口原理圖如圖1所示。為了增強CAN總線節(jié)點的抗干擾能力,S12X單片機的CAN總線收發(fā)引腳并不是直接與PCA82C250的TxD和RxD相連,而是通過高速光耦6N137后與PCA82C250相連,這樣就很好地實現(xiàn)了總線上各CAN總線間的電氣隔離。

          本文引用地址:http://www.ex-cimer.com/article/171006.htm

          c.JPG


          CANH和CANL引腳與地之間并聯(lián)了兩個電容C1、C2,可以濾除總線上的高頻干擾,并具有一定的防電磁輻射的能力。另外,在兩根CAN總線輸入端與地之間分別接了TVS管D1和D2,當(dāng)兩輸入端與地之間出現(xiàn)瞬變干擾時,可起到保護(hù)作用。


          上一頁 1 2 3 4 下一頁

          評論


          相關(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); })();