當前位置:首頁 > 電源 > 數字電源
[導讀]  1 引言  目前,以太網(ethernet)協(xié)議已經非常廣泛地應用于各種計算機網絡,如辦公局域網、工業(yè)控制網絡等場合,并且還不斷地發(fā)展?;谝蕴W的新技術和聯網設備不斷出現,以太網已經成為事實上最常用的局域

  1  引言

  目前,以太網(ethernet)協(xié)議已經非常廣泛地應用于各種計算機網絡,如辦公局域網、工業(yè)控制網絡等場合,并且還不斷地發(fā)展?;谝蕴W的新技術和聯網設備不斷出現,以太網已經成為事實上最常用的局域網絡標準之一。但是,基于以太網的嵌入式系統(tǒng)目前并不是很多。其原因除了嵌入式系統(tǒng)本身運行速度較慢、資源較少且不足以實現以太網的各種協(xié)議外,更重要是設計以太網的接口及協(xié)議相對比較復雜,使人望而卻步。本文將研討基于c8051f系列單片機系統(tǒng)的嵌入式系統(tǒng)與10mbps以太網控制器芯片rtl8019as的接口電路實現及編程方法。

  2  嵌入式以太網接口分析

  2.1  接口組成

  8位mcu的嵌入式設備通過以太網接口,將8位mcu采集的數據信息,傳送到遠程服務器。在這個過程中需要處理網絡接口、接收數據的分析、發(fā)送數據段的封裝等問題。

  以10baset以太網為例,發(fā)送數據時應該做的工作是首先對需要發(fā)送的數據進行曼切斯特編碼,然后對編碼后的數據進行預處理,使其發(fā)送的數據適合10baset的以太網傳輸,最后把處理好的數據以適當的速度發(fā)送到以太網。同時為了保證數據的有效性,系統(tǒng)還應具有沖突檢測和重發(fā)功能。在這個過程中,直接用8位mcu來實現該功能非常困難。解決的方法是用專門的網絡接口芯片nic網絡接口卡(nic-network inteRFace card)來實現,這類芯片遵循ieee802.3所規(guī)定的csma/cd協(xié)議,除了提供物理鏈路所需的電氣性能外,還提供曼切斯特編碼、沖突檢測和重發(fā)功能,可以用很少的外圍電路一起完成數據的發(fā)送和接收功能。這樣,8位mcu只需要nic芯片提供初始配置和數據接口,這對于8位mcu是沒有問題的。基于以上的分析,8位mcu的嵌入式設備以太網接口部分構成如圖1所示:

