修建新+韓洪濤
【摘要】 隨著物聯網時代的到來,嵌入式技術和網絡技術已完全融合?;趩纹瑱C和以太網的嵌入式聯網模塊可以將現有設備快速方便地接入網絡,解決了嵌入式設備與以太網絡的連接問題,從而實現遠程控制、遠程數據通信等功能。設計包括三部分,分別是硬件設計、網卡驅動程序和精簡協議棧UIP的嵌入。
【關鍵字】 單片機 以太網 精簡協議棧
Embedded Network Module Design Based on MCU and Ethernet
Xiu Jianxin,Han Hongtao East University of Heilongjiang, Computer Science and Electrical Engineering Department
Abstract:With the coming of Internet of things,embedded technology and network technology already complete fusion.The embedded network module based on MCU and Ethernet can quickly and easily access network thought the existing equipment,and solve the connection problem of embedded devices and Ethernet, so as to realize remote control, remote data communication and other functions.The design includes three parts, which are the hardware design, the driver program of the network card driver and the UIP of the protocol stack.
Keywords:MCU;Ethernet; UIP
基于單片機和以太網的嵌入式聯網模塊采用串口連接方式,能夠實現即插即用,使用方便。本設計采用單片機、網卡控制器等硬件,通過軟件編程實現了網卡的驅動和精簡的協議棧UIP的嵌入[1]。從而實現了以太網的接入,達到了低成本、高可靠連接網絡的目的。本設計包括三部分,具體內容如下。
一、硬件設計
嵌入式聯網模塊的硬件設計是整個聯網模塊的基礎,主要涉及到單片機和網卡控制器接口設計[2]。硬件采用了8位單片機、以太網控制器芯片Realtek 8139C/D、網絡變壓器、地址鎖存器、外部RAM、串行EEPROM和串口芯片MAX232。硬件設計的電路比較簡單,器件價格也較低廉,達到了低成本的目的。具體的硬件設計圖如下圖1所示。
二、網卡驅動程序設計
網卡驅動程序包括網卡芯片的初始化、報文發(fā)送和報文接收三部分[2]。Realtek 8139C/D的初始化主要是上電啟動芯片后設置相關的寄存器,寄存器主要包括指針位置、地址寄存器、發(fā)送寄存器、接收寄存器、數據寄存器和中斷屏蔽寄存器等。報文發(fā)送包括緩沖區(qū)選定、設置報文長度、復制數據和發(fā)送報文等步驟。報文接收包括到達判斷、數據校驗、接收數據和協議解析等步驟。報文發(fā)送和接收過程如圖2和圖3所示。
三、精簡協議棧UIP的嵌入
TCP/IP協議的程序流程復雜、容量大、穩(wěn)定性差,不適合嵌入式系統的開發(fā)。因此先將TCP/IP協議進行簡化,實現ARP、IP、ICMP和TCP協議的簡化。然后將精簡協議棧UIP嵌入到單片機中[3],步驟如下。
(1)將UIP協議棧的代碼架構文件,保存在默認目錄中。(2)網卡驅動程序的初始化、報文發(fā)送和報文接收程序的設計。(3)ARP和TCP定時器程序的設計。(4)UIP初始化文件的配置。(5)主程序完成以上程序的調用。
四、結論
基于單片機和以太網的嵌入式聯網模塊完成了硬件的設計、驅動程序的設計和UIP精簡協議棧的嵌入三部分內容,實現了單片機接入以太網,進而實現了遠程數據的控制和通信。
該聯網模塊結構簡單、造價低廉、穩(wěn)定性好、使用方便,具有廣泛的應用價值。
參 考 文 獻
[1]吳強.基于單片機的以太網嵌入式控制器設計[J].《微計算機信息》, 2008, 24(8): 55-56
[2]宋有泉.嵌入式PCI網卡驅動程序的設計與優(yōu)化 [J]. 《計算機工程》, 2007, 33(2): 264-266
[3]李偉勤. UIP協議棧在CC2430芯片上的移植研究[J].《微計算機信息》, 2012,25 (9): 50-51