999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于 uIP的通信路由控制器的設(shè)計(jì)

2010-09-13 03:44:32克磊陳小平
通信技術(shù) 2010年11期
關(guān)鍵詞:嵌入式

克磊, 陳小平

(蘇州大學(xué)電子信息學(xué)院,江蘇 蘇州 215006)

0 引言

隨著嵌入式系統(tǒng)的迅猛發(fā)展,越來越多的嵌入式裝置需要相互連接起來以更好的發(fā)揮作用,傳統(tǒng)的嵌入式裝置利用現(xiàn)場(chǎng)總線或其他特殊的協(xié)議實(shí)現(xiàn)相互通信[1]。然而,由于連通的有限性,這些網(wǎng)絡(luò)不能實(shí)現(xiàn)對(duì) Internet的無縫對(duì)接。設(shè)計(jì)的嵌入式網(wǎng)絡(luò)路由控制器以 ARM Cortex-M3微處理器LM3S6965為核心,利用其內(nèi)置以太網(wǎng)媒體訪問控制器,成功移植了 uIP協(xié)議棧,實(shí)現(xiàn)客戶端與服務(wù)器的 Internet的無縫連接。

1 通信路由控制器硬件設(shè)計(jì)

通信路由控制器設(shè)計(jì)框圖 1所示,目的是將 uIP協(xié)議棧移植到嵌入式系統(tǒng)中,使其能夠在通信雙方規(guī)定協(xié)議的基礎(chǔ)上,實(shí)現(xiàn)與綜合通信系統(tǒng)的網(wǎng)絡(luò)通信,并能通過操作按鍵控制綜合通信系統(tǒng)的工作模式,設(shè)置通信側(cè)路由。指示系統(tǒng)的工作狀態(tài),包括通信側(cè)連通狀態(tài),流量統(tǒng)計(jì)。

圖 1 通信路由控制器設(shè)計(jì)方案

1.1 以太網(wǎng)控制器

LM3S6965以太網(wǎng)控制器由一個(gè)完全集成的介質(zhì)訪問控制器(MAC)和網(wǎng)絡(luò)物理(PHY)接口器件組成[2]。以太網(wǎng)控制器遵循IEEE802.3規(guī)范,完全支持 10BASE-T和 100BASE-TX標(biāo)準(zhǔn)。MAC層和PHY層分別與ISO模型的第 2和第 1層相對(duì)應(yīng)。以太網(wǎng)控制器的基本接口是到 MAC層的一個(gè)簡(jiǎn)單總線接口。MAC層提供了以太網(wǎng)幀的發(fā)送和接收處理。MAC層還通過一個(gè)內(nèi)部的媒體獨(dú)立接口給 PHY模塊提供接口。PHY層負(fù)責(zé)與以太網(wǎng)的數(shù)據(jù)通信。以太網(wǎng)控制器基本結(jié)構(gòu)如圖 2所示。

圖 2 以太網(wǎng)控制器結(jié)構(gòu)

1.2 網(wǎng)絡(luò)隔離變壓器與ARM的連接

LM3S6965以太網(wǎng)控制器模塊遵循 10BASE-T/100BASETX IEEE802.3標(biāo)準(zhǔn),只需要一個(gè)雙路隔離變壓器就能與網(wǎng)絡(luò)相連[2]。這里采用了一款帶濾波功能的網(wǎng)絡(luò)隔離變壓器。

圖 3為網(wǎng)絡(luò)隔離變壓器的接口電路圖。圖中右側(cè)所標(biāo)TX+、TX-、RX+和 RX-引腳分別與網(wǎng)絡(luò)水晶頭連接;左側(cè)所標(biāo) TXOP、TXON、RXIP和 RXIN引腳分別接至 LM3S6965以太網(wǎng)控制器各數(shù)據(jù)通信端口,其中 TXOP和 TXON表示以太網(wǎng)控制器數(shù)據(jù)輸出差分信號(hào),RXIN和RXIP表示數(shù)據(jù)接收差分信號(hào);另外 PHY還支持 2個(gè) LED信號(hào),用來指示以太網(wǎng)控制器操作的各種狀態(tài),這兩個(gè)信號(hào)對(duì)應(yīng) LED0和 LED1引腳。

2 uIP協(xié)議棧的體系結(jié)構(gòu)

