基于Cortex-M3內核處理器的嵌入式Web服務器設計
由于服務器端檢測的數據處在不停的變化之中,為使網頁的數據也能及時地更新,網頁程序初始化時,要顯示的數據都使用字符串標記暫時表示,在每次發送響應消息到端口前,再將網頁中定義字符串標記用當前設備的實際值替換。
本文引用地址:http://www.104case.com/article/92481.htm對LED的控制,網頁程序采用HTML語言的表單,HTTP協議請求方法采用POST。POST作為請求方法時,首先和Web服務器建立連接,成功后瀏覽器將HTML表單中的值發送給Web服務器。這種方式沒有字符長度的限制,表單數據是作為附加的文檔發送而不是作為URL的一部分發送。服務器程序通過判斷客戶的不同控制命令即時做出LED燈的開關響應。
在每次連接成功后,服務器端程序會返回以狀態碼200開頭的響應消息,消息的起始行為:HTTP/1.1 200 OK。當用戶請求一個服務器端不存在的文件時,服務器返回以狀態碼404開頭的響應消息。
圖6 控制網頁
結語
這種利用硬件實現TCP/IP協議的網絡芯片W5100及具有Cotex-M3內核的STM32處理器構成嵌入式Web服務器的方案性價比高。通過網絡,用戶在瀏覽器端可及時收到遠程現場傳感器采集的數據,遠程現場的開關狀態指示燈可實時地響應用戶的開關信號操作請求。測試表明該系統傳輸大塊數據文件的速率可達到100KBPS。為提高網絡資源的安全性,可采用AES(Advanced Encryption Standard,先進加密標準)等編碼機制來加密必須保護的私有數據。
參考文獻:
[1] YANG S,CHEN X,ALTY J L. Design issues and implementation of Internet-based process control,Control Engineering Practice。2003,11(6)
[2] W.RICHARD STEVENS(著),范建華等(譯). TCP/IP詳解 卷1:協議. 北京:機械工業出版社,2007
[3] ANDREW N.SLOSS, Dominic SYMES,CCHRIS WRIGHT(著),沈建華(譯). ARM嵌入式系統開發—軟件設計與優化. 北京:北京航空航天大學出版社,2005
[4] ST Corporation。STM32_Reference_Manual。2007.7
[5] WIZNET Corporation。W5100 Datasheet (V 1.1.6)。2008
評論