基于W5100的DSP快速網(wǎng)絡(luò)接入解決方案
掃描二維碼
隨時(shí)隨地手機(jī)看文章
現(xiàn)代數(shù)據(jù)采集領(lǐng)域中,越來越多的現(xiàn)場(chǎng)采集設(shè)備需要擴(kuò)展網(wǎng)絡(luò)功能以實(shí)現(xiàn)遠(yuǎn)程控制和數(shù)據(jù)傳輸。以太網(wǎng)以其低成本,易于集成,傳輸距離遠(yuǎn)的優(yōu)勢(shì)使其得到了廣泛應(yīng)用。
傳統(tǒng)的以太網(wǎng)解決方案,往往采用主控CPU連接物理層接口芯片,在主控器內(nèi)編寫以太網(wǎng)通信協(xié)議。這種方法需要編寫繁瑣的程序并且耗費(fèi)大量的時(shí)間調(diào)試。由于網(wǎng)絡(luò)協(xié)議一般都比較大,寫入軟件后穩(wěn)定性欠佳,不利于系統(tǒng)的快速開發(fā)與穩(wěn)定運(yùn)行,而且客戶時(shí)常會(huì)有新的需求。這種用軟件實(shí)現(xiàn)的方式很難滿足頻繁更新升級(jí)的要求。因此,一種方式就是將網(wǎng)絡(luò)協(xié)議的處理獨(dú)立于系統(tǒng)處理器之外,讓應(yīng)用程序與資料的輸入/輸小分別執(zhí)行于不同的硬件,來適應(yīng)多方而的條件。它將網(wǎng)絡(luò)協(xié)議的處理分成一個(gè)由特定處理器執(zhí)行的控制部分和一個(gè)硬件線路部分,這種方式的優(yōu)點(diǎn)是具有較短的開發(fā)周期與較高的彈性,而且能夠增加穩(wěn)定性并有效降低主CPU負(fù)擔(dān),模塊化的沒計(jì)也便于以后系統(tǒng)的升級(jí)。
北京博控自動(dòng)化有限公司推出的高速硬件以太網(wǎng)協(xié)議芯片W51O0,很好的解決了上述問題。它本身集成了高度成熟的TCP/IP協(xié)議棧、以太網(wǎng)MAC層、PHY層等,支持TCP、UDP、IPv4、ICMP、ARP、IGMP和PPPoE等協(xié)議,這些協(xié)議已經(jīng)在很多領(lǐng)域經(jīng)過了多年的驗(yàn)證。它支持4個(gè)獨(dú)立的Socket通信,內(nèi)部16 KB的發(fā)送/接收緩沖區(qū)可快速進(jìn)行數(shù)據(jù)交換,最大有效通信速率可達(dá)25 Mbps。使用W5100不需要考慮以太網(wǎng)的控制,只需要進(jìn)行簡(jiǎn)單的端口(socket)編程,像訪問外部存儲(chǔ)器一樣簡(jiǎn)單。它提供兩種并行總線接口(直接總線與間接總線)以及串行SPI接口。W5100大大減少了硬件接口設(shè)計(jì)和網(wǎng)絡(luò)編程的工作量,并且可以實(shí)現(xiàn)可靠穩(wěn)定運(yùn)行的遠(yuǎn)程數(shù)據(jù)通信系統(tǒng),可廣泛應(yīng)用于各種安全檢測(cè)、電力系統(tǒng)的測(cè)量監(jiān)控音視頻傳輸、遠(yuǎn)程信息傳輸?shù)阮I(lǐng)域。圖1為W5100的系統(tǒng)構(gòu)架圖。
下面給出了一種TMS320F2812(簡(jiǎn)稱F2812)和W5100相結(jié)合的嵌入式網(wǎng)絡(luò)控制系統(tǒng),應(yīng)用程序由DSP來執(zhí)行,而網(wǎng)絡(luò)協(xié)議的處理與數(shù)據(jù)的傳輸則由W5100來實(shí)現(xiàn)。在進(jìn)行系統(tǒng)設(shè)計(jì)時(shí)不必考慮網(wǎng)絡(luò)協(xié)議的細(xì)節(jié),只需要解釋并執(zhí)行網(wǎng)絡(luò)芯片傳送過來的指令和數(shù)據(jù)就可以實(shí)現(xiàn)與Internet網(wǎng)絡(luò)連接,且不需要操作系統(tǒng)的支持,具有接口電路簡(jiǎn)單,編程方便等特點(diǎn)。系統(tǒng)框圖如圖2所示。
從圖2中可以看出,需要檢測(cè)或傳輸?shù)男盘?hào)和數(shù)據(jù)可以通過F2812豐富的外設(shè)接口直接輸入,并且可以根據(jù)實(shí)際需要由DSP芯片對(duì)其進(jìn)行預(yù)處理工作,然后傳輸至W5100芯片,完成網(wǎng)絡(luò)協(xié)議的處理,再通過自帶變壓器的RJ45網(wǎng)口傳至PC機(jī)。同理,由PC機(jī)發(fā)出的控制指令或是傳出的數(shù)據(jù),也可反方向地傳輸至DSP的信號(hào)和數(shù)據(jù)輸出端,實(shí)現(xiàn)了DSP嵌入式系統(tǒng)的網(wǎng)絡(luò)化數(shù)據(jù)采集與傳輸。JTAG接口用來根據(jù)具體要求燒寫程序到DSP內(nèi)部的Flash,外擴(kuò)RAM用于處理傳輸過程中的數(shù)據(jù),SD存儲(chǔ)卡用于存儲(chǔ)數(shù)據(jù),它們使得數(shù)據(jù)的處理變得更加靈活。網(wǎng)絡(luò)傳輸狀態(tài)指示燈反映了數(shù)據(jù)傳輸?shù)膶?shí)時(shí)狀態(tài)。
W5100與微處理器芯片的接口方式有3種:直接總線接口模式、間接總線接口模式和SPI模式。其中直接總線接口模式適用于大數(shù)據(jù)量傳輸?shù)那闆r;SPI模式的接口連線較少,適用于數(shù)據(jù)量不大,傳輸速率相對(duì)較低的情況;間接總線接口模式下的數(shù)據(jù)傳輸性能則介于它們兩者之間。在本系統(tǒng)中選用直接總線接口模式,以最大限度地提高數(shù)據(jù)的傳輸速率。
圖3為直接總線接口模式的硬件結(jié)構(gòu)框圖。通過譯碼電路將外擴(kuò)RAM和W5100映射到F2812的ZONE2區(qū),W5100占用從0X90000到0X98000共32K的地址空間。F2812和W5100的接口電平都是3.3 V,不需要電平轉(zhuǎn)換器,可以直接連接。F2812的GPIOA0作為W5100的復(fù)位信號(hào),兩者的讀寫信號(hào)線以及地址線和數(shù)據(jù)線直接相連,W5100的中斷信號(hào)線直接接入F2812的外部中斷XINTl。不難看出,該模式下硬件電路的設(shè)計(jì)相對(duì)簡(jiǎn)單,形式類似于DSP芯片外擴(kuò)RAM,只是增加了復(fù)位和中斷兩條控制線。就F2812而言,對(duì)W5100的操作與讀寫RAM一樣。
圖3中,W5100的公共寄存器用來設(shè)置W5100的工作模式、中斷向量、IP地址、網(wǎng)關(guān)地址、子網(wǎng)掩碼、物理地址、超時(shí)值等相關(guān)信息;套接字寄存器平均分為4部分,對(duì)4個(gè)獨(dú)立的網(wǎng)絡(luò)通道單獨(dú)設(shè)置;發(fā)送和接收數(shù)據(jù)緩沖區(qū)用來存放臨時(shí)數(shù)據(jù)。通過設(shè)置W5100內(nèi)部的控制寄存器,設(shè)計(jì)者完全可以像在局域網(wǎng)中配置IP地址一樣簡(jiǎn)單地配置設(shè)計(jì)的系統(tǒng),通過靈活創(chuàng)建和選擇TCP和UDP套接字(socket)來完成網(wǎng)上的數(shù)據(jù)交換。W5100支持多種網(wǎng)絡(luò)通信協(xié)議。本系統(tǒng)中采用TCP/IP協(xié)議的服務(wù)器模式,接收PC機(jī)的命令并執(zhí)行相應(yīng)的數(shù)據(jù)采集和傳輸工作。程序包括6個(gè)子模塊:初始化模塊、創(chuàng)建socket模塊、網(wǎng)絡(luò)連接模塊、數(shù)據(jù)發(fā)送模塊、數(shù)據(jù)接收模塊、關(guān)閉socket模塊。初始化模塊主要完成對(duì)DSP自身的初始化和對(duì)W5100的初始化。DSP的初始化任務(wù)主要是設(shè)置中斷和根據(jù)具體要求設(shè)定接口參數(shù)。W5100的初始化包括對(duì)網(wǎng)關(guān)、子網(wǎng)掩碼、IP地址、MAC地址的設(shè)置。
依托W5100完善的TCP/IP協(xié)議處理功能,使DSP在沒有操作系統(tǒng)的支持下接入Internet網(wǎng)絡(luò),具有簡(jiǎn)單、可靠、價(jià)格低廉等優(yōu)點(diǎn),具有非常好的應(yīng)用前景。當(dāng)然,W5100也可以與51、AVR、PIC、ARM等微控制器完美結(jié)合使用,快速提供穩(wěn)定可靠的網(wǎng)絡(luò)接入能力。目前,W5100在家庭網(wǎng)絡(luò)、串口轉(zhuǎn)以太網(wǎng)、并口轉(zhuǎn)以太網(wǎng)、安防設(shè)備、嵌入式服務(wù)器等方面都有了大量成熟的應(yīng)用,如機(jī)頂盒、數(shù)字多媒體設(shè)備、工業(yè)控制、網(wǎng)絡(luò)打印機(jī)、視頻監(jiān)控、網(wǎng)絡(luò)門禁以及工廠與建筑自動(dòng)化等等。速度更快,功能更強(qiáng)大的W5300也開始批量供貨,進(jìn)一步滿足對(duì)高速系統(tǒng)的需求。