圖1 嵌入式設備以太網接口組成

  2.2  以太網控制芯片——rtl8019as

 ?。?) rtl8019as的主要性能

  符合以太網ii與ieee802.3(10base5、10base2、10baset)標準;
  全雙工,收發(fā)可同時達到10mbit/s的速率;
  內置16kb的sram,用于收發(fā)緩沖,降低對主處理器的速度要求;
  支持8/16位數據總線,8個中斷申請線以及16個i/o基地址選擇;
  支持utp、aui、bnc自動檢測,還支持對10baset拓撲結構的自動極性修正;
  允許4個診斷l(xiāng)ed引腳可編程輸出;
  采用cmos工藝,功耗低。單一電源5v供電。

  (2) rtl8019as的內部結構

  rtl8019as芯片內部包含遠程dma(直接存儲器存?。┙涌?、本地dma接口、mac(介質訪問控制)邏輯、數據編碼解碼邏輯和其它接口。這里的dma與平時所說的dma有些不同:rtl8019as芯片的本地dma操作是由控制器本身完成;而遠程dma并不是在沒有主處理器的參與下數據能自動移到主處理器的內存中,它指主處理器給出起址和長度就可以讀寫芯片的ram緩沖區(qū),每操作一次ram地址自動加1,而普通ram操作每次要先發(fā)地址再處理數據,速度較慢。內部結構如圖2所示。

  3  嵌入式設備網絡互連設計方案[!--empirenews.page--]

  3.1  電路原理設計

  c8051f020是美國cygnal公司推出的一種混合信號soc型8位單片機,它是一種完全集成的混合信號系統(tǒng)級芯片,具有與8051兼容的微控制器內核,與mcs-51指令集完全兼容。內核采用流水線結構,機器周期由標準的12個系統(tǒng)時鐘周期降為1個系統(tǒng)時鐘周期,70%指令的執(zhí)行時間為1個或2個系統(tǒng)時鐘周期,處理能力大大提高,峰值性能可達25mips。

  同時,除具有標準8051的數字外設部件外,c8051- f020片內還集成了構成一個單片機數據采集、控制系統(tǒng)所需要的幾乎所有模擬、數字外設及其他功能部件。這些外設或功能部件包括:用于多種模擬信號的模擬多路選擇器、真正12位轉換精度的ADC,還有能滿足特殊功能所需的smbus(i2c兼容)、uart、spi、多個多功能計數器/定時器、以及看門狗定時器(wdt)和電源監(jiān)視器等數字外設。

  c8051f020具有100腳的tqfp封裝,功耗低,供電電壓為2.7~3.3v,全部i/o、rst、jtag引腳均耐5v電壓。其mcu具有p0~p7共64個通用i/o端口,每個端口引腳都可以被配置為推挽輸出或漏級開路輸出。對于rtl8019as,由于其工作電壓是5v,而c8051f020的工作電壓是3.3v,所以要c8051f020的輸出能更好地驅動5v輸入的oled,需要對系統(tǒng)進行額外配置。除了將對應端口的輸出方式設置為“漏極開路”外,還應在電路上將每個端口通過一個上拉電阻接到5v電源,這樣可以保證c8051f020的邏輯“1”輸出能夠被提升到5v。


  單片機采用c8051f020芯片,以查詢工作方式不斷讀取rtl8019as狀態(tài)寄存器。以遠程dma方式發(fā)送或讀取rtl8019as的數據。詳見圖3。

  由于網絡控制器具有 ethernet(ieee802.3)協(xié)議處理功能,系統(tǒng)便可直接rj45連接到以太網(再通過以太網接入 internet)。本文所設計的系統(tǒng)中選用的rj45連接器為lf1s022,它已經具有電平轉換功能,簡化了 pcb設計。值得注意的是,設計pcb時,rj45連接器不能與cpu和網絡芯片相距太遠,以免對數據傳輸造成影響。

  rtl8019as的tpin+(59腳), tpin-(58腳)腳是tp 的一對輸入腳,能以10mbits/s 的速率從雙絞線接收差分曼徹斯特編碼的數據。tpout+(45腳)、tpout-(46腳)是一對曼徹斯特編碼的差分tp輸出信號。為了防止雙絞線超載,該輸出信號會被提前中斷,這樣可以減少擁塞。連接時,這四個管腳分別接到 lf1s022的7、6、5、4腳。連接器的其他管腳都通過一個電容與地連接。最后,還必須在50、51腳之間接入一個20mhz的晶體振蕩器。

  圖3中擴展的rj45口接入互聯網,rtl8019as通過本地dma方式將接收到的數據送到片內sram,或者從片內sram讀取數據從rj45口發(fā)送出去。

  網卡的復位信號rstdrv由單片機的p5.2產生,rstdrv為高電平有效,至少需要800ns的寬度。由p5.2引腳產生一個1μs以上的高電平就可以使rtl- 8019as芯片復位。

  rstdrv從高電平到低電平之后要等多久,單片機才可以對網卡進行操作?復位的過程將執(zhí)行一些操作,比如將內部寄存器初始化等。這些至少需要2ms的時間。為確保完全復位,應該等待更久的時間之后才對網卡操作,比如100ms之后才對它操作。

  對rstdrv可以接單片機的一個i/o口線進行網卡的復位,也可以直接將rstdrv跟單片機的reset引腳并聯,單片機復位的時候,網卡也復位,以減少一個單片機的引腳使用。[!--empirenews.page--]

  3.2  網卡的初始化

  網卡在能夠正常工作以前,必須先對其進行初始化,一般帶有操作系統(tǒng)的計算機上,網卡的初始化由其驅動程序完成。此例中由于c8051f020單片機是全裸機(不含驅動程序),不僅需要用戶自己完成網卡的初始化,還需要用戶自己設置網卡的mac(介質訪問控制)地址以及對網卡進行讀寫訪問。

  初始化需要設置頁0與頁1的相關寄存器,頁2的寄存器是只讀的,不可以設置,頁3的寄存器不是ne2000兼容的,不用設置。需初始化的寄存器包括cr、dcr、pbcr、pstart、pstop、isr、imr、par0~par5、mar0~mar7、curr、tcr、rcr等寄存器。初始化函數主要要完成以下諸項工作。

 ?。?) 調用復位子程序隊rtl8019as進行復位。有兩種復位方式:一是硬件復位,通過拉高拉低reset引腳達到復位rtl8019as的目的;二是軟件復位,向if端口讀寫數據從而使rtl8019as復位。

 ?。?) 向命令寄存器cr寫入0x21h使rtl8019as處于停止模式,設置寄存器。

 ?。?) 設置數據配置寄存器dcr為使用fifo緩存、普通模式、8位數據傳輸模式,字節(jié)順序為高位字節(jié)在前,低位字節(jié)在后。設置rbcr0、rbcr1寄存器為0,即讀取ram字節(jié)數。

  (4) 設置接收和發(fā)送緩沖區(qū)起止地址。pstart接收緩沖區(qū)的起始頁地址0x46;pstop接收緩沖區(qū)的結束頁地址0x80;bnry指向最后一個已經讀取頁的指針0x46;tpsr發(fā)送頁的起始地址0x40;curr芯片寫內存指針,它指向當前正在寫的頁的下一個頁,即初始化時指向0x47。

 ?。?) 設置rcr接收配置寄存器為0xcc,使用接收緩沖區(qū),僅接收自己的地址的數據包(以及廣播地址數據包)和多點播送地址包,小于64字節(jié)的包丟棄,校驗錯的數據包不接收。設置tcr發(fā)送配置寄存器為0xe0,啟用crc自動生成和自動校驗,工作在正常模式。

 ?。?) 設置mar0~mar8為0,清除多播地址寄存器;設置isr為0xff,清除中斷狀態(tài)寄存器;設置中斷屏蔽寄存器imr為0,屏蔽所有中斷請求。

 ?。?) 將物理地址寫入par0~5物理地址寄存器。

 ?。?) 最后設置tcr發(fā)送配置寄存器為0xe0;設置命令寄存器cr為0x22,芯片進入正常工作狀態(tài),rtl8019as初始化完成。

  初始化時,必需指明嵌入式設備的48位硬件地址和廣播地址,并正確設置它的ip地址、子網掩碼和默認網關。工業(yè)控制一般都在一個同級局域網內部進行,因此可以直接令網關的ip地址為0。其主控制流程如圖4所示。

  4  結束語

  本文分析了嵌入式設備與以太網接口的組成,簡要介紹了rtl8019as和c8019f芯片,并給出了嵌入式mcu與以太網控制芯片的硬件連接及其軟件設計。該設計以數據采集為例的,在工業(yè)生產中有很大的現實意義。

