《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 其他 > 业界动态 > 基于硬件协议栈W5100的图像采集传输系统

基于硬件协议栈W5100的图像采集传输系统

2009-06-18
作者:王炳乂, 刘 爽, 张 伟,

??? 摘??要: 提出了一種基于硬件協(xié)議棧芯片W5100的遠程圖像采集傳輸系統(tǒng)。該系統(tǒng)使用STM32微控制器實現(xiàn)圖像數(shù)據(jù)的采集與圖像預(yù)處理,再利用W5100完備的以太網(wǎng)協(xié)議與靈活高速的傳輸能力,完成向遠程終端的圖像數(shù)據(jù)傳輸。?

??? 關(guān)鍵詞: W5100; TCP/IP; STM32

?

??? 近年來,在圖像采集傳輸系統(tǒng)中實現(xiàn)以太網(wǎng)互聯(lián)正在成為研究和應(yīng)用的熱點。在這種潮流的推動下,研究人員提出了許多解決方案:一種方案是在系統(tǒng)中植入具有TCP/IP協(xié)議棧的嵌入式操作系統(tǒng),其缺點是開發(fā)周期長、難度大;另一種方案是采用第三方的以太網(wǎng)協(xié)議轉(zhuǎn)換設(shè)備,通過轉(zhuǎn)換設(shè)備通信,由轉(zhuǎn)換器完成數(shù)據(jù)封裝和協(xié)議轉(zhuǎn)換,其缺點是通信速率受限,系統(tǒng)無法對以太網(wǎng)進行控制。雖然上述做法在很多應(yīng)用中取得了不錯的效果,但都是以犧牲大量資源為代價的。而本文介紹的W5100硬件協(xié)議棧芯片則可以在占用極低系統(tǒng)資源的條件下快速完成網(wǎng)絡(luò)圖像傳輸與通信。?

1 芯片介紹?

??? 目前很多嵌入式網(wǎng)絡(luò)芯片是直接通過軟件實現(xiàn)的,但是由于網(wǎng)絡(luò)協(xié)議都比較大,寫入軟件后穩(wěn)定性欠佳,而且客戶時常會有新的需求,這種用軟件實現(xiàn)的方式很難滿足頻繁更新升級的要求。針對這種現(xiàn)狀,WIZnet公司的硬件協(xié)議棧芯片將網(wǎng)絡(luò)協(xié)議的處理獨立于系統(tǒng)處理器之外,以大規(guī)模集成電路方式硬件化通信協(xié)議棧,提供一種簡單、經(jīng)濟的高速連接互聯(lián)網(wǎng)上各種數(shù)字設(shè)備的解決方案[1]。?

??? 如圖1所示,W5100將網(wǎng)絡(luò)協(xié)議的處理分成一個由特定處理器執(zhí)行的控制部分和一個硬件線路部分,實現(xiàn)硬件化TCP/IP棧中的TCP、UDP、ICMP、IPv4、ARP、IGMP以及PPPoE協(xié)議,另加連接以太網(wǎng)協(xié)議中的數(shù)據(jù)控制及MAC協(xié)議。芯片內(nèi)含16 KB收/發(fā)緩沖存儲器,并且將10 M/100 Mb/s以太網(wǎng)MAC和PHY集成到自動MDIX。利用邏輯硬件實現(xiàn),使系統(tǒng)設(shè)計更加簡單、緊湊。W5100的性能和結(jié)構(gòu)特點如下:?

?

?

??? (1) 內(nèi)嵌10BaseT/100BaseT以太網(wǎng)物理層,理論線路傳輸率可達25 Mb/s;?

??? (2) 支持自動通信握手(全雙工和半雙工);?

??? (3) 支持自動MDI/MDIX,自動校正信號極性;?

??? (4) 支持ADSL連接(支持PPPoE協(xié)議中的PAD/CHAP認證模式);?

??? (5) 支持4個獨立端口同時運行;?

??? (6) 支持16 KB存儲器用于數(shù)據(jù)發(fā)送/接收緩存。?

??? W5100提供3種接口:直接并行總線、間接并行總線和SPI總線。使用W5100不需要考慮以太網(wǎng)的控制,只需要簡單的端口Socket編程,大大簡化了硬件電路設(shè)計,使控制器在沒有操作系統(tǒng)的支持下,真正實現(xiàn)了單芯片接入 以太網(wǎng)。應(yīng)用W5100于系統(tǒng)中可完全卸載網(wǎng)絡(luò)協(xié)議所需的負荷,減少軟件開發(fā)的開支,具有較短的開發(fā)周期與較強的工程彈性。?

2? 系統(tǒng)設(shè)計?

2.1 系統(tǒng)硬件設(shè)計?

