物聯網基于單片機的以太網終端(物聯網)_第1頁
物聯網基于單片機的以太網終端(物聯網)_第2頁
物聯網基于單片機的以太網終端(物聯網)_第3頁
物聯網基于單片機的以太網終端(物聯網)_第4頁
免費預覽已結束,剩余1頁可下載查看

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、基于單片機的嵌入式以太網控制終端設計摘要:基于單片機技術的以太網終端廣泛應用在各個領域,本文基于建榮ax2005phy 的解決方案,實現 arp 請求,以及 ping 命令。同時,本文詳細介紹以太網接口的硬件設計和通信電路的抗干擾設計。覆蓋單片機技術,通信技術,計算機網絡技術等多個知識領域。 關鍵詞:以太網協議; 信道編碼; tcp/ip 協議; 單片機;設計背景及設計意義 隨著單片機技術和嵌入式技術的廣泛應用, 以及通信技術的發展和計算機網絡的普及,人們提出了對基于嵌入式系統的網絡通信技術的應用需求。 嵌入式網絡通信系統將過去單一獨立的嵌入式系統組成一個網絡系統, 使得嵌入式系統不再是一個獨

2、立的個體,而是一個整體信息化網絡的一個部分。該技術廣泛應用在智能設備,信息化家電,智能管理設備,安防監控設備等領域。 嵌入式網絡系統具有以下特點:1,基于單片機系統。2,系統之間存在數據通訊。在嵌入式網絡系統的實現方案中,有基于 rs232/rs485 總線協議,can 總線協議,以太網協議,usb 總線協議等多種方式。其中基于以太網協議的實現方案中,具有成本低,安裝方便,通訊距離遠,兼容性好和平臺移植方便等多種優勢。該技術廣泛應用在以下領域。1, 實驗室管理監控系統 某生化實驗室需要建立一個實時監控系統,檢測實驗室人員出入,實驗結果數據,實驗室溫度濕度。該實驗室的儀器設備都有 rs232 接

3、口輸出打印,可以輸出到單片機。門禁和各種傳感器也接入單片機系統。 這時候單片機可以通過以太網把數據提交到實驗室的服務器上,服務器通過處理提交的數據,將控制命令通過以太網發給單片機,單片機再進行相應的操作。2,智能家居系統 現代家居系統中,由于需要寬帶接入,基本上所有住戶都有局域網接入。在住戶內部搭建局域網也很方便。鑒于以上情況,利用以太網實現智能家居網絡能夠實現。 住房內的家電和各種設施,可以接入內部以太網實現相互通信,或者與上位機實現通信。上位機可以被用戶遠程控制,對居室的家電和設施進行控制,達到對居室的溫度,光亮的調節,同時可以利用下位機(單片機)將室內監控系統的狀況傳到上位機,上位機通過

4、分析可以向主人或者相關部門報告火警或者匪警。3,信息化家電 傳統家電是一個獨立存在的系統, 電器與電器之間沒有絲毫聯系。在信息化家電系統中,所有信息化家電組成一個局域網絡系統,家電屬于該系統中一個部分。信息化家電系統中,比如電飯鍋,可以通過網絡遠程控制。假如用戶需要下班回家就能吃上飯,可以在下班前通過遠程控制協議給電飯鍋發出指令,保證下班回家時飯剛好煮好。二,設計實現方案理論 1,網絡協議簡介 四層以太網協議 網絡協議通常分不同層次進行開發,每一層分別負責不同的通信功能。一個協議族,比如tcp/ip,是一組不同層次上的多個協議的組合。tcp/ip通常被認為是一個四層協議系統,如圖可以看出這個四

