基于ARM9 AT91RM9200T的嵌入式網絡接口
其中,socket 層由專門用來處理Socket 的通用套接字管理軟件處理。Socket 為基于IP 的協議TCP 和UDP 管理傳輸端點。UDP(用戶數據報協議)是一個無連接協議, 傳輸UDP 包的時候,不關心是否它們安全到達了目的。而TCP(傳輸控制協議)是一個可靠的端對端協議。本系統采用可靠性連接的TCP網絡協議。
網絡程序是由客戶端和服務器端兩部分組成。服務器端建立步驟為socket-->bind-->listen-->accept。客戶端socket-->connect。Linux通過套結字socket和其他函數的調用進行網絡通訊。返回的文件描述符,可以看成普通文件的描述符。通過向描述符讀寫操作實現網絡的數據通訊,體現了linux 的設備無關性。以下是網絡程序部分函數:
3.2 Linux中網絡通信編程的實現
在編寫網絡應用程序時,需注意計算機中的數據存儲有兩種字節優先順序:高位字節優先和低位字節優先。在互聯網上,是以高位字節優先順序傳輸數據的。所以,對于在內部以低位字節優先方式存儲的數據想在互聯網上傳輸需要進行轉換。
下面給出部分Linux下網絡通信應用程序的源代碼實例。
其中,使用庫函數inet_pton()將輸入的字符串IP轉換為connect函數可識別的整數uiip。 本設計已在ARM9開發板上實現了基于嵌入式網關的嵌入式系統網絡通訊。它結合目前飛速發展的32位嵌入式技術,采用嵌入式Linux操作系統,源代碼開放,應用豐富,內嵌嵌入式Web服務器,用于遠程控制、設置、和監視設備的狀態。通過以太網實現嵌入式系統與網絡服務器的信息傳遞以及音頻、視頻等占用大量帶寬的數據的傳輸,將以前單片機時代的低速傳輸模式升級為使用100M帶寬的TCP/IP網絡進行通信。開發者只須根據實際情況編寫上層應用軟件,即可解決大多數的工控設備和通訊設備的網絡通訊問題,實現“嵌入式Internet”。 本文作者創新點:設計提出了基于ARM9的嵌入式網絡技術,采用嵌入式技術和Linux 實時多任務操作系統應用于遠程控制和監視等數據的網絡傳輸,能充分利用現有網絡硬件設施,節約了開發成本,縮短了開發周期。本設計模式是工業控制網絡通訊的一個發展趨勢。若現有煤礦監控系統采用本模式,項目經濟效益至少在30萬元以上。
4結束語
tcp/ip相關文章:tcp/ip是什么
評論