uIP是瑞典計(jì)算機(jī)科學(xué)研究所 Adam Dunkels開發(fā)的。uIP的體系結(jié)構(gòu)如圖 4所示,uIP處于網(wǎng)絡(luò)通信的中間層,其上層協(xié)議稱之為應(yīng)用程序,下層硬件和其它固件稱為網(wǎng)絡(luò)設(shè)備驅(qū)動(dòng)[3],此處由LM3S6965內(nèi)置以太網(wǎng)控制器構(gòu)成 ISO模型的物理層和數(shù)據(jù)鏈路層。這樣就屏蔽了下層硬件的處理細(xì)節(jié),為上層應(yīng)用提供一個(gè)統(tǒng)一的接口。在實(shí)際的應(yīng)用中用戶只要根據(jù)自己的需要編寫相應(yīng)的應(yīng)用程序來實(shí)現(xiàn)具體的應(yīng)用要求而不必過多地考慮硬件接口問題。

3 通信路由控制器軟件設(shè)計(jì)

通信路由控制器軟件設(shè)計(jì)的總體思想是:首先進(jìn)行系統(tǒng)初始化,包括 LM3S6965系統(tǒng)時(shí)鐘、IO端口、定時(shí)器、液晶以及看門狗等初始化工作;然后配置以太網(wǎng)控制器寄存器,編寫網(wǎng)絡(luò)設(shè)備驅(qū)動(dòng);其次移植uIP協(xié)議棧,運(yùn)用其豐富的接口函數(shù)處理數(shù)據(jù)包;最后根據(jù)功能需要編寫用戶應(yīng)用程序。

3.1 以太網(wǎng)控制器驅(qū)動(dòng)程序的編寫

圖 3 網(wǎng)絡(luò)隔離變壓器的接口電路

要使用以太網(wǎng)控制器,外設(shè)必須通過置位 LM3S6965的運(yùn)行模式時(shí)鐘選通控制寄存器 RCGC2的 EPHY 0和 EMAC0位來使能。然后,使用以下步驟來配置以太網(wǎng)控制器。

圖 4 uIP協(xié)議棧體系結(jié)構(gòu)

①編程管理分頻寄存器MACMDV在內(nèi)部 MII上獲得一個(gè) 2.5MHz的時(shí)鐘;

②編程單個(gè)地址 0寄存器 MACIA0和單個(gè)地址 1寄存器MACIA 1進(jìn)行地址過濾;

③使用值 0x16編程發(fā)送控制寄存器 MACTCTL,實(shí)現(xiàn)自動(dòng) CRC產(chǎn)生、填充和全雙工操作;

④使用值 0x08編程接收控制寄存器 MACRCTL來拒絕帶有壞 FCS的幀;

⑤通過置位 MACTCTL和MACRCTL寄存器的LSB來使能發(fā)送器和接收器。

圖 5為以太網(wǎng)初始化程序設(shè)計(jì)流程圖。

圖 5 以太網(wǎng)控制器初始化流程

以太網(wǎng)控制器發(fā)包過程為:發(fā)送一個(gè)幀,就使用數(shù)據(jù)寄存器 MACDATA將該幀寫入緩存 TX FIFO;然后置位發(fā)送請(qǐng)求寄存器 MACTR的NEWTX位啟動(dòng)發(fā)送過程;當(dāng) NEWTX位被清零后,TX FIFO就可用于下個(gè)幀的發(fā)送。

以太網(wǎng)控制器收包過程為:接收一個(gè)幀,就必須等到幀包數(shù)目寄存器MACNP的NPR域?yàn)榉橇阒?然后使用 MACDATA寄存器開始將幀從緩存RX FIFO中讀出;當(dāng)幀被讀取后,NPR域的值減 1;當(dāng)RX FIFO中沒有幀時(shí),NPR將讀出為零。

以太網(wǎng)控制器接收發(fā)送數(shù)據(jù)包流程如圖 6、圖 7所示。

圖6 以太網(wǎng)控制器接收數(shù)據(jù)包

3.2 uIP協(xié)議棧的數(shù)據(jù)包處理

圖 8詳細(xì)地描述了uIP是如何處理數(shù)據(jù)包。其中,宏定義UIP_CONNS表示同時(shí)開通的 TCP連接最大值;函數(shù) uip_arp_ipin()表示對(duì)即將到來的 IP包的 ARP處理;函數(shù) uip_arp_out()表示向外發(fā)送的 IP包的偽以太網(wǎng)報(bào)頭并確認(rèn)是否需要發(fā)送 ARP請(qǐng)求[4];函數(shù) EthernetPacketPut()表示通過 Ethernet MAC方式發(fā)送數(shù)據(jù)包。

