基于TMS320F28335的CAN和以太網(wǎng)接口設(shè)計
0 引言
工業(yè)現(xiàn)場設(shè)備復雜化,單一的串行通信使系統(tǒng)越來越復雜,總線控制也成為控制系統(tǒng)的主流,而CAN總線以其高速率,高抗干擾性成為最有前途的總線之一。基于以太網(wǎng)的工業(yè)控制網(wǎng)絡(luò)具有數(shù)據(jù)傳輸率高,可靠性好,易維護,可遠程傳輸?shù)葍?yōu)點。隨著互聯(lián)網(wǎng)技術(shù)的普及與推廣,以太網(wǎng)通信速率的提高,交換技術(shù)的發(fā)展,使得它受到了全球的擁護和軟硬件的支持,因此,基于以太網(wǎng)的工業(yè)控制網(wǎng)絡(luò)是工業(yè)控制系統(tǒng)的發(fā)展趨勢。本文通過主流控制器TMS320F28335在已有豐富外設(shè)的基礎(chǔ)上,擴展了CAN總線和以太網(wǎng)接口,具有重要的工程價值。
1 系統(tǒng)硬件設(shè)計
TMS320F28335型單精度浮點DSP主頻可達150 MHz,內(nèi)核電壓1.9 V,I/O電壓3.3 V;片上帶有256 KB的16位FLASH和34 KB的16位SAR AM,并有128位安全密碼鑰匙鎖,保護FLASH防止固件反向工程。片上通信端口豐富,集成有3個SCI串口輸出通道,并帶有16 B的FIFO,2個多通道McBSP串口,2個增強型CAN,1個SPI總線。還帶有16通道的12位A/D轉(zhuǎn)換器等資源口(具體原理圖限于篇幅只畫CAN和以太網(wǎng)部分)。
CAN驅(qū)動器選用TI公司的SN65HVD230,供電電壓為3.3 V,CAN接口部分原理圖如圖1所示。
以太網(wǎng)控制器選用Realtek公司的RTL8019AS,其具有集成度高,支持全雙工通信,與NE2000相兼容等特性,具有廣泛應(yīng)用場合。以太網(wǎng)接口部分原理圖如圖2所示。
2 系統(tǒng)軟件設(shè)計
本文中的軟件設(shè)計主要包括三個部分:CAN驅(qū)動通信程序,RTL8019AS驅(qū)動程序和以太網(wǎng)協(xié)議棧移植。程序的編寫在DSP集成開發(fā)環(huán)境CCS 3.3下完成。
2.1 CAN總線驅(qū)動
2.1.1 初始化
CAN模塊使用前必須初始化,初始化需要完成的主要工作有:引腳配置;郵箱配置;波特率配置;中段功能設(shè)置。限于篇幅,初始化程序從略。
2.1.2 CAN發(fā)送
本文采用郵箱0進行數(shù)據(jù)的發(fā)送,郵箱0的ID在初始化函數(shù)中已設(shè)置(程序解釋以注釋的形式給出,下文同):
2.1.3 CAN接收
為保證數(shù)據(jù)能及時接收,像其他串行通信一樣,接收一般在中斷中完成:
實際工作中通過PCCAN軟件觀察到的CAN發(fā)送和接收數(shù)據(jù),如圖3所示。
評論