基于RealView MDK的CAN總線仿真研究
CAN總線的接收與CAN數據的發送是一個相反的過程,當CAN收發器檢測到CAN總線上有數據時,CAN收發器把CAN總線上的差分信號轉換成位流數據,經過錯誤管理器及位時序邏輯單元對位數據流和時序進行檢查,再經過位流管理器把位流數據轉換成字節數據并存放到接收緩沖器中,當一幀數據接收完了之后則由接收緩沖器產生數據接收中斷(通知CPU已經接收到一幀新數據),并將產生的各種狀態通過狀態寄存器的值來表示。本文引用地址:http://www.104case.com/article/187882.htm
2 系統軟件設計
本文所述系統實現的功能為:LPC2378的兩個CAN控制模塊各作為獨立的CAN總線節點,實現它們之間的通信。為構建一個完整的CAN總線仿真環境,軟件設計所實現的功能為:仿真一A/D轉換通道,A/D轉換后的數值傳給CAN模塊2,CAN模塊l接收來自CAN模塊2的數據。數據傳送通道為A/D轉換→CAN2→CANl。
2.1 定義一幀CAN數據的格式
2.2 初始化CAN控制器
2.3 中斷服務程序
每當發送完一幀數據,或接收到一幀數據時都觸發中斷。
評論