嵌入式WEB傳感器的網(wǎng)絡(luò)化接口設(shè)計
發(fā)布時間:2007/8/30 0:00:00 訪問次數(shù):432
作者:盧偉國 楊本強
嵌入式WEB傳感器是在智能傳感器的基礎(chǔ)上發(fā)展起來的具有Internet功能的新型傳感器。其實質(zhì)是在傳統(tǒng)傳感器的基礎(chǔ)上實現(xiàn)TCP/IP網(wǎng)絡(luò)通信協(xié)議接口,將傳感器作為網(wǎng)絡(luò)節(jié)點直接與計算機網(wǎng)絡(luò)通信。它的組成主要有:敏感單元、智能處理單元和TCP/IP通信協(xié)議接口。
圖1為嵌入式WEB傳感器的體系結(jié)構(gòu)。傳統(tǒng)的傳感器在嵌入式WEB傳感器中只占一部分。核心部分是完成信號處理、數(shù)據(jù)交換和控制的嵌入式智能單元以及完成數(shù)據(jù)傳輸?shù)模裕茫校桑芯W(wǎng)絡(luò)接口。整個傳感器的工作機理是:傳感器將被測物理量轉(zhuǎn)換為電信號,通過A/D轉(zhuǎn)換為數(shù)字信號,經(jīng)過微處理器的數(shù)據(jù)處理 (濾波、校準)后將結(jié)果傳送給網(wǎng)絡(luò);與網(wǎng)絡(luò)的數(shù)據(jù)交換由基于TCP/IP協(xié)議的網(wǎng)絡(luò)接口模塊完成。嵌入式WEB傳感器的內(nèi)部存儲器存儲傳感器的物理特征,如偏移、靈敏度、校準參數(shù)等;微處理器實現(xiàn)數(shù)據(jù)的處理和補償以及輸出校準;TCP/IP協(xié)議實現(xiàn)傳感器的直接網(wǎng)絡(luò)連接。與傳統(tǒng)的傳感器相比,基于Internet的嵌入式WEB傳感器更加可靠、便宜,擴展性更好且可以在內(nèi)部直接對原始數(shù)據(jù)加工、處理,并通過Internet與外界進行數(shù)據(jù)交換。因而它具有微型化、網(wǎng)絡(luò)化和智能化。傳感器的網(wǎng)絡(luò)化接口實現(xiàn)了對Internet或以太網(wǎng)的互連以進行信息的發(fā)布和資源共享。其實現(xiàn)方式是嵌入式WEB傳感器研究的重點。
網(wǎng)絡(luò)化接口實現(xiàn)的關(guān)鍵在于TCP/IP通信協(xié)議的實現(xiàn)。TCP/IP通信協(xié)議的實現(xiàn)方法主要有:采用協(xié)議棧移植,針對嵌入式系統(tǒng),將TCP/IP協(xié)議棧移植到系統(tǒng)中,然后調(diào)用相關(guān)的API函數(shù)實現(xiàn)網(wǎng)絡(luò)通信;不采用移植方式,參照標準的TCP/IP協(xié)議精簡相應(yīng)的協(xié)議層,編寫相關(guān)的API函數(shù)完成簡易的TCP/IP通信;采用協(xié)議芯片,如W3100A芯片,該方法直接采用硬件方式實現(xiàn)TCP/IP協(xié)議,直接對芯片的寄存器進行設(shè)置,實現(xiàn)數(shù)據(jù)對網(wǎng)絡(luò)的傳送。本文著重探討采用W3100A芯片實現(xiàn)嵌入式WEB傳感器的網(wǎng)絡(luò)化接口的問題。
1 網(wǎng)絡(luò)化接口的實現(xiàn)
1.1 W3100A芯片及處理器對其訪問的實現(xiàn)
W3100A是一TCP/IP協(xié)議棧芯片,包含的各協(xié)議層有:TCP、IP、UDP、ICMP和以太網(wǎng)協(xié)議的數(shù)據(jù)鏈路DLC,以及MAC協(xié)議。其工作方式類似于Windows的Socket API。芯片的內(nèi)部結(jié)構(gòu)示意如圖2所示。
該芯片可選擇地支持Intel/Motorola MCU接口,另外還提供一個I2C接口給上層應(yīng)用層,一個MII接口給底層物理層。芯片支持全雙工模式,內(nèi)部帶有雙口的SRAM數(shù)據(jù)緩沖區(qū)。其封裝是64腳的LQFP。
芯片提供寄存器供MCU訪問,具體的寄存器分類如下:控制寄存器(命令、狀態(tài)及中斷);系統(tǒng)寄存器(網(wǎng)關(guān)地址、子網(wǎng)掩碼、IP地址等);用于數(shù)據(jù)收、發(fā)的指針寄存器;通道操作的通道寄存器。
比較重要的幾個寄存器如表1所示。
表1 寄存器功能和地址示意圖
控制寄存器C0_CR(通道0的命令寄存器),用于通道0套接字(Socket)的初始化、連接、關(guān)閉和數(shù)據(jù)收發(fā),其設(shè)置如下:
其中,Sys_init用于設(shè)置網(wǎng)關(guān)、子網(wǎng)掩碼以及IP地址等,1~6位用于通道0套接字的初始化、連接、斷開、監(jiān)聽以及數(shù)據(jù)收發(fā),相應(yīng)位在命令執(zhí)行后自動清除。通過套接字協(xié)議選擇寄存器C0_S0PR設(shè)置相應(yīng)的協(xié)議值確定套接字中選用TCP還是UDP。
芯片正常工作必須對其完成相應(yīng)的初始化。初始化主要是對必要的寄存器進行相應(yīng)的設(shè)置,這些寄存器包括:網(wǎng)關(guān)地址寄存器GAR、子網(wǎng)掩碼寄存器SMR、硬件地址寄存器SHAR以及IP地址寄存器SIPR等。上述寄存器被設(shè)置后通過執(zhí)行控制寄存器CR的0位Sys_init激活芯片。
1.2 硬件接口及其數(shù)據(jù)傳輸
‘該芯片提供了并口和串口兩種方式實現(xiàn)與MCU的通信。圖3為基于I2C的串口連接方式。其中MCU為傳感器中的處理器,以太網(wǎng)物理層設(shè)備選用RTL8201芯片。W3100A提供MII接口與RTL8201相連,其中引腳RX_CLK、RXDV、RXD[0:3]以及COL用于數(shù)據(jù)的接收,而TX_CLK、TXE、TXD[0:3]用于數(shù)據(jù)的發(fā)送。MCU中提供模擬的I2C接口與W3100A通信。I2C是串行通信總線方式,由數(shù)據(jù)線SDA和時鐘線SCL配合完成通信。
建立TCP連接的具體過程如圖
作者:盧偉國 楊本強
嵌入式WEB傳感器是在智能傳感器的基礎(chǔ)上發(fā)展起來的具有Internet功能的新型傳感器。其實質(zhì)是在傳統(tǒng)傳感器的基礎(chǔ)上實現(xiàn)TCP/IP網(wǎng)絡(luò)通信協(xié)議接口,將傳感器作為網(wǎng)絡(luò)節(jié)點直接與計算機網(wǎng)絡(luò)通信。它的組成主要有:敏感單元、智能處理單元和TCP/IP通信協(xié)議接口。
圖1為嵌入式WEB傳感器的體系結(jié)構(gòu)。傳統(tǒng)的傳感器在嵌入式WEB傳感器中只占一部分。核心部分是完成信號處理、數(shù)據(jù)交換和控制的嵌入式智能單元以及完成數(shù)據(jù)傳輸?shù)模裕茫校桑芯W(wǎng)絡(luò)接口。整個傳感器的工作機理是:傳感器將被測物理量轉(zhuǎn)換為電信號,通過A/D轉(zhuǎn)換為數(shù)字信號,經(jīng)過微處理器的數(shù)據(jù)處理 (濾波、校準)后將結(jié)果傳送給網(wǎng)絡(luò);與網(wǎng)絡(luò)的數(shù)據(jù)交換由基于TCP/IP協(xié)議的網(wǎng)絡(luò)接口模塊完成。嵌入式WEB傳感器的內(nèi)部存儲器存儲傳感器的物理特征,如偏移、靈敏度、校準參數(shù)等;微處理器實現(xiàn)數(shù)據(jù)的處理和補償以及輸出校準;TCP/IP協(xié)議實現(xiàn)傳感器的直接網(wǎng)絡(luò)連接。與傳統(tǒng)的傳感器相比,基于Internet的嵌入式WEB傳感器更加可靠、便宜,擴展性更好且可以在內(nèi)部直接對原始數(shù)據(jù)加工、處理,并通過Internet與外界進行數(shù)據(jù)交換。因而它具有微型化、網(wǎng)絡(luò)化和智能化。傳感器的網(wǎng)絡(luò)化接口實現(xiàn)了對Internet或以太網(wǎng)的互連以進行信息的發(fā)布和資源共享。其實現(xiàn)方式是嵌入式WEB傳感器研究的重點。
網(wǎng)絡(luò)化接口實現(xiàn)的關(guān)鍵在于TCP/IP通信協(xié)議的實現(xiàn)。TCP/IP通信協(xié)議的實現(xiàn)方法主要有:采用協(xié)議棧移植,針對嵌入式系統(tǒng),將TCP/IP協(xié)議棧移植到系統(tǒng)中,然后調(diào)用相關(guān)的API函數(shù)實現(xiàn)網(wǎng)絡(luò)通信;不采用移植方式,參照標準的TCP/IP協(xié)議精簡相應(yīng)的協(xié)議層,編寫相關(guān)的API函數(shù)完成簡易的TCP/IP通信;采用協(xié)議芯片,如W3100A芯片,該方法直接采用硬件方式實現(xiàn)TCP/IP協(xié)議,直接對芯片的寄存器進行設(shè)置,實現(xiàn)數(shù)據(jù)對網(wǎng)絡(luò)的傳送。本文著重探討采用W3100A芯片實現(xiàn)嵌入式WEB傳感器的網(wǎng)絡(luò)化接口的問題。
1 網(wǎng)絡(luò)化接口的實現(xiàn)
1.1 W3100A芯片及處理器對其訪問的實現(xiàn)
W3100A是一TCP/IP協(xié)議棧芯片,包含的各協(xié)議層有:TCP、IP、UDP、ICMP和以太網(wǎng)協(xié)議的數(shù)據(jù)鏈路DLC,以及MAC協(xié)議。其工作方式類似于Windows的Socket API。芯片的內(nèi)部結(jié)構(gòu)示意如圖2所示。
該芯片可選擇地支持Intel/Motorola MCU接口,另外還提供一個I2C接口給上層應(yīng)用層,一個MII接口給底層物理層。芯片支持全雙工模式,內(nèi)部帶有雙口的SRAM數(shù)據(jù)緩沖區(qū)。其封裝是64腳的LQFP。
芯片提供寄存器供MCU訪問,具體的寄存器分類如下:控制寄存器(命令、狀態(tài)及中斷);系統(tǒng)寄存器(網(wǎng)關(guān)地址、子網(wǎng)掩碼、IP地址等);用于數(shù)據(jù)收、發(fā)的指針寄存器;通道操作的通道寄存器。
比較重要的幾個寄存器如表1所示。
表1 寄存器功能和地址示意圖
控制寄存器C0_CR(通道0的命令寄存器),用于通道0套接字(Socket)的初始化、連接、關(guān)閉和數(shù)據(jù)收發(fā),其設(shè)置如下:
其中,Sys_init用于設(shè)置網(wǎng)關(guān)、子網(wǎng)掩碼以及IP地址等,1~6位用于通道0套接字的初始化、連接、斷開、監(jiān)聽以及數(shù)據(jù)收發(fā),相應(yīng)位在命令執(zhí)行后自動清除。通過套接字協(xié)議選擇寄存器C0_S0PR設(shè)置相應(yīng)的協(xié)議值確定套接字中選用TCP還是UDP。
芯片正常工作必須對其完成相應(yīng)的初始化。初始化主要是對必要的寄存器進行相應(yīng)的設(shè)置,這些寄存器包括:網(wǎng)關(guān)地址寄存器GAR、子網(wǎng)掩碼寄存器SMR、硬件地址寄存器SHAR以及IP地址寄存器SIPR等。上述寄存器被設(shè)置后通過執(zhí)行控制寄存器CR的0位Sys_init激活芯片。
1.2 硬件接口及其數(shù)據(jù)傳輸
‘該芯片提供了并口和串口兩種方式實現(xiàn)與MCU的通信。圖3為基于I2C的串口連接方式。其中MCU為傳感器中的處理器,以太網(wǎng)物理層設(shè)備選用RTL8201芯片。W3100A提供MII接口與RTL8201相連,其中引腳RX_CLK、RXDV、RXD[0:3]以及COL用于數(shù)據(jù)的接收,而TX_CLK、TXE、TXD[0:3]用于數(shù)據(jù)的發(fā)送。MCU中提供模擬的I2C接口與W3100A通信。I2C是串行通信總線方式,由數(shù)據(jù)線SDA和時鐘線SCL配合完成通信。
建立TCP連接的具體過程如圖
熱門點擊
- 嵌入式LwIP協(xié)議棧的內(nèi)存管理
- 基于I2S的USB聲卡系統(tǒng)設(shè)計
- 基于嵌入式Linux的BACnet控制器軟件
- 面向多媒體應(yīng)用的嵌入式Linux實時性研究
- RF功率MOSFET產(chǎn)品及其工藝開發(fā)
- TLC320AIC23在音頻處理中的應(yīng)用
- 基于嵌入式微處理器EP9315的二次開發(fā)技術(shù)
- 用GNU工具開發(fā)基于ARM的嵌入式系統(tǒng)
- 基于模型和產(chǎn)品代碼生成的汽車嵌入式系統(tǒng)設(shè)計
- 基于嵌入式Web的電子交警系統(tǒng)
推薦技術(shù)資料
- 電源管理 IC (PMIC)&
- I2C 接口和 PmBUS 以及 OTP/M
- MOSFET 和柵極驅(qū)動器單
- 數(shù)字恒定導(dǎo)通時間控制模式(CO
- Power Management Buck/
- 反激變換器傳導(dǎo)和輻射電磁干擾分析和抑制技術(shù)
- 多媒體協(xié)處理器SM501在嵌入式系統(tǒng)中的應(yīng)用
- 基于IEEE802.11b的EPA溫度變送器
- QUICCEngine新引擎推動IP網(wǎng)絡(luò)革新
- SoC面世八年后的產(chǎn)業(yè)機遇
- MPC8xx系列處理器的嵌入式系統(tǒng)電源設(shè)計
- dsPIC及其在交流變頻調(diào)速中的應(yīng)用研究