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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 分析及應(yīng)用CAN接口典型電路

          分析及應(yīng)用CAN接口典型電路

          作者: 時間:2018-07-31 來源:網(wǎng)絡(luò) 收藏

          CAN總線簡介CAN是Controller Area Network 的縮寫,目前CAN總線被廣泛的應(yīng)用在汽車電子領(lǐng)域和工業(yè)的現(xiàn)場總線中,相比于RS485而言,CAN總線具有如下特點:

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

          通信速率可達到1Mbps(通信距離小于40米);

          通信距離可達10Km(通信速率小于5Kbps);

          無主從之分,任意節(jié)點之間可以進行數(shù)據(jù)交互;

          仲裁機制明顯,多節(jié)點同時通信不會造成總線擁堵;

          錯誤處理機制豐富,可保證CAN通信的穩(wěn)定可靠;

          標(biāo)識符ID有標(biāo)準(zhǔn)幀(11位ID)和擴展幀(29位ID)之分;

          硬件設(shè)計思路本文主要介紹片上電路的設(shè)計,不討論SJA1000的硬件設(shè)計。

          現(xiàn)在mcu種類繁多,片上資源豐富,很多8位、32位單片機都帶有片上CAN資源,所以用戶在使用片上CAN總線時主要考慮選擇合適的電平轉(zhuǎn)換芯片就可以,這樣可大大降低設(shè)計的難度,而且還能提高硬件的穩(wěn)定性。

          在用單片機設(shè)計電路的時候,必須要考慮電平的轉(zhuǎn)換情況,所以有兩個問題你要有概念:

          單片機的電平是TTL電平;

          CAN的電平是以CANH、CANL兩線之間的差分電壓定義的;

          TTL電平與CAN電平不兼容;

          所以在設(shè)計電路的時候,必須想到要電平轉(zhuǎn)換,這也是該電路的設(shè)計核心,幸好很多半導(dǎo)體公司都替你想好了,所以你只需要選擇一款合適的CAN收發(fā)器芯片就可以了。常用的CAN收發(fā)器芯片有:42675,PCA82C250等。

          CAN以片上CAN資源為核心,配合CAN收發(fā)芯片所設(shè)計的電路如下:


          從圖中可以看出,電路非常簡單,這種接口類的技術(shù),一般硬件電路教簡單,麻煩的是協(xié)議。

          抗干擾設(shè)計

          通訊隔離

          為了提高CAN總線的穩(wěn)定性,一般將CAN總線與單片機網(wǎng)絡(luò)隔離開來,與RS485電路不同的是,CAN總線與單片機相關(guān)的引腳只有兩個,所以使用一個雙通道數(shù)字隔離芯片就可以完成了,隔離電路如下圖所示。


          限流保護

          防止CAN總線的電流過大將芯片燒壞,可以在總線上串入自恢復(fù)保險絲,當(dāng)電流過大時,保險絲熔斷,電流恢復(fù)正常時保險絲自恢復(fù)。



          關(guān)鍵詞: CAN接口 典型電路

          評論


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