本站聲明: 本文章由作者或相關機構授權發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內容真實性等。需要轉載請聯系該專欄作者,如若文章內容侵犯您的權益,請及時聯系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或將催生出更大的獨角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數字化轉型技術解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關鍵字: AWS AN BSP 數字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術公司SODA.Auto推出其旗艦產品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關鍵字: 汽車 人工智能 智能驅動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務中斷的風險,如企業(yè)系統(tǒng)復雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務連續(xù)性,提升韌性,成...

關鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據媒體報道,騰訊和網易近期正在縮減他們對日本游戲市場的投資。

關鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數據產業(yè)博覽會開幕式在貴陽舉行,華為董事、質量流程IT總裁陶景文發(fā)表了演講。

關鍵字: 華為 12nm EDA 半導體

8月28日消息,在2024中國國際大數據產業(yè)博覽會上,華為常務董事、華為云CEO張平安發(fā)表演講稱,數字世界的話語權最終是由生態(tài)的繁榮決定的。

關鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應對環(huán)境變化,經營業(yè)績穩(wěn)中有升 落實提質增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務引領增長 以科技創(chuàng)新為引領,提升企業(yè)核心競爭力 堅持高質量發(fā)展策略,塑強核心競爭優(yōu)勢...

關鍵字: 通信 BSP 電信運營商 數字經濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術學會聯合牽頭組建的NVI技術創(chuàng)新聯盟在BIRTV2024超高清全產業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現場 NVI技術創(chuàng)新聯...

關鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯合招商會上,軟通動力信息技術(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關鍵字: BSP 信息技術
關閉
關閉