圖8 uIP數(shù)據(jù)處理流程

3.3 應(yīng)用程序的設(shè)計(jì)

通信路由控制器作為客戶端與綜合通信系統(tǒng)服務(wù)器實(shí)現(xiàn)Internet無縫連接,基于 uIP協(xié)議,以IP數(shù)據(jù)包的格式與通信主機(jī)按照規(guī)定協(xié)議進(jìn)行定向網(wǎng)絡(luò)通信,所涉及的網(wǎng)絡(luò)數(shù)據(jù)主要分為服務(wù)器通信模塊各端口的狀態(tài)與流量信息,以及網(wǎng)絡(luò)路由控制器發(fā)送給服務(wù)器各通信端口的路由控制字。

通信路由控制器功能流程如圖 9、圖 10和圖 11所示。

圖 9 狀態(tài)監(jiān)控流程

圖10 手動(dòng)控制路由流程

圖 11 自動(dòng)分配路由流程

應(yīng)用程序?qū)IP協(xié)議棧作為一個(gè)主程序運(yùn)行在一個(gè)單系統(tǒng)任務(wù)中,主控制循環(huán)重復(fù)做兩件事,一是檢查從網(wǎng)絡(luò)中發(fā)過來的數(shù)據(jù)包,二是檢查周期計(jì)時(shí)是否發(fā)生。當(dāng)有網(wǎng)絡(luò)事件或計(jì)時(shí)事件發(fā)生時(shí),uIP會(huì)調(diào)用 UIP_APPCALL()對(duì)事件進(jìn)行處理[5]。為了將用戶的應(yīng)用程序掛接到uIP中,程序設(shè)計(jì)中將宏 UIP_APPCALL()定義成實(shí)際的應(yīng)用程序函數(shù)名 tcp_appcall()。

當(dāng)客戶端需要監(jiān)測(cè)服務(wù)器各端口狀態(tài)流量時(shí),必須先根據(jù)雙方規(guī)定協(xié)議調(diào)用 uip_send()接口函數(shù)定時(shí)發(fā)送請(qǐng)求命令字給服務(wù)器端,當(dāng)服務(wù)器收到請(qǐng)求后再以規(guī)定IP包格式返回包含流量信息數(shù)據(jù),應(yīng)用程序在 main函數(shù)對(duì)數(shù)據(jù)處理;當(dāng)網(wǎng)絡(luò)路由控制器需要對(duì)服務(wù)器各端口通信路由進(jìn)行手動(dòng)控制分配時(shí),同樣根據(jù)協(xié)議,結(jié)合按鍵發(fā)送相關(guān)控制字,通信主機(jī)根據(jù)控制字分配路由。

4 結(jié)語(yǔ)

通信路由控制器特點(diǎn)是直接利用LM3S6965內(nèi)置以太網(wǎng)控制器模塊,成功移植了精簡(jiǎn)TCP/IP協(xié)議uIP,并在此基礎(chǔ)上編寫控制通信路由的用戶應(yīng)用程序,使其構(gòu)成符合 TCP/IP通訊協(xié)議規(guī)范的4級(jí)層次結(jié)構(gòu),使嵌入式系統(tǒng)自己實(shí)現(xiàn)網(wǎng)絡(luò)通信的功能,從而能進(jìn)一步實(shí)現(xiàn)對(duì)網(wǎng)絡(luò)通信的控制。不僅為基于uIP協(xié)議棧的嵌入式網(wǎng)絡(luò)通信控制提供了一個(gè)切實(shí)可行的廉價(jià)解決方案,而且同樣適用于遠(yuǎn)程監(jiān)測(cè),如列車報(bào)站、報(bào)警裝置。

[1]彭少熙,孫政順,杜繼宏.家庭網(wǎng)絡(luò)中的嵌入式 Internet方案[J].電子技術(shù)應(yīng)用,2001,27(10):47-50.

[2]周立功.ARM Cortex-M3開發(fā)指南[M].廣州:廣州致遠(yuǎn)電子有限公司,2008.

