《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 通信與網(wǎng)絡(luò) > 設(shè)計應(yīng)用 > DSP控制的以太網(wǎng)通信解決方案
DSP控制的以太網(wǎng)通信解決方案
來源:微型機與應(yīng)用2014年第7期
趙 鵬,孫培德
(東華大學(xué) 信息科學(xué)與技術(shù)學(xué)院,上海 201620)
摘要: 為了實時采集基于DSP的電力電子變換電路控制器的運行數(shù)據(jù),通過ARM芯片及以太網(wǎng)PHY控制器芯片提供一種以太網(wǎng)通信解決方法。采用DSP中的SPI串行接口與ARM中的SPI進行數(shù)據(jù)交換,利用ARM中帶有的EMAC控制器以及以太網(wǎng)控制芯片DP83848設(shè)計出以太網(wǎng)控制器,實現(xiàn)以太網(wǎng)通信??紤]到系統(tǒng)簡化及數(shù)據(jù)速率問題,在通信協(xié)議方面采用UDP協(xié)議,采用LabVIEW設(shè)計以太網(wǎng)上位機界面。
Abstract:
Key words :

摘  要: 為了實時采集基于DSP的電力電子變換電路控制器的運行數(shù)據(jù),通過ARM芯片及以太網(wǎng)PHY控制器芯片提供一種以太網(wǎng)通信解決方法。采用DSP中的SPI串行接口與ARM中的SPI進行數(shù)據(jù)交換,利用ARM中帶有的EMAC控制器以及以太網(wǎng)控制芯片DP83848設(shè)計出以太網(wǎng)控制器,實現(xiàn)以太網(wǎng)通信??紤]到系統(tǒng)簡化及數(shù)據(jù)速率問題,在通信協(xié)議方面采用UDP協(xié)議,采用LabVIEW設(shè)計以太網(wǎng)上位機界面。
關(guān)鍵詞: DSP;ARM;DP83848;LabVIEW;以太網(wǎng)通信

 隨著以太網(wǎng)技術(shù)在工業(yè)控制領(lǐng)域的迅速發(fā)展、性能的不斷提高和成本的迅速降低,使其在新一代工業(yè)自動化網(wǎng)絡(luò)中廣泛應(yīng)用。在采用TI公司的DSP芯片TMS320F2812作為電力電子變換電路控制器核心時,為了監(jiān)控控制器的運行狀況,可以采用串口通信。這種方式結(jié)構(gòu)簡單,但滿足不了速度、精度以及通信距離的要求。將帶有EMAC控制器的ARM處理器(LPC1768)與DP83848組成以太網(wǎng)控制器構(gòu)成一個通信轉(zhuǎn)接器,ARM與DSP通過SPI通信,以太網(wǎng)接口與上位機通信,則能滿足實時、高精度監(jiān)控的需要。
1 以太網(wǎng)控制器的主要特點
 以太網(wǎng)控制器DP83848是TI推出的一款48個引腳的以太網(wǎng)控制器,可為嵌入式應(yīng)用提供低引腳數(shù)、低成本且高效、低功耗的以太網(wǎng)解決方案。利用DP83848可以實現(xiàn)高速外圍器件的設(shè)計以及工業(yè)自動化網(wǎng)絡(luò)的控制。其主要特點有以下幾個方面。
?。?)3.3 V供電的低功耗設(shè)計(典型值小于270 mW),0.18 μm的CMOS技術(shù)。
?。?)3.3 V的MAC接口。
?。?)支持10BASE-T和100BASE-TX的以太網(wǎng)格式。
?。?)完全兼容IEEE802.3標(biāo)準(zhǔn)。
?。?)可編程的LED連接,10/100 Mb/s的模式選擇以及沖突檢測。
?。?)同時具有SNI、MII和RMII接口。
 系統(tǒng)框圖如圖1所示。

