《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 基于AVR高性能單片機的以太網接口設計
基于AVR高性能單片機的以太網接口設計
摘要: 本系統采用ATMEL公司的高性能單片機Mega64和10 Mb/s以太網控制芯片RTL8019AS實現了以太網接口,詳細介紹了硬件電路的連接以及嵌入式TCP/IP的實現,使單片機具有了互聯網絡的接入功能。
關鍵詞: avr Mega64 以太網 RTL8019AS
Abstract:
Key words :

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

1 硬件電路設計

1.1 主要器件選擇

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

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

功能特性如下:

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

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

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

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

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

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

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

1.2 RTL8019AS與單片機的連接

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

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

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

2 系統軟件實現

2.1 RTL8019AS地址空間與寄存器

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

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

2.2 嵌入式TCp/IP實現

TCP/IP協議族是一組不同層次上的多個協議的組合,分為鏈路層、網絡層、傳輸層和應用層。對于8位單片機來說,由于其處理速度和存儲能力的問題,要實現完整的TCP/IP協議棧是比較困難的,因此要根據其特點及自己的需求,對協議進行裁剪,保留其核心部分。該系統只實現了ARP,IP,ICMP,UDP,TCP協議,采用C語言編寫。

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

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

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
欧美亚洲免费在线| 亚洲网站在线| 一本久道久久综合狠狠爱| 韩国一区二区三区美女美女秀| 欧美日韩在线一区二区| 欧美激情bt| 欧美11—12娇小xxxx| 久久婷婷麻豆| 欧美综合国产| 性久久久久久久| 午夜久久久久久久久久一区二区| 一本一道久久综合狠狠老精东影业 | 好吊一区二区三区| 国产三级精品三级| 国产精品免费区二区三区观看| 欧美日韩中文在线| 欧美三级日韩三级国产三级| 欧美另类极品videosbest最新版本| 欧美激情一区二区三区在线视频 | 韩国在线一区| 激情视频一区二区| 亚洲电影一级黄| 亚洲人成免费| 99xxxx成人网| 在线视频欧美精品| 亚洲影视在线| 久久黄色网页| 亚洲国内自拍| 日韩亚洲欧美成人一区| 中文精品在线| 午夜精品久久久久久99热软件| 欧美夜福利tv在线| 久久久久久九九九九| 免费成人性网站| 欧美国产专区| 欧美视频在线看| 国产女人aaa级久久久级| 国内精品久久久久影院优| 伊人精品成人久久综合软件| 亚洲欧洲一区二区三区| 一区二区国产在线观看| 亚洲嫩草精品久久| 欧美中文字幕在线视频| 亚洲黄色免费| 亚洲素人在线| 欧美在线视频一区| 狂野欧美激情性xxxx| 欧美精品日本| 国产精品久久久久毛片大屁完整版 | 欧美视频免费在线观看| 国产精品视频yy9299一区| 国产亚洲一级| 91久久午夜| 亚洲欧美成人一区二区三区| 久久精品国产第一区二区三区| 亚洲日本一区二区| 香港久久久电影| 裸体女人亚洲精品一区| 欧美日韩另类国产亚洲欧美一级| 国产日本欧美在线观看| 亚洲电影免费观看高清完整版| 一本久道综合久久精品| 欧美中日韩免费视频| 99亚洲伊人久久精品影院红桃| 午夜视频在线观看一区| 免费在线成人av| 国产精品乱码一区二三区小蝌蚪| 在线观看欧美亚洲| 亚洲午夜国产成人av电影男同| 久久精品亚洲一区| 亚洲综合精品四区| 美女网站久久| 国产精品一区二区视频| 亚洲三级免费| 欧美一区二区日韩| 一区二区三区四区蜜桃| 久久精品五月| 国产精品护士白丝一区av| 韩国在线视频一区| 亚洲一区中文| 一本久久a久久免费精品不卡 | 久久午夜av| 国产精品久久午夜| 亚洲国产精品一区二区三区| 亚洲欧美久久久| 在线视频亚洲| 久久天天躁狠狠躁夜夜爽蜜月| 国产精品盗摄一区二区三区| 亚洲国产91精品在线观看| 欧美一级理论片| 亚洲女同精品视频| 欧美日韩第一页| 亚洲成在线观看| 欧美亚洲视频在线观看| 亚洲在线免费| 欧美乱妇高清无乱码| 狠狠色狠狠色综合日日五| 亚洲欧美美女| 亚洲一区在线免费观看| 欧美国产乱视频| 精品成人国产在线观看男人呻吟| 亚洲综合二区| 亚洲永久在线| 欧美日本一区二区高清播放视频| 一色屋精品视频在线看| 欧美在线一区二区三区| 欧美一区二区女人| 国产精品黄视频| 亚洲美女av网站| 亚洲美女尤物影院| 欧美成人精品激情在线观看| 黄色成人精品网站| 欧美在线一二三四区| 久久国产视频网站| 国产色综合天天综合网| 亚洲影院色无极综合| 亚洲欧美一区二区三区久久| 欧美日韩一级片在线观看| 亚洲精品在线三区| 亚洲精品欧美| 欧美国产精品一区| 亚洲人成啪啪网站| 日韩一级免费观看| 欧美日韩精品一区| 日韩一区二区高清| 国产精品99久久99久久久二8 | 欧美亚洲综合久久| 久久精品国产久精国产一老狼| 国产日韩欧美二区| 午夜精品在线观看| 欧美一区三区三区高中清蜜桃| 国产精品欧美日韩一区| 亚洲一区二区三区免费观看| 亚洲欧美日韩精品| 国产乱人伦精品一区二区| 翔田千里一区二区| 久久九九全国免费精品观看| 国语自产精品视频在线看8查询8 | 亚洲国产欧美一区二区三区丁香婷| 久久综合五月| 亚洲第一久久影院| 亚洲麻豆一区| 欧美日韩一区二区视频在线观看| 夜夜夜久久久| 性欧美videos另类喷潮| 国产欧美午夜| 久久精品1区| 欧美电影电视剧在线观看| 最近看过的日韩成人| 亚洲伊人网站| 国产欧美日韩综合一区在线播放| 久久国产天堂福利天堂| 男人天堂欧美日韩| 日韩午夜av电影| 午夜一级久久| 激情欧美一区二区| 夜夜精品视频一区二区| 国产精品女主播| 亚洲第一区在线| 欧美精品18+| 亚洲一区久久久| 久久久国产精品一区二区三区| 亚洲国产精选| 亚洲一区二区三区高清不卡| 国产欧美日韩91| 亚洲国产美女久久久久| 欧美日韩亚洲系列| 欧美亚洲自偷自偷| 欧美激情亚洲激情| 亚洲制服少妇| 欧美二区不卡| 亚洲一区视频| 欧美高清视频在线| 亚洲综合不卡| 欧美激情精品久久久久久大尺度| 亚洲无毛电影| 欧美aⅴ99久久黑人专区| 在线视频你懂得一区二区三区| 久久精品一二三| 亚洲日本成人| 欧美在线视频一区二区三区| 亚洲欧洲中文日韩久久av乱码| 亚洲永久免费观看| 尤物在线观看一区| 午夜国产精品视频| 亚洲高清毛片| 欧美一级理论片| 亚洲国产裸拍裸体视频在线观看乱了中文 | 亚洲美女电影在线| 久久国产精品久久久久久| 亚洲精品久久久久久久久久久久| 欧美一区二区国产| 亚洲美女在线视频| 久久久久久久97| 日韩亚洲欧美综合| 猛干欧美女孩| 午夜精品久久久久久久久久久久| 欧美福利视频在线| 欧美一区二区三区播放老司机| 欧美日韩国产影院|