??? 基于W5100的遠程圖像采集傳輸系統(tǒng)的硬件框架圖如圖2所示,本系統(tǒng)采用意法半導(dǎo)體公司的STM32F101R6作為MCU。STM32系列32位ARM微控制器的Cortex-M3內(nèi)核[2],是ARM公司為要求高性能(1.25 Dhrystone MIPS/MHz)、低成本、低功耗的嵌入式應(yīng)用而專門設(shè)計的內(nèi)核,提高了代碼密度的Thumb-2指令集,大幅度增強中斷響應(yīng),具有業(yè)界較優(yōu)的功耗水平。STM32在結(jié)合了高性能、低功耗和低電壓特性的同時,保持了高度的集成性能和簡易的開發(fā)特性。圖2中25 MHz晶振提供W5100的工作時鐘;EEPROM用于保存系統(tǒng)的網(wǎng)絡(luò)配置;RJ45接普通雙絞線,連接上位機。?

?

?

??? STM32與W5100之間采用W5100的Direct Bus I/F的工作方式,對物理層銜接則應(yīng)用標準MII接口,即采用15位的地址線和8位數(shù)據(jù)線, 以及/CS、/RD、/WR、/INT控制線。在硬件初始化時,W5100的各寄存器和接收/發(fā)送Buffer作為STM32的I/O空間與外掛Flash一起內(nèi)存映射。STM32對W5100的控制就是通過響應(yīng)W5100中斷,然后讀寫W5100的控制和狀態(tài)寄存器來完成:STM32解析W5100的Rx Buffer中的狀態(tài)包,當判斷出是上位機發(fā)送過來的采集命令時,立即給CCD發(fā)出一個控制命令開始采集,讀取A/D轉(zhuǎn)換器,經(jīng)過前期的圖像處理后,將圖像數(shù)據(jù)逐行高速存入外掛Flash中備份,然后把數(shù)據(jù)從Flash復(fù)制到W5100的Tx Buffer中。這樣,STM32的工作完成,緊接著W5100根據(jù)硬件化的TCP/IP協(xié)議把數(shù)據(jù)自動發(fā)送至上位機PC。?

2.2 系統(tǒng)固件設(shè)計?

??? W5100提供多種以太網(wǎng)協(xié)議,本系統(tǒng)主要使用TCP/IP協(xié)議。W5100提供了4個獨立的Socket通道,每個Socket工作于TCP/IP協(xié)議的C/S模式:在Server模式下,PC端發(fā)出連接請求,W5100響應(yīng)請求,建立連接,開始控制命令傳輸。在Client模式下,系統(tǒng)向PC發(fā)出連接請求,建立連接,開始圖像數(shù)據(jù)傳輸。?

??? 圖3為系統(tǒng)固件的流程圖。(1)進行系統(tǒng)硬件初始化,配置I2C總線和GPIO的間接總線。(2)針對W5100進行網(wǎng)絡(luò)設(shè)置:分配各Socket的工作模式、目標IP、PORT、相關(guān)Buffer的大?。辉O(shè)置源(本地)MAC、IP、GATEWAY、SUBNET和PORT。(3)建立Control Socket,工作于Server模式:該Socket處于Listen 狀態(tài),當偵聽到有上位機的Connect請求時,建立連接。STM32通過中斷觸發(fā)從W5100讀取控制字,根據(jù)控制字做出相應(yīng)的操作,開始圖像采集或關(guān)閉Socket。當圖像采集完畢后,建立Data Socket工作于Client模式,向上位機發(fā)送Connect請求建立連接。連接建立后,開始向上位機發(fā)送數(shù)據(jù),數(shù)據(jù)傳輸完畢后關(guān)閉Control 和Data Socket,完成此次TCP/IP通信。?

?

?

2.3 PC端應(yīng)用軟件設(shè)計?

??? PC端的應(yīng)用軟件基于VC6.0編寫[3],以豐富完備的按鈕和菜單來實現(xiàn)本系統(tǒng)的人機交換功能。軟件編寫的側(cè)重點在于顯示和數(shù)據(jù)處理方面,本文不做贅述。圖4為該軟件運行截圖。?

?

?

??? 本文提出了一種基于硬件協(xié)議棧芯片W5100的遠程圖像采集傳輸系統(tǒng)。本系統(tǒng)使用STM32微控制器實現(xiàn)圖像數(shù)據(jù)的采集與圖像預(yù)處理,再利用W5100支持的完善的以太網(wǎng)協(xié)議以及其靈活高速的傳輸能力,完成向遠程終端的圖像數(shù)據(jù)傳輸。本系統(tǒng)結(jié)構(gòu)緊湊,硬件電路設(shè)計簡潔明了;在固件方面,在沒有操作系統(tǒng)的支持下,真正實現(xiàn)了單芯片接入以太網(wǎng),并且開發(fā)了相應(yīng)的應(yīng)用軟件,使本系統(tǒng)具有直接的操作性和商業(yè)價值。?

參考文獻?

[1] WIZnet Co.,Inc.W5100 datasheet version 1.1.5[R],2006.?

[2] STMicroelectronics. STM32F101 user manual[R],2007.?

[3] 孫鑫, 余安萍. VC++深入詳解[M].北京:電子工業(yè)出版社,2006.

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經(jīng)濟損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。

相關(guān)內(nèi)容