2 硬件系統(tǒng)的設(shè)計
 對于以太網(wǎng)控制器的設(shè)計,不但要考慮系統(tǒng)所具備的功能,也要考慮價格、體積等因素。這里采用ARM處理器LPC1768作為以太網(wǎng)的主控芯片。其采用低功耗設(shè)計,供電電壓為3.3 V;主頻可達(dá)100 MHz;哈佛總線結(jié)構(gòu);支持JTAG調(diào)試;片內(nèi)有512 KB Flash存儲器,64 KB數(shù)據(jù)存儲器;采用100引腳的LQFP封裝格式。LPC1768與DP83848的硬件連接示意圖如圖2所示。

 以太網(wǎng)控制器工作在RMII模式下,由參考時鐘REF_CLK、發(fā)送使能TX_EN、發(fā)送數(shù)據(jù)TXD[0:1]、接收數(shù)據(jù)RXD[0:1]、接收錯誤RX_ER及載波偵聽/接收數(shù)據(jù)有效CRS組成。關(guān)鍵引腳描述如下。
?。?)參考時鐘REF_CLK
 REF_CLK是一個連續(xù)時鐘,可以為時鐘提供時序參考。REF_CLK由MAC層或外部時鐘源提供。在RMII模式下,數(shù)據(jù)以50 MHz的時鐘頻率一次傳送2 bit。因此,RMII模式需要一個50 MHz有源振蕩器連接到X1腳。
?。?)發(fā)送使能TX_EN
 TX_EN表示MAC層正在將要傳輸?shù)碾p位數(shù)據(jù)放到TXD[1:0]上。TX_EN應(yīng)被前導(dǎo)符的首個半字節(jié)同步確認(rèn),且在所有待傳雙位信號載入過程中都保持確認(rèn)。跟隨一幀數(shù)據(jù)的末2位之后的首個REF_CLK上升沿之前,MAC需對TX_EN取反。TX_EN的變化相對于REF_CLK是同步的。
?。?)發(fā)送數(shù)據(jù)TXD[1:0]
 RMII發(fā)送時序圖如圖3所示。

?。?)接收數(shù)據(jù)RXD[0:1]
 RXD[0:1]轉(zhuǎn)換是與REF_CLK同步的。在CRS_DV有效后的每個時鐘周期里,RXD[1:0]接收DP83848C的2 bit恢復(fù)數(shù)據(jù)。在某些情況下(如數(shù)據(jù)恢復(fù)前或發(fā)生錯誤),則接收到的是RXD[0:1]的預(yù)確定值而不是恢 復(fù)數(shù)據(jù)。CRS_DV解除確認(rèn)后,RXD[0:1]為“00”,表示進入空閑狀態(tài)。CRS_DV確認(rèn)后,在產(chǎn)生正確的接收解碼之前,DP83848C將保證RXD[0:1]=“00”。
3 系統(tǒng)通信協(xié)議的分析與選擇
?。?)鏈路層協(xié)議的選擇
鏈路層最基本的功能是向該層用戶提供透明、可靠的數(shù)據(jù)傳送基本服務(wù),為了使鏈路層對網(wǎng)絡(luò)層進行無差錯的傳輸,鏈路層加強物理層傳輸?shù)脑急忍亓?,使之形成在邏輯上沒有錯誤的數(shù)據(jù)鏈路。在以太網(wǎng)傳輸數(shù)據(jù)時需識別地址,因此采用MAC地址進行標(biāo)識,所以只有存在地址解析(ARP)協(xié)議,才能實現(xiàn)IP地址到MAC地址的轉(zhuǎn)換功能。
?。?)網(wǎng)絡(luò)層協(xié)議的選擇
 網(wǎng)絡(luò)層的基本功能是當(dāng)數(shù)據(jù)包在網(wǎng)絡(luò)中活動時,處理其活動的方法。IP協(xié)議是最核心的協(xié)議,它負(fù)責(zé)系統(tǒng)與Internet進行通信。IP層有兩個功能:對IP報文報頭進行正確性分析,并對TCP和ICMP報文實行分流。使用Ping協(xié)議檢測網(wǎng)絡(luò)是否連通。
?。?)傳輸層協(xié)議的選擇
 傳輸層協(xié)議主要在主機和單片機端到端的通信。傳輸層有兩種不相同的傳輸協(xié)議:傳輸層控制協(xié)議(TCP)和用戶數(shù)據(jù)報協(xié)議(UDP)??紤]到系統(tǒng)簡化和速度的要求,采用UDP協(xié)議。
