新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > AVR單片機(jī)的CAN總線分析儀設(shè)計(jì)

AVR單片機(jī)的CAN總線分析儀設(shè)計(jì)

作者: 時(shí)間:2013-11-12 來源:網(wǎng)絡(luò) 收藏

引言

  國內(nèi)基于CAN總線的工程應(yīng)用也越來越多,但是在CAN現(xiàn)場總線產(chǎn)品開發(fā)前期和后期測試中缺乏有效的現(xiàn)場監(jiān)測和排錯(cuò)手段,從而延長了開發(fā)周期,增加了開發(fā)成本。同時(shí),國內(nèi)CAN總線教學(xué)實(shí)驗(yàn)也同樣缺乏成本低,功能強(qiáng),操作簡單的CAN分析儀器。

  目前CAN總線的監(jiān)測主要是通過CAN適配卡與計(jì)算機(jī)相連,利用計(jì)算機(jī)軟件來分析總線狀況。高端CAN適配卡價(jià)格高昂,而低端CAN適配卡如CAN轉(zhuǎn)232卡,由于232總線傳輸速度有限,很難做到準(zhǔn)確監(jiān)測。另外,計(jì)算機(jī)也不便于在現(xiàn)場進(jìn)行監(jiān)測。本文設(shè)計(jì)了一種造價(jià)低廉、操作簡單的便攜,能夠適應(yīng)各種總線傳輸速度。

1 CAN分析儀的組成和功能

  主要由4個(gè)部分組成:MCU、液晶顯示接口、鍵盤輸入接口和CAN接口。能夠?qū)崿F(xiàn)以下功能: 總線波特率自適應(yīng)、正常接收CAN總線數(shù)據(jù)、總線報(bào)文數(shù)和總線錯(cuò)誤數(shù)及錯(cuò)誤類型記錄、總線負(fù)載率檢測、總線報(bào)文顯示、CAN協(xié)議類型辨識。硬件整體框架如圖1所示。

AVR單片機(jī)的CAN總線分析儀設(shè)計(jì)

圖1 系統(tǒng)硬件框圖

2 CAN分析儀的硬件設(shè)計(jì)

2.1 MCU與CAN接口

  本系統(tǒng)中使用Atmel公司生產(chǎn)的作為微控制器。是高性能、低功耗的8位。它具有哈佛總線結(jié)構(gòu)、精簡指令集(RISC)結(jié)構(gòu)和豐富的片內(nèi)資源。具有64 KB Flash程序存儲器、2 KB的E2PROM、4 KB的SRAM、4個(gè)帶有比較模式的定時(shí)器/計(jì)數(shù)器以及可編程帶內(nèi)部振蕩器的看門狗定時(shí)器等,支持匯編和C語言在線編程。利用其優(yōu)良特性可以使設(shè)計(jì)大大簡化。

  CAN接口硬件原理圖如圖2所示,包括MCU、總線控制器模塊、總線驅(qū)動(dòng)模塊、光電隔離模塊?! 】偩€控制器模塊采用Philips公司的CAN控制器SJA1000。它可工作于BasicCAN 模式或PeliCAN 模式,具有64 字節(jié)的接收緩沖器,支持11位和29位ID,可熱插拔,支持CAN2.0B 協(xié)議,僅依靠控制器本身的硬件電路就能夠?qū)崿F(xiàn)通信幀的組織和發(fā)送功能。

  CAN總線驅(qū)動(dòng)模塊采用82C251。為了增強(qiáng)CAN總線節(jié)點(diǎn)的抗干擾能力,實(shí)現(xiàn)各CAN節(jié)點(diǎn)間的電氣隔離,SJA1000的TX0和RX0通過高速光耦6N137分別與82C251T的TXD和RXD相連。值得注意的是,光耦所采用的兩個(gè)電源VCC和VDD必須完全電氣隔離。

2.2 液晶顯示接口

  分析儀監(jiān)測到的總線狀態(tài)需要外部器件來顯示以方便觀察。傳統(tǒng)的數(shù)碼管指示燈無法滿足大量總線狀態(tài)實(shí)時(shí)顯示的需求。為了便于操作者的使用,本系統(tǒng)選用深圳安得利光電科技有限公司生產(chǎn)的AM1286425F57,它是128×64的圖形點(diǎn)陣液晶模塊,內(nèi)置控制器是三星公司的LCD驅(qū)動(dòng)及控制芯片S6B1713。

AVR單片機(jī)的CAN總線分析儀設(shè)計(jì)

圖2 CAN接口硬件電路原理

  圖3是AM1286425F57硬件原理圖。MCU電源和背光輸入電源都為3.3 V。8位數(shù)據(jù)總線接在單片機(jī)的D口上,將D口配置為輸出。AM1286425F57的RS是指令與數(shù)據(jù)選擇信號。當(dāng)RS=0時(shí),表示數(shù)據(jù)總線D0~D7上是液晶控制指令;當(dāng)RS=1時(shí),表示數(shù)據(jù)總線D0~D7上是寫入液晶的數(shù)據(jù)。CS1和CS2都是控制器芯片S6B1713的片選信號,當(dāng)CS1=0,CS2=1,即2個(gè)片選同時(shí)有效時(shí)才能選中液晶,向它寫入數(shù)據(jù)或指令。


上一頁 1 2 3 下一頁

評論


相關(guān)推薦

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

關(guān)閉