久久ER99热精品一区二区-久久精品99国产精品日本-久久精品免费一区二区三区-久久综合九色综合欧美狠狠

新聞中心

EEPW首頁 > 手機與無線通信 > 設計應用 > 基于TMS320F2812和USB100的CAN-USB總線通信系統設計

基于TMS320F2812和USB100的CAN-USB總線通信系統設計

作者: 時間:2011-03-31 來源:網絡 收藏

2.2 eCAN模塊應用
由于采用片上增強型控制器eCAN,所以CAN模塊硬件電路極為簡單,只需將F2812的RX和TX引腳經過電平轉換器件連接至CAN收發器PCA82C250的TXD和RXD引腳,并以F2812作為CAN的微處理器,進行實時數據收發。其硬件分為2層:第一層,CAN與F2812接口層;第二層,F2812與外圍器件的信息處理。CAN收發器采用低廉的PCA82C250,的擴展性強,至少可連接110個節點,其引腳8(Rs)用于選擇工作模式,高速工作時上接一個斜率電阻,根據速度可適當調整,一般在16~140 Kb/s之間。

3 系統軟件
3.1 DSP程序
本系統中,微處理器主要完成2個功能:一是對eCAN控制器進行初始化;二是完成上位機USB接口和下位機CAN接口的數據。USB接口通過查詢的TXE和RXF引腳的狀態來完成上位機與微處理器F2812的數據交換,CAN接口的通信主要包括eCAN模塊的消息發送和接收。
F2812上電復位后,必須對軟件進行初始化,其中最重要的是對eCAN模塊初始化。消息發送時,需要初始化發送郵箱,包括向寄存器CANME使能相應郵箱、設置CANMD方向、通過MBOXn.MSGID(n=O~31)設置發送郵箱的ID等操作,初始化后向消息數據寄存器ECanaMboxes.Mboxn.MDR寫入上位機USB接口發送的數據,然后設置EcanaRegs.CANTRS.bit.TRSn為1請求發送消息,等待傳輸響應位TA=1,表示消息成功發送,并產生發送中斷,本系統通過發送中斷子程序統計發送消息個數。消息接收時,同樣需要初始化相應的接收郵箱,完成初始化后,當下位機通過CAN接口發送數據時,如果eCAN模塊的接收郵箱的ID與下位機消息的ID匹配,并成功接收,則相應的接收消息掛起寄存器(CANRMP)的相應位被置1;若CPU開放了eCAN接收中斷,則同時也產生接收消息中斷,在接收中斷子程序,可以將相應的消息數據寄存器的內容發給模塊的寫地址,同時需要查詢的TXE端是否允許向USB端口發送數據。
上位機通過USB接口發送數據,下位機通過CAN接口接收數據基本步驟為:
(1)F2812初始化通用IO口以及eCAN控制器;
(2)F2812檢測USB模塊是否有來自上位機的數據;
(3)若有,將數據讀入配置好的eCAN發送郵箱;
(4)啟動配置好的eCAN發送郵箱;
(5)當郵箱發送消息給下位機成功后,會進入eCAN發送中斷程序;
(6)清除相應標志后退出中斷程序,繼續等待上位機發送數據。
上位機通過USB接口接收數據,下位機通過CAN接口發送數據基本步驟為:
(1)F2812初始化通用IO口以及eCAN控制器;
(2)當下位機通過CAN接口發送數據時,根據郵箱標識符,已配置好的eCAN接收郵箱收到下位機數據,同時進入eCAN接收中斷子程序;
(3)F2812檢測USB模塊內部緩沖區是否允許向上位機發送數據,若禁止,則等待;
(4)若允許向上位機發送數據,則將數據寫入上位機;
(5)清除相應標志后退出中斷程序,繼續等待下位機發送數據。圖2為系統軟件流程圖。

本文引用地址:http://cqxgywz.com/article/156493.htm

2.JPG



評論


相關推薦

技術專區

關閉