商鋪名稱:廈門光沃自動化設備有限公司
聯系人:吳(先生)
聯系手機:
固定電話:
企業郵箱:1878187406@qq.com
聯系地址:廈門市海滄區滄湖東一里海景奧斯卡
郵編:361000
聯系我時,請說是在線纜網上看到的,謝謝!
3UF7103-1BA00-0 自定義網絡協議
在嵌入式網絡系統中,可以使用TCP/IP協議,但不夠經濟。原因是TCP/IP協議過于龐大,過于復雜,以至于效率低下。一方面是嵌入式系統各單元內部CPU的處理速度受限;另一方面,在某些特定場合特定任務的應用環境中TCP/IP功能冗余,阻礙了硬件效能的發揮。為此,針對特定的應用,制定相應的自定義網絡協議,靈活方便,針對性強,經濟實用。
下面單從數據應用的角度,定義一個簡單、實用的以太網傳輸協議。
3.2 協議層次
系統參照ISO的OSI模型,采用縮減的網絡體系結構。如圖3所示,網絡體系結構分為3層:物理層、數據鏈路層和應用層。物理層規定網絡的拓撲形式及通信信號的電氣特性;數據鏈路層實現點到點的通信規程,完全執行IEEE802.3的CSMA/CD協議。
3.3 幀結構
以太網幀結構如下:
物理層的前同步碼(即物理幀前導符+物理幀界定符)8字節由硬件自動生成。除去這8個字節,將其余字段的長度加起來,可以得到以太網幀的長度為1 518字節,最小長度則為64字節;加上8字節的前同步碼,即可得到最小幀長度為576位。這樣長度的幀能夠保證所有沖突都可以檢測到。這是因為IEEE 802.3標準中,兩個站點的最遠距離小于2 500 m,由4個中繼器連接而成,其沖突窗口為2倍電纜傳播延遲加上4個中繼器的雙向延遲之和,合計為51.2μs。就10 Mbps以太網而言,這個時間段內等于發送64字節(即512位)的數據。
使用CSMA/CD作為一種訪問控制方式,意味著最短數據幀長度與網絡上最長傳輸延遲時間間隔有著密切的關系。要保證在發送過程中出現沖突時,沖突域內的所有結點都應該知道發生了沖突,以便采取適當的措施。這就需要最短數據幀長度必須大于網絡上的最長傳輸延遲時間間隔,再加上阻塞附加時間和同步延遲時間等。這就是IEEE 802.3標準中最短幀長度為64字節的由來。
其中應用層幀類型分為數據幀和數據確認幀兩種,具體結構如下:
由于數據幀長度可變,又由于數據確認幀的MAC層長度僅為18字節,故在網絡控制器初始化時須設置MAC層PAD填充功能(即MAC幀長度少于64字節時,網絡控制器自動將其填充至64字節后再交給物理層)。
自定義數據幀的預留管理單元還可以制定一些簡單的控制或管理信息幀,以便更好地擴充功能和組織軟件。限于篇幅,茲不贅述。如想連入Internet,需要在系統中加入一個能夠轉換本協議和TCP/IP協議的前端網關(實質上是一個交互翻譯的軟件系統)。
3.4 程序設計流程
本接口轉換器所要實現的功能是把從RS232串口接收到的串口數據轉換成以太網幀格式發送到以太網,并把從以太網上接收到的幀數據解包轉換到串口傳送。程序設計中包含初始化程序、主循環、串行接口程序和網絡通信接口程序。
程序運行首先進行初始化工作,包括初始化CS8900A、初始化串口和初始化一些參數,然后進入主循環。主循環內循環運行CS8900A中斷服務查詢程序和串口緩沖區查詢程序,若有CS8900A中斷申請,則中斷調用網絡通信接口程序;若串口緩沖區有數據,則中斷調用串行接口程序。流程如圖4所示。
3UF7103-1BA00-0
3UF7103-1BA00-0 IC693MDL753 IC693MDL754 IC693MDL760
IC693MDL916 IC693MDL930 IC693MDL931
IC693MDL940 IC693MDR390 IC693MLX000
IC693MSC301 IC693NIU004 IC693PBM200
IC693PBS201 IC693PCM300 IC693PCM301
IC693PCM311 IC693PIF301 IC693PIF350
IC693PIF400 IC693PRG300 IC693PTM100
IC693PTM101 IC693PWR321 IC693PWR322
IC693PWR324 IC693PWR328 IC693PWR330
IC693PWR331 IC693PWR332 IC693TCM302
IC693TCM303
IC697ACC621 IC697ACC624
IC697ACC644 IC697ACC700 IC697ACC701
IC697ACC702 IC697ACC715 IC697ACC720
IC697ACC721 IC697ACC722 IC697ACC723
IC697ACC724 IC697ACC726 IC697ACC727
IC697ACC728 IC697ACC729 IC697ACC730
IC697ACC732 IC697ACC735 IC697ACC744
IC697ACC775 IC697ACC800 IC697ACC801
IC697ACC802 IC697ACC803 IC697ACC804
IC697ACC805 IC697ACC820 IC697ACC821
IC697ACC822 IC697ADC701 IC697ADS701
IC697ALG230 IC697ALG234 IC697ALG320
IC697ALG324 IC697ALG440 IC697ALG441
IC697ALG444 IC697ALG445 IC697BEM711
IC697BEM713 IC697BEM721 IC697BEM731
IC697BEM733 IC697BEM741 IC697BEM761
3UF7103-1BA00-0