5、層協議的構架,每一層負責不同的功能。 應用層 telnet、ftp和e-mail等 運輸層 tcp和udp 網絡層 ip、icmp和igmp 鏈路層 設備驅動程序及接口卡 表 1 以太網協議分層 鏈路層:有時也稱作數據鏈路層或網絡接口層, 通常包括操作系統中的設備驅動程序和計算機中對應的網絡接口卡。 它們一起處理與電纜 (或其他任何傳輸媒介) 的物理接口細節。 網絡層:有時也稱作互聯網層,處理分組在網絡中的活動,例如分組的選路。在 tcp/i協議族中, 網絡層協議包括 i 協議 , (網際協議) icmp 協議(interne 互聯網控制報文協議),以及 igm 協議(internet 組管理

6、協議)。 運輸層:主要為兩臺主機上的應用程序提供端到端的通信。在 t c p / i p 協議族中,有兩個互不相同的傳輸協議: tcp(傳輸控制協議)和 udp(用戶數據報協議)。 tcp 為兩臺主機提供高可靠性的數據通信。它所做的工作包括把應用程序交給它的數據分成合適的小塊交給下面的網絡層, 確認接收到的分組, 設置發送最后確認分組的超時時鐘等。由于運輸層提供了高可靠性的端到端的通信,因此應用層可以忽略所有這些細節。而另一方面, udp 則為應用層提供一種非常簡單的服務。它只是把稱作數據報的分組從一臺主機發送到另一臺主機,但并不保證該數據報能到達另一端。任何必需的可靠性必須由應用層來提供。

7、這兩種運輸層協議分別在不同的應用程序中有不同的用途,這一點將在后面看到。 應用層:負責處理特定的應用程序細節。幾乎各種不同的 tcp/ip 實現都會提供下面這些通用的應用程序: telnet 遠程登錄。 ftp 文件傳輸協議。 smtp 簡單郵件傳送協議。 snmp 簡單網絡管理協議。假設我們以 ftp 服務的工作為例,4 層協議的工作原理如圖 圖 1-2 osi 七層協議 物理層 : osi 模型的最低層或第一層,該層包括物理連網媒介,如電纜連線連接器。物理層的協議產生并檢測電壓以便發送和接收攜帶數據的信號。在你的桌面 p c 上插入網絡接口卡,你就建立了計算機連網的基礎。換言之,你提供了一

8、個物理層。盡管物理層不提供糾錯服務,但它能夠設定數據傳輸速率并監測數據出錯率。網絡物理問題,如電線斷開,將影響物理層。 數據鏈路層:osi 模型的第二層,它控制網絡層與物理層之間的通信。它的主要功能是如何在不可靠的物理線路上進行數據的可靠傳遞。 為了保證傳輸, 從網絡層接收到的數據被分割成特定的可被物理層傳輸的幀。幀是用來移動數據的結構包,它不僅包括原始數據,還包括發送方和接收方的網絡地址以及糾錯和控制信息。其中的地址確定了幀將發送到何處,而糾錯和控制信息則確保幀無差錯到達。數據鏈路層的功能獨立于網絡和它的節點和所采用的物理層類型,它也不關心是否正在運行 word、 excel 或使用 int

9、ernet 。有一些連接設備,如交換機,由于它們要對幀解碼并使用幀信息將數據發送到正確的接收方, 所以它們是工作在數據鏈路層的。 網絡層:osi 模型的第三層,其主要功能是將網絡地址翻譯成對應的物理地址,并決定如何將數據從發送方路由到接收方。網絡層通過綜合考慮發送優先權、網絡擁塞程度、 服務質量以及可選路由的花費來決定從一個網絡中節點 到另一個網絡中節點 的最佳路徑。 由于網絡層處理路由, 而路由器因為即連接網絡各段,并智能指導數據傳送,屬于網絡層。在網絡中,“路由”是基于編址方案、使用模式以及可達性來指引數據的發送。 傳輸層:osi 模型中最重要的一層。傳輸協議同時進行流量控制或是基于接收方

10、可接收數據的快慢程度規定適當的發送速率。除此之外, 傳輸層按照網絡能處理的最大尺寸將較長的數據包進行強制分割。例如,以太網無法接收大于 1500 字節的數據包。發送方節點的傳輸層將數據分割成較小的數據片,同時對每一數據片安排一序列號, 以便數據到達接收方節點的傳輸層時,能以正確的順序重組。該過程即被稱為排序。 工作在傳輸層的一種服務是 tcp/ip 協議套中的 tcp(傳輸控制協議) ,另一項傳輸層服務是 ipx/spx 協議集的 spx(序列包交換) 。 會話層:負責在網絡中的兩節點之間建立和維持通信。 會話層的功能包括:建立通信鏈接,保持會話過程通信鏈接的暢通,同步兩個節點之間的對 話,決

