日韩欧美自拍在线观看-欧美精品在线看片一区二区-高清性视频一区二区播放-欧美日韩女优制服另类-国产精品久久久久久av蜜臀-成人在线黄色av网站-肥臀熟妇一区二区三区-亚洲视频在线播放老色-在线成人激情自拍视频

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

出處:telesoft 發(fā)布于:2007-04-11 11:50:27

引言

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

硬件電路設(shè)計
  系統(tǒng)的硬件電路示于圖1。CP2200的外圍電路比較簡單。

           圖1 硬件電路
I/O并行接口

  CP2200的并行主機接口,支持Motorola 和 Intel兩種總線方式,且支持地址數(shù)據(jù)復(fù)用和非復(fù)用方式。可以通過將MUXEN和MOTEN引腳接地或拉高電平來實現(xiàn)對主機接口總線方式的配置。
以太網(wǎng)變壓器

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

  LINK和ACT引腳輸出電平來驅(qū)動LED,用來指示網(wǎng)絡(luò)的連接和活動狀態(tài)。
  所有電源引腳都必須與同一個外部3.3V 電源相連。類似的,所有參考地都應(yīng)在外部連接到相同的接地點。每個VDD 和VSS 引腳都應(yīng)連接一個0.1mF 的陶瓷旁路電容,該電容盡可能靠近引腳。
  需要特別說明的是,驅(qū)動雙絞線接口需要相對高的電流,因此以太網(wǎng)的收發(fā)數(shù)據(jù)線應(yīng)盡可能短,并且線徑適當加大以減少電阻損耗(為了保證數(shù)據(jù)的可靠傳輸,筆者的PCB電路板選擇了20mil的線徑)。

軟件設(shè)計

  TCP/IP 協(xié)議種類繁多,相互之間交互作用復(fù)雜,在單片機上不可能實現(xiàn)所有協(xié)議,所以必須對協(xié)議棧進行剪裁。結(jié)合系統(tǒng)的具體通信要求,筆者的系統(tǒng)只保留了TCP、UDP、IP、ICMP、ARP協(xié)議模塊。在協(xié)議棧程序的整體設(shè)計上,考慮到單片機的單任務(wù)執(zhí)行方式很難發(fā)揮TCP/IP協(xié)議的特點,我們采用了基于事件驅(qū)動機制的TCP/IP協(xié)議棧的實現(xiàn)方法。該機制的引入,使得系統(tǒng)在保證具有高效的匯編語言代碼效率的同時,實時響應(yīng)性也得到了大幅提高。下面將具體闡述事件驅(qū)動機制的特點和基于該機制的TCP/IP協(xié)議棧的實現(xiàn)。
事件驅(qū)動機制
  系統(tǒng)初始化完成后, 進入事件循環(huán)體,不斷查詢C8051F040的事件隊列是否有事件。一旦事件隊列非空,則讀取事件標志字,判斷事件類型,而后調(diào)用對應(yīng)事件處理子程序。處理子程序執(zhí)行完畢后,仍然返回到事件循環(huán)體中。事件標志字由中斷直接或者間接驅(qū)動,當某個事件發(fā)生后,只需在中斷服務(wù)程序中將狀態(tài)字的對應(yīng)位置位。中斷不斷向事件隊列中添加事件,C8051F040處理程序則不停地從事件隊列中讀取事件標志字,處理事件。
事件驅(qū)動機制的特點為:

  *由于在中斷處理程序中,僅僅執(zhí)行了改變事件標志字這樣的簡單程序語句,把事件添加到C8051F040的事件隊列中后就立即返回。所以系統(tǒng)關(guān)閉中斷的時間很短。增強了系統(tǒng)對中斷處理的實時性。
  *C8051F040根據(jù)當前讀取的事件,進行相應(yīng)事件處理或者向事件隊列中添加進一步處理所需的事件。這實際上是把任務(wù)都進行了分步處理,在執(zhí)行一步這一任務(wù)的同時,也可以執(zhí)行一步其他任務(wù)。這樣.在不影響主程序流程的情況下,又提高了系統(tǒng)的實時性。
