<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 手機與無(wú)線(xiàn)通信 > 設計應用 > 一種精簡(jiǎn)可靠的低成本嵌入式以太網(wǎng)接口設計

一種精簡(jiǎn)可靠的低成本嵌入式以太網(wǎng)接口設計

——
作者:北京交通大學(xué)電氣工程學(xué)院 張瑞瑞 北車(chē)集團電力牽引研發(fā)中心 馬晨普 時(shí)間:2007-01-02 來(lái)源:電子產(chǎn)品世界 收藏

摘要: 本文介紹了基于新型獨立控制芯片接口的軟硬件設計方法。

關(guān)鍵詞: ;;;

引言

當前,嵌入式設計人員在為遠程控制或監控設備提供接入時(shí),使用的以太網(wǎng)控制器都是專(zhuān)為個(gè)人計算機系統設計的,如RTL8019、DM9008、CS8900A 等。這些器件不僅接口電路復雜、體積較大,而且比較昂貴。 是Silabs于近期推出的一款獨立以太網(wǎng)控制器,它符合IEEE 802.3協(xié)議,支持10M以太網(wǎng)接入,而且僅需要很少的外部電路連線(xiàn)就可滿(mǎn)足絕大多數嵌入式以太網(wǎng)接口的設計要求,使得嵌入式以太網(wǎng)接口的設計大大簡(jiǎn)化,占板空間大大減小,系統開(kāi)發(fā)成本大大降低。
另外,該以太網(wǎng)控制器具有8位并行主機接口,可以為絕大多數微控制器或主處理器提供以太網(wǎng)通信功能。8位并行總線(xiàn)接口支持Intel和Motorola總線(xiàn)方式,可以使用復用或非復用方式尋址。這些功能加上相關(guān)處理器的協(xié)議棧,使得嵌入式應用系統的以太網(wǎng)接口實(shí)現變得極其簡(jiǎn)易。

硬件電路設計

系統的硬件電路示于圖1。CP2200的外圍電路比較簡(jiǎn)單。

I/O并行接口

CP2200的并行主機接口,支持Motorola 和 Intel兩種總線(xiàn)方式,且支持地址數據復用和非復用方式??梢酝ㄟ^(guò)將MUXEN和MOTEN引腳接地或拉高電平來(lái)實(shí)現對主機接口總線(xiàn)方式的配置。

以太網(wǎng)變壓器

要實(shí)現以太網(wǎng)接口,以太網(wǎng)變壓器是不可缺少的。在差分接收引腳(RX+/RX-)上,需要一個(gè)專(zhuān)用于10BASE-T 操作的1:1 脈沖變壓器。 在差分發(fā)送引腳(TX+/TX-)上,需要外接一個(gè)帶有中心抽頭的1:2.5 脈沖變壓器。變壓器應具有2kV 以上的電壓隔離性能,以防止靜電干擾。發(fā)送端需要兩個(gè)8W(精度為1%)的電阻和一個(gè)560pF 的電容與特定端相連,接收端需要一個(gè)100W電阻與特定端相連。
按照CP2200的要求,筆者采用的是PRJ系列的PRJ-010型變壓器。該變壓器集成了RJ-45接頭,在省去了不少連線(xiàn)的同時(shí)也提高了高頻信號傳輸的可靠性。

其他電路

LINK和ACT引腳輸出電平來(lái)驅動(dòng)LED,用來(lái)指示的連接和活動(dòng)狀態(tài)。

所有電源引腳都必須與同一個(gè)外部3.3V 電源相連。類(lèi)似的,所有參考地都應在外部連接到相同的接地點(diǎn)。每個(gè)VDD 和VSS 引腳都應連接一個(gè)0.1mF 的陶瓷旁路電容,該電容盡可能靠近引腳。

需要特別說(shuō)明的是,驅動(dòng)雙絞線(xiàn)接口需要相對高的電流,因此以太網(wǎng)的收發(fā)數據線(xiàn)應盡可能短,并且線(xiàn)徑適當加大以減少電阻損耗(為了保證數據的可靠傳輸,筆者的PCB電路板選擇了20mil的線(xiàn)徑)。

軟件設計

