基于AT91RM9200的CAN智能節點設計
1 硬件設計
CAN智能節點的設計涉及2個方面:需要實現的功能;如何實現CAN通信。因此本文基于AT91RM9200和MCP2510提出的CAN智能節點的設計框架如圖1所示。在此首先介紹主要芯片的特性,然后再說明智能節點的設計原理。
1.1 芯片特性
AT91RM9200是Atmel公司生產的一款ARM9處理器,它是完全圍繞ARM920T ARM Thumb處理器構建的系統。它有豐富的系統與應用外設及標準的接口,從而為低功耗、低成本、高性能的計算機寬范圍應用提供一個單片解決方案。
MCP2510是由美國微芯科技有限公司(MicrochipTechnology Inc.)生產的一款帶SPI接口的CAN協議控制器,完全支持CAN總線V2.0A/B技術規范;能夠發送和接收標準和擴展報文,通信速率最高可達1 Mb/s,同時具備驗收過濾以及報文管理功能;通過SPI接口與MCU進行通信,最高數據傳輸速率高達5 Mb/s;包含3個發送緩沖器和2個接收緩沖器,還具有靈活的中斷管理能力。所有這些特點使得MCU對CAN總線的操作變得非常簡單。PCA82C250是由Philips半導體公司生產的一款CAN收發器,是CAN協議控制器和物理傳輸線路之間的接口。它可以用高
達l Mb/s的位速率在2條有差動電壓的總線電纜上傳輸數據。
1.2 設計原理
本文將CAN智能節點需要實現的功能統稱為功能模塊。由于AT91RM9200處理器具有豐富的系統與應用外設及標準的接口,因此根據應用的需要很容易就可實現功能模塊的擴展。本文著重說明AT91RM9200處理器如何實現CAN總線的擴展。
AT91RM9200處理器提供4個SPI接口。其中MOSI(主機輸出從機輸入)、MISO(主機輸入從機輸出)、SPCK(串行時鐘)3個引腳信號由4個SPI接口共用;而4個片選信號NPCSO,NPCSl,NPCS2,NPCS3則用于分別選通4個SPI接口。而CAN控制器MCP2510的SPI接口引腳定義:SI(數據輸入)、SO(數據輸出)、SCK(時鐘輸入)、CS(片選輸入)。該設計將AT91RM9200第二個SPI接口與MCP2510的SPI接口相連(MOSI←→SI,MIS0←→SO,SPCK←→SCK,NPCSl←→CS),從而建立了它們之間通信的橋梁。同時將MCP2510芯片的中斷輸出引腳INT與AT91RM9200芯片的中斷輸入引腳IRQ5相連,從而可將MCP2510芯片產生的中斷(包括發送、接收、報文錯誤、總線活動喚醒、錯誤等中斷)事件通知AT91RM9200處理器,讓其作出相應的處理。
評論