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