11、定通信是否被中斷以及通信中斷時決定從何處重新發送。你可能常常聽到有人把會話層稱作網絡通信的“交通警察”。當通過撥號向你的 isp(因特網服務提供商)請求連接到因特網時,isp 服務器上的會話層向你與你的 pc 客戶機上的會話層進行協商連接。若你的電話線偶然從墻上插孔脫落時, 你終端機上的會話層將檢測到連接中斷并重新發起連接。會話層通過決定節點通信的優先級和通信時間的長短來設置通信期限 表示層:應用程序和網絡之間的翻譯官,在表示層,數據將按照網絡能理解的方案進行格式化;這種格式化也因所使用網絡的類型不同而不同。表示層管理數據的解密與加密,如系統口令的處理。例如:在 internet 上查詢你銀行

12、賬戶,使用的即是一種安全連接。你的賬戶數據在發送前被加密,在網絡的另一端,表示層將對接收到的數據解密。除此之外,表示層協議還對圖片和文件格式信息進行解碼和編碼。 應用層:負責對軟件提供接口以使程序能使用網絡服務。術語“應用層”并不是指運行在網絡上的某個特別應用程序 ,應用層提供的服務包括文件傳輸、文件管理以及電子郵件的信息處理。 兩種協議對應關系 我們可以看到,以太網網協議屬于 osi 協議中的部分,其中 osi 協議最重要的就是多了物理層,它是以太網設備通信的信道部分。鏈路層負責提供通信的時須,而以太網信號在信道中的傳遞全靠物理層。 2,常用實現方案選型 嵌入式以太網終端實現方案有多種,但其

13、共同點都是單片機網絡芯片。主要是兩種方案:單片機mac 和單片機phy。 mac 是 media access control 的縮寫,即媒體訪問控制子層協議。該協議位于 osi 七層協議中數據鏈路層的下半部分, 主要負責控制與連接物理層的物理介質。 在發送數據的時候,mac 協議可以事先判斷是否可以發送數據,如果可以發送將給數據加上一些控制信息,最終將數據以及控制信息以規定的格式發送到物理層;在接收數據的時候,mac 協議首先判斷輸入的信息并是否發生傳輸錯誤,如果沒有錯誤,則去掉控制信息發送至 llc 層。以太網mac 由 ieee-802.3 以太網標準定義。 phy phy 是位于 os

14、i 七層協議中的物理層, 在發送數據的時候, 收到 mac 過來的數據(對phy 來說,沒有幀的概念,對它來說,都是數據而不管什么地址,數據還是 crc),每 4bit就增加 1bit 的檢錯碼,然后把并行數據轉化為串行流數據,再按照物理層的編碼規則把數據編碼,再變為模擬信號把數據送出去。收數據時的流程反之。 單片機mac 典型方案為單片機rtl8019 的方案。 rtl8019as 是高度集成以太網控制器, 它能夠簡單的解答即插即用 ne2000 兼容適配器,這種適配器具有二重和功率下降特性。 通過三電平控制特性,rtl8019as 是已制的對網絡設備 green pc 理想的選擇。全二重功

15、能能夠模擬傳播和接收在雙絞線到全二重以太網交換機。這個特性不僅強帶寬從 10 到 20mbps, 而且避免了由于以太網頻道爭奪特性導致的讀出多路存取協議的問題。微軟公司的即插即用功能能減輕用戶較差的營業收入而注意適配器資源,如 irq輸入輸出,和存儲器地址等等。然而,為了特殊的應用而得不到即插即用功能的兼容性,rtl8019as 支持 jumper 和 jumperless 選項。 為了提供完全解決即插即用方案,rtl8019as 在集成 10baset 收發器,bnc和 aui 接口之間的自動檢測功能。 8 此外, 條 irq 總線和 16 條基本地址總線為大資源情況下提供了寬松的環境。 r