事件循環(huán)的簡要流程

  圖注:1=EVENT_ETH_ARRIVED;2=EVENT_TCP_RETRAN;3=EVENT_TCP_INACTIVITY;4=EVENT_ARP_RETRAN;5=EVENT_AGE_ARP_CACHE;6=EVENT_COME_NEWDATA;
  圖2  事件循環(huán)流程
  事件循環(huán)體的簡要流程如圖2所示,其中各事件的含義分別為:
  EVENT_ETH_ARRIVED: 有待處理的以太網(wǎng)幀事件。檢測到此事件,C8051F040會調(diào)用讀CP2200接受緩沖區(qū)程序,然后對幀進行解包處理;
  EVENT_TCP_RETRAN: TCP重傳事件。當TCP定時器超時,觸發(fā)該事件;
  EVENT_TCP_INACTIVITY:關(guān)斷不活動連接事件。當某連接超過0.5秒沒有收發(fā)數(shù)據(jù),則觸發(fā)此事件;
EVENT_ARP_RETRAN:ARP請求數(shù)據(jù)包重傳事件。當某一ARP請求在發(fā)出0.5秒后沒有相應(yīng),則觸發(fā)該事件。經(jīng)兩次重發(fā)都沒回應(yīng),則將以該IP為目的地址的數(shù)據(jù)包丟棄;
  EVENT_AGE_ARP_CACHE:更新ARP緩存事件。每60秒觸發(fā)該事件;
  EVENT_COME_NEWDATA: 有新數(shù)據(jù)事件。當有新數(shù)據(jù)待發(fā)送時,觸發(fā)該事件;

結(jié)語

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


  
關(guān)鍵詞:一種精簡可靠的低成本嵌入式以太網(wǎng)接口設(shè)計100W3.3V  802.3C8051F040CP2200CS8900ADM9008INTEL MOTOROLA RJ-45RTL8019

版權(quán)與免責(zé)聲明

凡本網(wǎng)注明“出處:維庫電子市場網(wǎng)”的所有作品,版權(quán)均屬于維庫電子市場網(wǎng),轉(zhuǎn)載請必須注明維庫電子市場網(wǎng),http://www.hbjingang.com,違反者本網(wǎng)將追究相關(guān)法律責(zé)任。

本網(wǎng)轉(zhuǎn)載并注明自其它出處的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點或證實其內(nèi)容的真實性,不承擔此類作品侵權(quán)行為的直接責(zé)任及連帶責(zé)任。其他媒體、網(wǎng)站或個人從本網(wǎng)轉(zhuǎn)載時,必須保留本網(wǎng)注明的作品出處,并自負版權(quán)等法律責(zé)任。

如涉及作品內(nèi)容、版權(quán)等問題,請在作品發(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。

國產(chǎn)AIP1117低功耗電源穩(wěn)壓芯片的妙用:電子工程師常用末端3.3V轉(zhuǎn)換好的電壓給MCU供電!
廣告
OEM清單文件: OEM清單文件
*公司名:
*聯(lián)系人:
*手機號碼:
QQ:
有效期:

掃碼下載APP,
一鍵連接廣大的電子世界。

在線人工客服

買家服務(wù):
賣家服務(wù):
技術(shù)客服:

0571-85317607

網(wǎng)站技術(shù)支持

13606545031

客服在線時間周一至周五
9:00-17:30

關(guān)注官方微信號,
第一時間獲取資訊。

建議反饋

聯(lián)系人:

聯(lián)系方式:

按住滑塊,拖拽到最右邊
>>
感謝您向阿庫提出的寶貴意見,您的參與是維庫提升服務(wù)的動力!意見一經(jīng)采納,將有感恩紅包奉上哦!