[3]張永濤,黃丹丹,李歐.uIP協(xié)議分析及其應(yīng)用[J].信息工程大學(xué)學(xué)報(bào),2006,7(02):147-149.

[4]宋素萍,邵明省.基于AVR的VoIP數(shù)據(jù)傳遞設(shè)計(jì)[J].通信技術(shù),2008,41(09):218-220.

[5]吳志華,申功勛,唐李征,等.嵌入式GPS由GPRS接入Internet的實(shí)現(xiàn)[J].微計(jì)算機(jī)信息,2007,23(03):256-258.

猜你喜歡
嵌入式
Focal&Naim同框發(fā)布1000系列嵌入式揚(yáng)聲器及全新Uniti Atmos流媒體一體機(jī)
TS系列紅外傳感器在嵌入式控制系統(tǒng)中的應(yīng)用
電子制作(2019年7期)2019-04-25 13:17:14
基于嵌入式Linux內(nèi)核的自恢復(fù)設(shè)計(jì)
嵌入式系統(tǒng)通信技術(shù)的應(yīng)用
電子制作(2018年18期)2018-11-14 01:48:16
嵌入式PLC的設(shè)計(jì)與研究
電子制作(2018年16期)2018-09-26 03:27:18
搭建基于Qt的嵌入式開發(fā)平臺(tái)
基于嵌入式系統(tǒng)Windows CE的應(yīng)用程序開發(fā)
嵌入式單片機(jī)在電機(jī)控制系統(tǒng)中的應(yīng)用探討
電子制作(2017年8期)2017-06-05 09:36:15
嵌入式軟PLC在電鍍生產(chǎn)流程控制系統(tǒng)中的應(yīng)用
Altera加入嵌入式視覺聯(lián)盟
主站蜘蛛池模板: 婷婷色丁香综合激情| 欲色天天综合网| 国产精品久久国产精麻豆99网站| 欧美一级高清视频在线播放| 国产精品久久久久久久久kt| 国产精品99久久久久久董美香| 日本午夜视频在线观看| 免费一级全黄少妇性色生活片| AV无码无在线观看免费| 国产精品亚洲欧美日韩久久| 中文字幕在线永久在线视频2020| 午夜国产不卡在线观看视频| 国产美女91视频| 国产日韩精品一区在线不卡| 一区二区影院| 伦精品一区二区三区视频| 亚洲AV人人澡人人双人| 找国产毛片看| 成人一级免费视频| 麻豆国产精品一二三在线观看| 91成人在线观看| 成人在线观看不卡| 国产精品99久久久| 亚洲第一黄色网| 日本亚洲国产一区二区三区| 欧美v在线| 国产91无码福利在线| 黄色三级网站免费| 欧美一级大片在线观看| 97国产成人无码精品久久久| 99久视频| 久久精品丝袜| 亚洲不卡av中文在线| 99re精彩视频| 国产爽歪歪免费视频在线观看| 欧美国产在线一区| 国产三级精品三级在线观看| 女人18一级毛片免费观看| 秘书高跟黑色丝袜国产91在线| 国产主播一区二区三区| 成人va亚洲va欧美天堂| 国产精品欧美在线观看| 情侣午夜国产在线一区无码| 国产免费观看av大片的网站| 久久精品电影| 欧美日韩一区二区三| 久久动漫精品| 91成人在线观看| 精品免费在线视频| 99在线免费播放| 蜜臀AVWWW国产天堂| 无码'专区第一页| 国产老女人精品免费视频| 精品伊人久久久香线蕉| 午夜高清国产拍精品| 中文字幕2区| 91欧美在线| 日韩国产一区二区三区无码| 精品国产欧美精品v| 又爽又大又黄a级毛片在线视频 | 狠狠色综合网| 婷婷综合亚洲| 精品人妻无码区在线视频| 亚洲综合香蕉| 日韩av无码精品专区| 久久国产V一级毛多内射| 亚洲国产成人超福利久久精品| 91美女视频在线观看| 美女一区二区在线观看| 国产亚洲精品91| 国产日韩欧美精品区性色| 一区二区日韩国产精久久| 啊嗯不日本网站| 无码'专区第一页| 久久一级电影| 日韩成人在线网站| 亚洲欧美成人在线视频| 欧美人在线一区二区三区| 久久a毛片| 三上悠亚在线精品二区| 国产视频欧美| a毛片在线播放|