協(xié)議種類(lèi)繁多,相互之間交互作用復雜,在單片機上不可能實(shí)現所有協(xié)議,所以必須對協(xié)議棧進(jìn)行剪裁。結合系統的具體通信要求,筆者的系統最后只保留了TCP、UDP、IP、ICMP、ARP協(xié)議模塊。在協(xié)議棧程序的整體設計上,考慮到單片機的單任務(wù)執行方式很難發(fā)揮TCP/IP協(xié)議的特點(diǎn),我們采用了基于事件驅動(dòng)機制的TCP/IP協(xié)議棧的實(shí)現方法。該機制的引入,使得系統在保證具有高效的匯編語(yǔ)言代碼效率的同時(shí),實(shí)時(shí)響應性也得到了大幅提高。下面將具體闡述事件驅動(dòng)機制的特點(diǎn)和基于該機制的TCP/IP協(xié)議棧的實(shí)現。

事件驅動(dòng)機制

系統初始化完成后, 進(jìn)入事件循環(huán)體,不斷查詢(xún)的事件隊列是否有事件。一旦事件隊列非空,則讀取事件標志字,判斷事件類(lèi)型,而后調用對應事件處理子程序。處理子程序執行完畢后,仍然返回到事件循環(huán)體中。事件標志字由中斷直接或者間接驅動(dòng),當某個(gè)事件發(fā)生后,只需在中斷服務(wù)程序中將狀態(tài)字的對應位置位。中斷不斷向事件隊列中添加事件,處理程序則不停地從事件隊列中讀取事件標志字,處理事件。

事件驅動(dòng)機制的特點(diǎn)為:
*由于在中斷處理程序中,僅僅執行了改變事件標志字這樣的簡(jiǎn)單程序語(yǔ)句,把事件添加到C8051F040的事件隊列中后就立即返回。所以系統關(guān)閉中斷的時(shí)間很短。增強了系統對中斷處理的實(shí)時(shí)性。

*C8051F040根據當前讀取的事件,進(jìn)行相應事件處理或者向事件隊列中添加進(jìn)一步處理所需的事件。這實(shí)際上是把任務(wù)都進(jìn)行了分步處理,在執行一步這一任務(wù)的同時(shí),也可以執行一步其他任務(wù)。這樣.在不影響主程序流程的情況下,又提高了系統的實(shí)時(shí)性。

事件循環(huán)的流程

事件循環(huán)體的簡(jiǎn)要流程如圖2所示,其中各事件的含義分別為:
EVENT_ETH_ARRIVED: 有待處理的以太網(wǎng)幀事件。檢測到此事件,C8051F040會(huì )調用讀CP2200接受緩沖區程序,然后對幀進(jìn)行解包處理。

EVENT_TCP_RETRAN: TCP重傳事件。當TCP定時(shí)器超時(shí),觸發(fā)該事件。

EVENT_TCP_I NACTIVITY:關(guān)斷不活動(dòng)連接事件。當某連接超過(guò)0.5秒沒(méi)有收發(fā)數據,則觸發(fā)此事件。

EVENT_ARP_RETRAN:ARP請求數據包重傳事件。當某一ARP請求在發(fā)出0.5秒后沒(méi)有相應,則觸發(fā)該事件。經(jīng)兩次重發(fā)都沒(méi)回應,則將以該IP為目的地址的數據包丟棄;

EVENT_AGE_ARP _CACHE:更新ARP緩存事件。每60秒觸發(fā)該事件一次。

EVENT_COME_NEWDATA: 有新數據事件。當有新數據待發(fā)送時(shí),觸發(fā)該事件。

結語(yǔ)

CP2200的多種集成功能如CRC校驗,數據濾波等有效地減輕了單片機的載荷,它內部的收發(fā)接口單元操作起來(lái)靈活方便,為以太網(wǎng)數據包提供了有效的緩沖。芯片具有穩定的工作性能和抗干擾抗震性能,筆者利用CP2200, C8051F040單片機和TCP/IP協(xié)議棧開(kāi)發(fā)出了用于鐵路機車(chē)的以太網(wǎng)接口板卡。此板卡已在測試機車(chē)上運行,工作性能良好,能夠進(jìn)行穩定的數據傳遞。

參考文獻
1. Silicon Laboratories Inc.  CP2200 datasheet.  http://www.silabs.com/
2. Silicon Semiconductor Inc. c8051f040 datasheet. http://www.silabs.com/
3. Special Edition Using TCP/IP,Ramadas Shanmugam ,R.Padmini,S.Nivedita 尹浩瓊  李劍譯  電子工業(yè)出版社
4. 《TCP/IP詳解  卷2 實(shí)現》W.Richard Stevens http://www.china.pub.com/

tcp/ip相關(guān)文章:tcp/ip是什么




評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>