CAN總線的嵌入式Web服務器設計
②將服務器設為Listen監聽狀態,等待接收客戶端連接。用TCP API函數建立被動連接代碼如下:
TCPAppInit
Bank TCB_BANK
Mov tcbLocalPortLSB,#APPLET_PORT_LSB;設置TCP服務端口
Mov tcbLocalPortMSB,#APPLET_PORT_MSB
Jmp @TCPAppPassiveOpen;跳轉到TCP被動連接程序,進行端口偵聽
_TCPAppPassiveOpen
_bank TCP_BANK
mov tcpState,#TCP_ST_LISTEN
clr tcpUnAckMSB
clr tcpUnAckLSB
retp
③當TCP的狀態為established時,雙方連接建立,可以開始傳輸數據。此時產生新的套接字,用來管理遠端客戶機服務,原來的端口繼續用來監聽。
④數據傳輸包括數據接收和數據發送的兩問好。接收數據時,用TCPAppRxBytes()函數獲得接收到的數據字節數,根據得到的字節數多次調用TCPAppRxData()函數接收數據,在全部數據接收完畢后可以在TCPAppRxDone()函數中做相應的處理。發送數據時,首先調用函數TCPAppTxBHytes()設置要發送數據的字節數,根據此字節數調用TCPAppTxData()函數發送數據,全部數據發送完畢后調用TCPAppTxDone()函數確認。其中采集的動態數據保存在變量globTemp3中。
⑤當TCP狀態為closed時,服務器關閉連接,不再發送和接收數據。程序具體實現時,設定客戶端和服務器端連接建立后,服務器端即向客戶端發送數據。
3 結論
本文所設計的嵌入式Web服務器,采用改進的Web應用程序開發模式,用Java applet實現客戶端程序,不用在客戶端應用程序,方便用戶使用;能取代傳統的工控機和接口卡,實現現場設備數據直接上網,小巧輕便,成本低。
該Web服務器不僅可以廣泛應用于工業控制領域,實現小型工業監測系統網絡化,還可以實現智能儀器、智能園區、環境工程、植物工廠、工業制冷等方面的應用。
tcp/ip相關文章:tcp/ip是什么
評論