16、tl8019as 支持 16k,32k,和 64k 字節 brom 和閃存接口。它仍然提供頁面模式功能,這種功能能支持在僅 16k 字節內存系統空間下的 4m 字節的 brom.此外,brom 的無用命令被用來釋放 brom 內存空間。rtl8019as 用 16k 字節 sram 設計在單片芯片上,它的設計不僅提供了更多友好的功能,而且節省了 sram 存儲資源。 單片機phy 典型方案為單片機rtl8201, rtl8201 具有成本低, 速度快(支持 100m bps)等優點。 rtl8201bl 是一個單端口的物理層收發器, 它只有一個 mii/sni(媒體獨立接口/串行網絡接口)接口

17、。它實現了全部的 10/100m 以太網物理層功能,包括物理層編碼子層(pcs),物理層介質連接設備(pma),雙絞線物理媒介相關子層(tp-pmd),10base-tx 編解碼和雙絞線媒介訪問單元(tpmau)。 pecl 接口支持連接一個外部的 100base-fx 光纖收發器。這款芯片使用先進的 cmos 工藝制作以滿足低壓低功耗的需求。 rtl8201bl 可以在 nic, mau,cnr,acr,以太網 hub,或以太網交換機中使用。另外,它也可以用于任何有以太網 mac 并且需要一個物理上的雙絞線連接或一個光纖 pecl 接口以連接一個外部的 100base-fx 光纖收發器模塊的

18、嵌入式系統。 mii 接口 mii 即媒體獨立接口,它是 ieee-802.3 定義的以太網行業標準。它包括一個數據接口,以及一個 mac 和 phy 之間的管理接口。 數據接口包 括分別用于發送器和接收器的兩條獨立信道。每條信道都有自己的數據、時鐘和控制信號。mii 數據接口總共需要 16 個信號。管理接口是個雙信號接口:一個是 時鐘信號,另一個是數據信號。通過管理接口,上層能監視和控制 phy。 management interface 只有兩條信號線。 configuration and status data mii theis written/read to/from the phy

19、 via the mdio signal. mii 標準接口 用于連快 fast ethernet mac-block 與 phy。 “介質無關”表明在不對 mac硬件重新設計或替換的情況下,任何類型的 phy 設備都可以正常工作。在其他速率下工作 、 ( 和的與 mii 等效的接口有: (10m 以太網) gmii gigabit 以太網) xaui 10-gigabit aui (以太網) 。 我們使用了珠海建榮集成(appotech)的 ax2005 單片機rtl8201 的方案。 ax2005 是一種國產的基于 8051 內核的 otp 單片機,具有兩個 dptr 地址指針,內部集成了

20、部分擴展 sram,程序存儲器與數據存儲器地址可以交叉訪問。該單片機大多數指令都在一個時鐘周期內完成,并且集成了 dsp mac(乘加器),可用于數字信號處理。 ax2005 具有 gpsi 接口,可以工作在 mii 兼容模式下,實現以太網 mac 功能,并且工作于 dma 模式。單片機性能可以達到 100mips,集成 32kb sram,并帶有硬件 crc 模塊,可方便的用于以太網數據封裝的處理。所以該單片機非常適合用于以太網終端的應用。該單片機的功能參見附表 13,系統設計與系統框圖 在基于 ax2005 單片機的以太網控制終端的方案中,以 ax2005 單片機為控制核心,單片機負責以下

21、工作:硬件系統部分的設計 1,在單片機內部開辟兩個儲存空間,分別用于發送和接受數據流。以太網封裝格式中,是按照 6 字節目的硬件地址,6 字節源地址,2 字節類型,461500 字節的數據,4 字節的crc 校驗碼組成。應此,每個空間大小應該設置為 1518 字節。單片機訪問這兩個空間,發送數據時,將相應協議的報頭和報文填入對應的位置,再將空間內的整個數據發送出去;接受數據時,單片機訪問相應協議的報頭位置,判斷收到數據報的類型,再處理相應的報文。 圖 2-1 2,單片機利用 mii 接口與 phy 連接,mac 協議由單片機提供。單片機內部產生 mac地址。以太網通信最終實質是以太網設備訪問對