4 系統(tǒng)軟件設(shè)計
 軟件設(shè)計分為以太網(wǎng)通信的實現(xiàn)以及DSP和ARM的SPI通信兩個部分。
4.1 以太網(wǎng)通信的實現(xiàn)
 以太網(wǎng)控制器DP83848對以太網(wǎng)鏈路層進行控制,LPC1768則完成其他層的協(xié)議調(diào)節(jié),以太網(wǎng)控制器由LPC1768控制,完成整個以太網(wǎng)通信傳輸。在實現(xiàn)通信時,首先控制DP83848復(fù)位,并初始化芯片中的寄存器。當(dāng)滿足發(fā)送和接收條件時,系統(tǒng)開始發(fā)送和接收數(shù)據(jù)。當(dāng)滿足以下條件時,以太網(wǎng)控制器向LPC1768申請中斷,即一幀數(shù)據(jù)發(fā)送結(jié)束、接收到一幀數(shù)據(jù)或出錯等事件發(fā)生。主控制器中斷后,事件根據(jù)中斷狀態(tài)寄存器的內(nèi)容進行分類處理。通信數(shù)據(jù)打包解包的完成由LPC1768內(nèi)部程序進行處理,系統(tǒng)復(fù)位后,程序首先發(fā)送地址解析協(xié)議(ARP)請求,建立地址映射,并且內(nèi)部中斷進行定時更新。LPC1768按照UDP協(xié)議格式打包,送入DP83848,由此芯片控制數(shù)據(jù)鏈路層將數(shù)據(jù)輸出到局域網(wǎng)中。反之,當(dāng)有數(shù)據(jù)從局域網(wǎng)過來時,DP83848產(chǎn)生外部中斷,主控芯片可以對此作出相應(yīng)處理。發(fā)送流程程序框圖如圖4所示,接收流程框圖如圖5所示。

 

 

 DSP將采集的數(shù)據(jù)通過SPI方式發(fā)送給ARM,存儲在ARM中的一個接收緩沖區(qū)中。當(dāng)數(shù)據(jù)接收完畢,啟動以太網(wǎng)通信,將數(shù)據(jù)通過網(wǎng)絡(luò)發(fā)送給PC端,進行數(shù)據(jù)的分析。
5 上位機軟件的設(shè)計
 在上位機設(shè)計中,本設(shè)計采用LabVIEW進行軟件設(shè)計,系統(tǒng)要求4通道顯示數(shù)據(jù)。當(dāng)數(shù)據(jù)傳送至上位機,LabVIEW程序利用其強大的數(shù)據(jù)處理能力將數(shù)據(jù)分解,并利用其方便快捷的圖形顯示界面取出4組數(shù)據(jù)進行顯示。LabVIEW編寫的上位機程序如圖8所示,實驗結(jié)果如圖9所示,可以看出分別顯示了4種不同數(shù)據(jù)。

 本設(shè)計以LPC1768和DP83848為核心,提供了一種基于DSP的電力電子變換電路控制器中利用以太網(wǎng)傳輸數(shù)據(jù)的解決方案。從硬件、軟件以及上位機3方面進行了設(shè)計。經(jīng)實驗驗證,此方案確實可行。
參考文獻(xiàn)
[1] 葉智祥.基于ARM的以太網(wǎng)轉(zhuǎn)換器研究及應(yīng)用[D].長春:長春理工大學(xué),2010.
[2] 江俊輝.基于ARM的嵌入式系統(tǒng)硬件設(shè)計[J].微計算機信息,2005(72):120-122.
[3] 鄧紅德,李陽,吳佳楠.基于RL-ARM的嵌入式以太網(wǎng)與串口通信系統(tǒng)設(shè)計[J].測控技術(shù),2012,31(8):75-79.
[4] 董超,朱軍,史勃.DSP以太網(wǎng)通信技術(shù)研究[J].工業(yè)自動化及儀表,2012,39(6):768-770.
[5] 李永輝,謝志遠(yuǎn),耿烜.基于DSP的嵌入式TCP/IP協(xié)議的研究和實現(xiàn)[J].華北電力大學(xué)學(xué)報,2004,31(2):77-79.

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。