基于單片機的試驗站遠程監控系統網絡接口
以太網控制器的外圍布線還包括RJ45接口以及LED指示燈的連接,其具體的連接原理圖如圖2所示。
圖2 以太網芯片RTL8019AS外圍電路原理圖
③ 單片機與RTL8019AS的連接
本設計中采用跳線方式,將65腳JP接高電平當系統上電復位后,在RSTDRV下降沿,8019AS將讀入各個跳線引腳的狀態,寫入系統配置寄存器中,作為系統默認的初始配置。
各跳線引腳連接:RQS0~IRQS2(78~80腳)為中斷口,本設計中采用查詢方式,所以中斷口選擇沒有影響;IOS0~IOS3(81、82、84、85腳)為I/O基地址選擇,用于選擇I/O口的起始地址,要使其全部置低電平,則起始地址從300H開始,地址總線連接必須與此相一致;PL0、PL1(74、77腳)為網絡介質類型選擇,本系統中設為“00”,表示進行連接檢測;BS0~BS4(67、69、71、72腳)用于BROM容量與基地址選擇,本系統中沒有連接BROM,只要將BS4、BS3設為低電平,就可禁止BROM。
由上所述可知,各跳線引腳全部配置為低電平即可。芯片引腳內部接有100kΩ的下拉電阻,所以當引腳懸空時,本身就默認為低電平,因而也可將這些引腳懸空,在相關電路設計和軟件設計中應注意要與這些跳線引腳配置相一致。
數據與地址總線連接:采用8位數據總線,將96腳IOCS16B接27kΩ下拉電阻即可使8019AS工作于8位數據總線方式。系統數據總線與SD0~SD7連接。8019AS內部寄存器和存儲器的讀寫地址為00H~1FH,只需要5根地址線就能進行選擇。但在系統跳線配置中已將起始地址設為300H,因而在地址選通時,還必須令地址線SA8、SA9為“1”。
其他還包括對晶振的連接,以及電源和地的連接。
2 TCP/IP協議棧的總體設計
該網絡的最終目的是實現網絡節點上任意兩點之間的數據通信,但是設計一個對所有可能的通信模式均是有效的、完整的、全面的協議是不可能實現的,于是將通信問題劃分成小塊,并為每個小塊設計單獨的協議,這樣使得每種協議變得容易設計、分析、執行和測試。一方面,每種協議應該處理其他協議沒有處理的通信問題,以免重復工作。另一方面,設計的協議應該能夠共享數據結構和信息,以提高執行效率。當然最重要的是各個協議之間能夠很好的協同工作,不能將每種協議設計成孤立的協議,這就需要將他們設計成一個相互支持、相互補充的系統,系統中的每種協議解決一部分通信問題,而所有的協議便能解決所有可能的網絡通信問題。
本系統網絡接口采用以太網接口,所以協議棧遵循TCP/IP模型來設計。考慮到系統的程序空間極為有限,所以設計時對標準協議棧進行了簡化,通過選擇合適的協議,可以降低對處理器硬件資源的需求。例如,由于對可靠性要求較高,可以只選擇使用TCP協議,而不使用不可靠的UDP協議。另外,對于己經選擇使用的協議,在具體實現時也進行了適當的簡化,保留其中必須具備的部分,以節約程序空間和執行時間。同時保證系統的可靠性與安全性,遵循分層設計思想和模塊化設計方法,各協議由對應的模塊實現,模塊對外提供接口函數供主程序調用,精簡的TCP/IP協議棧如圖3所示。
圖3 TCP/IP協議棧
網絡接口層是TCP/IP模型的最底層,由RTL8019AS的驅動程序來完成基本功能。RTL8019AS的驅動程序負責將單片機傳輸到Internet上的數據封裝成以太網數據包的格式發送,以及將網絡上傳來的數據包進行分析使其進入上一層的協議處理程序。
網絡層的功能則由ARP(地址解析協議)、IP(網際協議)和ICMP(因特網控制報文協議)協議共同完成。ARP協議能夠判斷數據幀中的目的地址是否與本地IP地址相同,如果相同則接收數據幀,否則將數據幀拋棄。而IP是TCP/IP協議棧最為核心的協議,所有的網絡層和運輸層的數據都是以IP數據報格式傳輸。ICMP允許主機或路由器報告差錯情況和提供有關異常情況的報告。
圖4 數據的封裝過程
系統需要傳輸的數據通過在每個協議層添加頭部信息,最后封裝成為以太網數據包,在物理網絡上進行傳輸,數據的封裝過程如圖4所示。
結論
對于工業控制領域,嵌入式Internet設備將測控網與Internet互連,由此實現測控網和信息網的統一。在這樣構成的網絡中,傳統儀器設備充當著網絡中獨立節點的角色,信息可跨越網絡傳輸至所及的任何領域,實時、動態(包括遠程)的在線測控成為現實。
評論