《電子技術應用》
您所在的位置:首頁 > 其他 > 設計應用 > TMS320C6416與CAN控制器的接口實現
TMS320C6416與CAN控制器的接口實現
摘要: 分析了數字信號處理器TMS320C6416和CAN控制器SJAl000的接口時序。給出了基于復雜可編程邏輯器件EPM7512的DSP數字信號處理器和CAN控制器之間的接口電路,同時給出了詳細的軟硬件實現方法。
Abstract:
Key words :

   摘要:分析了數字信號處理器TMS320C6416和CAN控制器SJAl000的接口時序。給出了基于復雜可編程邏輯器件EPM7512的DSP數字信號處理器和CAN控制器之間的接口電路,同時給出了詳細的軟硬件實現方法
關鍵詞:TMS320C6416;SJAl000;CPLD;接口電路

O 引言
    CAN總線是現場總線中的一個應用熱點,可支持分布式控制和適時控制的串行通信網絡。由于CAN總線具有通信速率高、開放性好、報文
短、糾錯能力強以及控制簡單、擴展能力強、系統成本低等特點,因而其應用越來越受到人們的關注。基于CAN總線的CAN控制器具有完成CAN
總線通信協議所要求的全部必要功能,因此,CAN控制器與其它微處理器的接口已成為設計CAN總線系統的首要工作。目前已有一些微處理器將CAN控制器嵌入到系統之中,但是,仍有大量人們比較熟悉的微處理器并不帶有CAN控制器。為此,本文介紹了CAN控制器SJAl000與DSP芯片TMS320C6416的接口電路。
    SJAl000是符合CAN2.0B標準的CAN通信控制器,該器件具有完成高性能通信協議所要求的全部特性,同時具有下列特性:
    ◇可連接各種微控制器接口;
    ◇取決于報文標志符的總線訪問優先權;
    ◇強有力的錯誤處理能力;
    ◇可組態總線接口;
    ◇帶有位填充功能的非歸零編碼/解碼;
    ◇輸出驅動器狀態可編程。
    TMS320C6416是一款高性能DSP數字信號處理器。它基于C64x核心架構,并集成了豐富的外圍設備和接口,最高主頻可達到1.0GHz。TM-S320C6416以高速的處理能力和出色的接口能力,已廣泛用于當今技術的各個領域。

1 TMS320C6416與SJAlOOO的接口設計
1.1 INTEL方式下SJAl000的讀寫時序
    INTEL方式下,SJAl000的讀、寫時序圖如圖1所示。


    在INTEL方式下讀寫SJAl000時,其地址和數據是分時傳送的,地址在前,數據在后。ALE為高時,為地址總線周期;ALE為低電平,同時
也為低時,為數據總線周期。為低時,為讀數據;為低時,為寫數據。
1.2 TMS320C6416的讀寫時序
    數字信號處理器TMS320C6416的讀寫時序如圖2所示。


    TMS320C6416的數據線和地址線是分開的,而SJAl000的數據線和地址線是復用的。所以TMS320C6416不能與SJAl000直接對連,而必須將數據和地址線進行轉換后才能連接。

1.3 TMS320C6416與SJAl000的接口設計
    TMS320C6416的數據總線和地址總線是分開的。在對存儲器操作時,地址和數據幾乎是同時出現的,而且系統采用流水線工作方式,TMS-320C6416的地址和數據總線是無法與SJAl000的AD0~AD7直接連接的,也沒有方法可以將SJAl000的RAM直接映射到TMS320C6416的存儲器中。因此,為了實現TMS320C6416與SJAl000的接口,應將SJAl000的ALE和直接映射為TMS320C6416的兩個I/O端口。可將SJA1000的ADO~AD7直接和TMS320C6416的BED0~BED7連接。當ALE為高電平時,TMS320C6416的BED0~BED7送數據給SJAl000,表示地址值;當ALE為低電平,而且也為低電平時,TMS320C6416的BED0~BED7則和SJAl000交換數據。在這種方法中,可以利用ALE為高電平和為低電平來區分地址總線周期和數據總線周期。
    圖3所示是其硬件連接方法。

 


    圖3中的PCA82C250為CAN串行鏈接I/O器件。CPLD芯片EPM7512用于產生相應的控制信號并輸出給SJAl000,從而控制SJAl00O的地址和數據總線周期。

