<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è) > 嵌入式系統 > 設計應用 > 基于A(yíng)VR高性能單片機的以太網(wǎng)接口設計

基于A(yíng)VR高性能單片機的以太網(wǎng)接口設計

作者: 時(shí)間:2014-12-02 來(lái)源:網(wǎng)絡(luò ) 收藏

  0 引 言

本文引用地址:http://dyxdggzs.com/article/266269.htm

  隨著(zhù)互聯(lián)網(wǎng)的迅速發(fā)展,各種家電設備、儀器儀表也在逐步走向網(wǎng)絡(luò )化,以便共享網(wǎng)絡(luò )信息資源、遠程監控等,這也是嵌入式系統發(fā)展的趨勢。而作為目前應用最為廣泛的局域網(wǎng),在工業(yè)自動(dòng)化和過(guò)程控制領(lǐng)域得到了越來(lái)越多的應用,因此,對于大量存在的8位微控制器而言,實(shí)現通信具有重要的實(shí)際意義?,F在應用較多的是基于51內核單片機的上網(wǎng)方案,由于處理能力的限制,要實(shí)現較復雜的網(wǎng)絡(luò )傳輸和控制有點(diǎn)困難。本系統采用公司的高性能單片機Mega64和10 Mb/s控制芯片RTL8019AS實(shí)現了以太網(wǎng)接口,詳細介紹了硬件電路的連接以及嵌入式TCP/IP的實(shí)現,使單片機具有了互聯(lián)網(wǎng)絡(luò )的接入功能。

  1 硬件電路設計

  1.1 主要器件選擇

  微控制器選用高性能的單片機Mega64,公司結合了成熟的51系列和PIC系列單片機的優(yōu)點(diǎn)而推出的高性能8位單片機,具有性?xún)r(jià)比高、資源豐富、速度快、功耗低、開(kāi)發(fā)方便等特點(diǎn)。Mega64采用RISC結構,工作頻率可達16 MHz,完全滿(mǎn)足運行多種網(wǎng)絡(luò )協(xié)議的要求,片內具有4 KB的SRAM,64 KB的FLASH,以太網(wǎng)最大數據包為1 514 B,4 KB的RAM足夠以太網(wǎng)幀的存儲,64 KB的FLASH對于適當的程序以及簡(jiǎn)單的Web Page來(lái)說(shuō)也是可以的,所以無(wú)需再外擴資源,大大簡(jiǎn)化了外圍電路,提高了可靠性。

  以太網(wǎng)控制芯片選用的是臺灣REALTEK公司生產(chǎn)的RTL8019AS,該芯片集成了介質(zhì)訪(fǎng)問(wèn)控制子層(MAC)和物理層的性能,可以方便地設計基于ISA總線(xiàn)的系統。另外,它還具有與NE2000兼容、軟件移植性好、與單片機接口簡(jiǎn)單、價(jià)格低貨源好等優(yōu)點(diǎn),其主要

  功能特性如下:

  (1)符合EthernetⅡ與IEEE802.3(10Base5,10Base2,10BaseT)標準。

  (2)軟件和8位及16位插槽的NE2000兼容。

  (3)全雙工,收發(fā)可同時(shí)達到10 Mb/s的速率。

  (4)內置16 KB的SRAM,用于收發(fā)緩存,降低對主處理器的速度要求。

  (5)支持8/16位數據總線(xiàn),8條中斷申請線(xiàn)以及16個(gè)I/0基地址選擇。

  (6)支持UTP,AUI,BNC自動(dòng)檢測以及對10BaseT拓撲結構的自動(dòng)極性修正。

  (7)允許4個(gè)診斷LED引腳可編程輸出。

  1.2 RTL8019AS與單片機的連接

  RTL8019AS支持三種工作方式:第一種為跳線(xiàn)方式,網(wǎng)絡(luò )控制器的I/O地址和中斷都由跳線(xiàn)決定;第二種為免跳線(xiàn)方式,I/O地址和中斷由外接的E2PROM 93C46里的內容所決定;第三種為即插即用方式(PNP),I/O地址和中斷都由軟件或操作系統自動(dòng)進(jìn)行管理和配置,用戶(hù)不必過(guò)多干預,當然這種方式要耗費系統資源。網(wǎng)絡(luò )控制器采用哪種方式由RTL8019AS的65腳(JP)決定,本系統采用第一種即跳線(xiàn)方式,這時(shí)JP要接高電平;第三種方式一般用于PC機中,對于8位單片機來(lái)說(shuō)無(wú)法實(shí)現,未用第二種方式又可以省掉一片93C46芯片,不但簡(jiǎn)化了硬件電路設計,而且降低了成本。

  RTL8019AS有兩種復位方式:冷復位和熱復位。給8019的復位引腳施加一個(gè)1μs以上的高電平就可以實(shí)現冷復位;先讀再寫(xiě)8019的任意一個(gè)復位端口都可以實(shí)現熱復位,這在PC機中用的較多??梢詫?019的復位引腳和單片機的復位引腳相連,單片機復位的時(shí)候8019也復位,這種情況可以減少單片機的一個(gè)引腳的使用,但為了保證能夠完全復位,可以在程序中進(jìn)行熱復位。然而Mega64為低電平復位,而8019為高電平復位,如果這樣連接的話(huà)還需要加一個(gè)非門(mén)進(jìn)行反相,鑒于Mega64的引腳較多,所以將8019的復位引腳連接到Mega64的一個(gè)I/O口上,由該引腳對8019進(jìn)行冷復位。

  圖1所示為RTL8019AS的部分電路圖,其工作時(shí)鐘為20 MHz。RTL8019AS的引腳懸空時(shí),輸入狀態(tài)為低電平,因為芯片引腳內部已經(jīng)接了一個(gè)100 kΩ的下拉電阻。AEN引腳為I/O端口操作允許使能腳,接地使地址一直處于有效;IOCSl6B引腳用一個(gè)27 kΩ的電阻下拉到地,復位時(shí)刻為低電平,選擇8位總線(xiàn)模式;讀寫(xiě)引腳IORB、IOWB分別與單片機的RD,WR引腳相連;8位數據總線(xiàn)SD0~sD7接到單片機的PA口;IOSO~IOS3為I/O基地址選擇引腳,懸空設置為300H,所以SA5~SA7,SAl0~SAl9接地,SA8和SA9接高電平,真正用到的地址線(xiàn)只有SA0~SA4,接到單片機的地址線(xiàn)上;IRQS0~IRQS2為中斷選擇引腳,懸空選擇中斷INT0,實(shí)際上并沒(méi)有使用中斷,而是使用了查詢(xún)方式;AUI引腳用于A(yíng)UI接口外部MAU檢測,決定使用AUI還是BNC接口,BNC接口方式支持8線(xiàn)雙絞或同軸電纜,所以將該引腳懸空選擇使用RJ45接口;SMEMRB和SMEMWB為存儲器讀寫(xiě)引腳,由于我們使用的是I/O模式讀寫(xiě)網(wǎng)絡(luò )芯片,所以將它們接高電平;TPIN和TPOUT為差分輸入輸出引腳,分別用來(lái)接收來(lái)自雙絞線(xiàn)和向雙絞線(xiàn)發(fā)送10 Mb/s的差分曼徹斯特編碼信號,RTL8019AS需要經(jīng)過(guò)隔離處理才能和RJ45接口相連,然后接入以太網(wǎng),隔離低通濾波器選用的是20F001N,內部有兩個(gè)傳輸變壓器,用來(lái)傳輸信號以及抑制噪聲干擾。

  

 

  2 系統軟件實(shí)現

  2.1 RTL8019AS地址空間與寄存器

  RTL8019AS內部的16 KB的RAM用于收發(fā)緩沖,地址為Ox4000~0x7FFF,收發(fā)緩沖以頁(yè)為單位,每頁(yè)256 B,共64頁(yè),如果某頁(yè)沒(méi)有完全填滿(mǎn)數據,則下包數據也不能繼續使用該頁(yè),只能使用新的頁(yè)。一般將前12頁(yè)作為發(fā)送緩沖區,分為兩個(gè)6頁(yè)的緩沖區(因為一個(gè)最大數據包占6頁(yè)),兩個(gè)發(fā)送緩沖區交替使用,可提高發(fā)送效率,后52頁(yè)作為接收緩沖區。該RAM是雙端口的,具有兩套總線(xiàn),一套是RTL8019AS讀寫(xiě)該RAM,即本地DMA;另一套是單片機讀寫(xiě)該RAM,即遠程DMA,要接收和發(fā)送數據包就必須對這塊RAM進(jìn)行DMA讀寫(xiě)。

  RTL8019AS具有32位I/O地址,地址偏移量為00H~1FH,本系統中對應于300H~31FH,其中,00H~0FH為16個(gè)寄存器地址,寄存器分為4頁(yè),與NE2000兼容的只有前3頁(yè),第4頁(yè)是RTL8019AS自己定義的,對于其他兼容NE2000的芯片無(wú)效,所以為了保證驅動(dòng)程序對所有NE2000兼容的網(wǎng)卡都有效,不要去操作第4頁(yè)的寄存器。10H~17H為8個(gè)遠程DMA地址,都可以用來(lái)做遠程DMA地址,使用其中一個(gè)即可,微控制器通過(guò)讀寫(xiě)數據端口10H~17H實(shí)現對緩沖區的訪(fǎng)問(wèn)。18H~1FH共8個(gè)地址為復位端口,它們功能一樣,使用其中一個(gè)即可,用于RTL8019AS的熱復位。

  2.2 嵌入式TCp/IP實(shí)現

  TCP/IP協(xié)議族是一組不同層次上的多個(gè)協(xié)議的組合,分為鏈路層、網(wǎng)絡(luò )層、傳輸層和應用層。對于8位單片機來(lái)說(shuō),由于其處理速度和存儲能力的問(wèn)題,要實(shí)現完整的TCP/IP協(xié)議棧是比較困難的,因此要根據其特點(diǎn)及自己的需求,對協(xié)議進(jìn)行裁剪,保留其核心部分。該系統只實(shí)現了ARP,IP,ICMP,UDP,TCP協(xié)議,采用C語(yǔ)言編寫(xiě)。

  在鏈路層上,首先要解決RTL8019AS的驅動(dòng)問(wèn)題,驅動(dòng)程序包括三部分:以太網(wǎng)接口芯片初始化程序、發(fā)送數據程序和接收數據程序,它們屏蔽了底層硬件處理細節,同時(shí)向上層軟件提供與硬件無(wú)關(guān)的接口。驅動(dòng)程序將已封裝好的待發(fā)送數據按指定格式寫(xiě)入芯片并啟動(dòng)發(fā)送命令,8019會(huì )自動(dòng)把數據包轉換成物理幀格式在信道上傳輸;反之,8019收到物理信號后將其還原成數據,按指定格式存放在芯片RAM中以便主機程序取用,下面給出部分初始化程序,主要是對一些寄存器進(jìn)行設置,其中,reg00~regof為宏定義,代表RTL8019AS內地址偏移量為00H~0FH的寄存器地址。

  

 

  頁(yè)2的寄存器是只讀的,頁(yè)3的寄存器不是NE2000兼容的,所以均不用設置。首先選擇為頁(yè)O,網(wǎng)卡芯片為停止模式,因為還沒(méi)有進(jìn)行初始化,設置0x40~Ox4B為網(wǎng)卡的發(fā)送緩沖區,共12頁(yè),剛好存儲2個(gè)最大的以太網(wǎng)數據包;0x4C~0x7F為網(wǎng)卡的接收緩沖區,共52頁(yè);剛開(kāi)始時(shí)網(wǎng)卡沒(méi)有接收到任何數據包,因此BNRY指向第一個(gè)接收緩沖區的頁(yè)0x4C。設置完頁(yè)O的寄存器后切換為頁(yè)1,由于設計中沒(méi)有使用93C46,因此需要在程序中指定芯片的物理地址,寫(xiě)入到PAR寄存器,然后啟動(dòng)芯片開(kāi)始工作。讀指針BN—RY和寫(xiě)指針CURR主要用來(lái)控制緩沖區的存取過(guò)程,保證能正確讀出和寫(xiě)入數據。

c語(yǔ)言相關(guān)文章:c語(yǔ)言教程


單片機相關(guān)文章:單片機教程


單片機相關(guān)文章:單片機視頻教程


單片機相關(guān)文章:單片機工作原理


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


低通濾波器相關(guān)文章:低通濾波器原理


雙絞線(xiàn)傳輸器相關(guān)文章:雙絞線(xiàn)傳輸器原理

上一頁(yè) 1 2 下一頁(yè)

關(guān)鍵詞: AVR 以太網(wǎng) ATMEL

評論


相關(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>