<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è) > 汽車(chē)電子 > 用51單片機控制RTL8019AS實(shí)現以太網(wǎng)通訊

用51單片機控制RTL8019AS實(shí)現以太網(wǎng)通訊

——
作者:曹宇 魏豐 胡士毅 時(shí)間:2007-01-31 來(lái)源: 收藏

互聯(lián)網(wǎng)絡(luò )硬件、軟件的迅猛發(fā)展,使得網(wǎng)絡(luò )用戶(hù)呈指數增長(cháng),在使用計算機進(jìn)行網(wǎng)絡(luò )互聯(lián)的同時(shí),各種家電設備、儀器儀表以及工業(yè)生產(chǎn)中的數據采集與控制設備在逐步地走向網(wǎng)絡(luò )化,以便共享網(wǎng)絡(luò )中龐大的信息資源。在電子設備日趨網(wǎng)絡(luò )化的背景下,利用廉價(jià)的來(lái)控制實(shí)現以太網(wǎng)通訊具有十分重要的意義。

1 以太網(wǎng)(Ethernet)協(xié)議

一個(gè)標準的以太網(wǎng)物理傳輸幀由七部分組成(如表1所示,單位:字節)。

     

                         表1 以太網(wǎng)的物理傳輸幀結構表

  
除了數據段的長(cháng)度不定外,其他部分的長(cháng)度固定不變。數據段為46~1500字節。以太網(wǎng)規定整個(gè)傳輸包的最大長(cháng)度不能超過(guò)1514字節(14字節為DA、SA、TYPE),最小不能小于60字節。除去DA、SA、TYPE14字節,還必須傳輸46字節的數據,當數據段的數據不足46字節時(shí)需填充,填充字符的個(gè)數不包括在長(cháng)度字段里;超過(guò)1500字節時(shí),需拆成多個(gè)幀傳送。事實(shí)上,發(fā)送數據時(shí),PR、SD、FCS及填充字段這幾個(gè)數據段由以太網(wǎng)控制器自動(dòng)產(chǎn)生;而接收數據時(shí),PR、SD被跳過(guò),控制器一旦檢測到有效的前序字段(即PR、SD),就認為接收數

據開(kāi)始。

2 以太網(wǎng)控制器簡(jiǎn)介

由臺灣Realtek公司生產(chǎn)的以太網(wǎng)控制器,由于其優(yōu)良的性能、低兼的價(jià)格,使其在市場(chǎng)上10Mbps網(wǎng)卡中占有相當的比例。

2.1 主要性能

(1)符號Ethernet II與IEEE802.3(10Base5、10Base2、10BaseT)標準;

(2)全雙工,收發(fā)可同時(shí)達到10Mbps的速率;

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

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

(5)支持UTP、AUI、BNC自動(dòng)檢測,還支持對10BaseT拓撲結構的自動(dòng)極性修正;

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

(7)100腳的PQFP封裝,縮小了PCB尺寸。

2.2 內部結構

RTL8019AS內部可分為遠程DMA接口、本地DMA接口、MAC(介質(zhì)訪(fǎng)問(wèn)控制)邏輯、數據編碼解碼邏輯和其他端口。內部結構如圖1所示。

            

遠程DMA接口是指單片機對RTL8019AS內部RAM進(jìn)行讀寫(xiě)的總線(xiàn),即ISA總線(xiàn)的接口部分。單片機收發(fā)數據只需對遠程DMA操作。本地DMA接口是把RTL8019AS與網(wǎng)線(xiàn)的連接通道,完成控制器與網(wǎng)線(xiàn)的數據交換。

MAC(介質(zhì)訪(fǎng)問(wèn)控制)邏輯完成以下功能:當單片機向網(wǎng)上發(fā)送數據時(shí),先將一幀數據通過(guò)遠程DMA通道送到RTL8019AS中的發(fā)送緩存區,然后發(fā)出傳送命令;當RTL8019AS完成了上幀的發(fā)送后,再開(kāi)始此幀的發(fā)送。RTL819接收到的數據通過(guò)MAC比較、CRC校驗后,由FIFO存到接收緩沖區;收滿(mǎn)一幀后,以中斷或寄存器標志的方式通知主處理器。FIFO邏輯對收發(fā)數據作16字節的緩沖,以減少對本地DMA請求的頻率。

2.3 內部RAM地址空間分配

RTL8019AS內部有兩塊RAM區。一塊16K字節,地址為0x4000~0x7fff;一塊32字節,地址為0x0000~0x001f。RAM按頁(yè)存儲,每256字節為一頁(yè)。一般將RAM的前12頁(yè)(即0x4000~0x4bff)存儲區作為發(fā)送緩沖區;后52頁(yè)(即0x4c00~0x7fff)存儲區作為接收緩沖區。第0頁(yè)叫Prom頁(yè),只有32字節,地址為0x0000~0x001f,用于存儲以太網(wǎng)物理地址。

要接收和發(fā)送數據包就必須通過(guò)DMA讀寫(xiě)RTL8019AS內部的16KB RAM。它實(shí)際上是雙端口的RAM,是指有兩套總線(xiàn)連接到該RAM,一套總線(xiàn)RTL8019AS讀或寫(xiě)該RAM,即本地DMA;另一套總線(xiàn)是單片機讀或寫(xiě)該RAM,即遠程DMA。

2.4 I/O地址分配

RTL8019AS具有32位輸入輸出地址,地址偏移量為00H~1FH。其中00H~0FH共16個(gè)地址,為寄存器地址。寄存器分為4頁(yè):PAGE0、PAGE1、PAGE2、PAGE3,由RTL8019AS的CR(Command Register命令寄存器)中的PS1、PS0位來(lái)決定要訪(fǎng)問(wèn)的頁(yè)。但與NE2000兼容的寄存器只有前3頁(yè),PAGE3是RTL8019AS自己定義的,對于其他兼容NE2000的芯片如DM9008無(wú)效。遠程DMA地址包括10H~17H,都可以用來(lái)做遠程DMA端口,只要用其中的一個(gè)就可以了。復位端口包括18H~1FH共8個(gè)地址,功能一樣,用于RTL8019AS復位。


3 接口電路設計

下面介紹51系列單片機與RTL8019AS的接口電路,實(shí)現的網(wǎng)絡(luò )接口采用UTP(無(wú)屏蔽雙絞線(xiàn))RJ-45接口。

圖2給出了89C52單片機控制RTL8019AS實(shí)現以太網(wǎng)通訊的接口電路框圖。用到的主要芯片有80C52、RTL8019AS、93C46(64



關(guān)鍵詞: 51單片機 RTL8019AS

評論


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