2 基于EPM7512的接口邏輯
    EPM7512是AIZERA公司生產的復雜可編程邏輯器件(CPLD),可與AIXERA公司的QuartusII開發系統軟件配合,并可以100%地模仿TTL。采用EPM7512作為DSP的外部接口擴展,可非常方便而且靈活地實現接口功能。
    DSP處理器的地址線BEAl5經CPLD產生片選信號后,可由地址線BEA15作為CAN控制器的地址和數據選擇線,并和一起產生SJAl000的地址鎖存信號ALE。BEAl5為l時,地址有效;BEAl5為0時,數據有效。
    采用ModelSim仿真軟件可對接口電路進行功能仿真,其仿真結果如圖4所示,能夠滿足SJAl000的讀寫時序要求。

3 接口電路的軟件讀寫操作
    CAN控制器SJAl000的地址線和數據線可映射為DSP芯片TMS320C6416的外部程序存儲EMIFB的CE3區域,其在DSP控制器上的地址分別為0x6-C008000和0x6C000001。其用C語言編程的實現代碼如下:
    #defineTXB 16
    #define RXB 16
    (char*) CANAS= (char*) 0x6c008000;//定義CAN控制器數據線
    (char*) CANCS=(char*)0x6c000001;//定義CAN控制器地址線
    //以下兩句為SJAl000的控制寄存器MOD(PeliCAN模式下地址0)賦值Ox09;
    *CANAS=0;//提供CAN控制器寄存器地址
    *CANCS=0x09;//提供CAN控制器寄存器數據
    //以下兩句從SJAl000的狀態寄存器SR (PeliCAN模式下基地址+2)讀取數據;
    *CANAS=2;//提供CAN控制器寄存器地址
    *SR=CANCS&0xoff;//讀取CAN控制器數據。

4 結束語
    本文提供了一種基于CPLD的DSP處理器TMS320C6416和CAN控制器SJAl000接口方法,該實現方法比傳統硬件邏輯門電路的實現方法更加方便靈活。通過對該方法的軟硬件實現進行的仿真結果證明,該設計可以穩定可靠的運行。

此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 亚洲国产成a人v在线| 国产午夜在线观看| 三级毛片在线看| 欧美三级手机在线| 免费看一级特黄a大片| 麻豆国产成人AV在线| 国内精品视频一区二区三区八戒| 中文字幕亚洲日本岛国片| 最近最新2019中文字幕全| 亚洲视频免费看| 美女和男生一起差差差| 国产日韩AV免费无码一区二区| XXX2高清在线观看免费视频 | 日韩爱爱小视频| 亚洲熟妇av一区二区三区宅男| 羞羞歪歪汗汗漫画| 国产成人涩涩涩视频在线观看| 91普通话国产对白在线| 小草视频免费观看| 久久久久久久久久久久久久久久久久 | 果冻传媒mv在线| 亚洲色图五月天| 精品综合久久久久久97| 国产呻吟久久久久久久92| 18videosex性欧美69| 天堂中文www资源在线| 中文字幕专区高清在线观看 | 日韩欧美卡一卡二卡新区| 亚洲日本乱码在线观看| 男女午夜免费视频| 啊灬啊灬啊灬快灬别进去| 高雅人妻被迫沦为玩物| 国产福利精品一区二区| 91人成在线观看网站| 天天摸天天爽天天碰天天弄| 中国老头和老头gay视频ha| 日韩av午夜在线观看| 亚洲一区二区在线视频| 欧美色欧美亚洲另类二区| 从镜子里看我怎么c你的阅读视频| 精品精品国产自在香蕉网|