22、方的 48 位 mac 地址。建榮的 ax2005 單片機沒有專門的符合 ieee802.3 標準的 mii 接口,而是 gpsi(通用串行接口)工作在 mii模式下。由于 ax2005 的 mii/gpsi 接口支持 dma 工作模式,并內部集成有 32kb sram,可以直接被 mii 接口控制器讀寫。因此,在該方案中使用 dma 模式,mcu 只往緩沖區中讀寫數據,mii 控制器會自動通過 dma 將緩沖區的數據發到以太網,或者將以太網的數據收到緩沖區中,供 cpu 處理。 3,單片機利用 uart 接口,通過 rs23 轉換器,在單片機收到以太網數據包時,通過串口,將收到的數據打印到顯

23、示屏上。或者通過串口將數據發到單片機,再轉發到以太網。 圖 2-2ieee-802.3 規范的以太網接口相關介紹 ethernet 的接口實質是 mac 通過 mii 總線控制 phy 的過程。 mac 是 media access control 的縮寫,即媒體訪問控制子層協議。該協議位于 osi 七層協議中數據鏈路層的下半部分, 主要負責控制與連接物理層的物理介質。在發送數據的時候,mac 協議可以事先判斷是否可以發送數據, 如果可以發送將給數據加上一些控制信息,最終將數據以及控制信息以規定的格式發送到物理層;在接收數據的時候,mac 協議首先判斷輸入的信息并是否發生傳輸錯誤,如果沒有錯誤

24、,則去掉控制信息發送至 llc 層。以太網 mac 由 ieee-802.3 以太網標準定義。 miimedia independent interface即媒體獨立接口 “媒體獨立”表明在不對 mac 硬件重新設計或替換的情況下,任何類型的 phy 設備都可以正常工作。包括分別用于發送器和接收器的兩條獨立信道。每條信道都有自己的數據、時鐘和控制信號。mii 數據接口總共需要 16 個信號,包括 tx_er,txdlt3:0gt,tx_en,tx_clk,col,rxdlt3:0gt,rx_ex,rx_clk,crs,rx_dv 等。 mii 以 4 位半字節方式傳送數據雙向傳輸, 時鐘速率

25、25mhz。 其工作速率可達 100mb/s。mii 管理接口是個雙信號接口,一個是時鐘信號,另一個是數據信號。通過管理接口,上層能監視和控制 phy。其管理是使用 smi(serial management interface)總線通過讀寫 phy的寄存器來完成的。phy 里面的部分寄存器是 ieee 定義的,這樣 phy 把自己的目前的狀態反映到寄存器里面,mac 通過 smi 總線不斷的讀取 phy 的狀態寄存器以得知目前 phy的狀態,例如連接速度,雙工的能力等。當然也可以通過 smi 設置 phy 的寄存器達到控制的目的,例如流控的打開關閉,自協商模式還是強制模式等。不論是物理連接的

26、 mii 總線和smi 總線還是 phy 的狀態寄存器和控制寄存器都是有 ieee 的規范的, 因此不同公司的 mac和 phy 一樣可以協調工作。 當然為了配合不同公司的 phy 的自己特有的一些功能, 驅動需要做相應的修改。 ieee802.3 標準定義的以太網工作方式如下:ieee802.3 中定義的介質獨立接口mii主要用來連接介質訪問控制子層mac和物理層phy目的是使不同的物理層能夠使用統一的接口連到 mac 層即物理層對 mac 層是透明的。 該接口可用于直接連接 mac 與 phy芯片也可連接分別裝有 mac 和 phy 的兩塊印制板此外還可以通過一段電纜連接裝有mac 和 p

27、hy 的設備。這一接口支持 10mbps 和 100mbps 兩種速率而且兩種速率實現的功能相同其區別只是工作頻率不一樣。介質獨立接口由 18 根信號線組成其中發送方向 7 根txdlt3:0gt、tx en、tx clk、tx er接收方向 7 根rxdlt3:0gt、rx dv、rx clk、rxer此外還有載波偵聽crs、沖突檢測col和串行管理通道mdc、mdio信號。發送時鐘tx clk和接收時鐘rx clk一般由 phy 提供本文還將提出一種由另一端 mac 或外界提供標準時鐘的設計方案根據數據率 10mpbs/100mbps 選擇 2.5mhz 或 25mhz 時鐘且不論有無有效數據收發時鐘一直被正常提供。在發送方向當介質訪問控制子

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論