
RTL8019
文章平均质量分 75
zcx3000
这个作者很懒,什么都没留下…
展开
-
五.设置网卡地址
以下程序是设置网卡的地址,只有符合这个地址的数据包才接收. void writemynodeid(){ page(1);reg01=mynodeid[0].bytes.high; //PAR0reg02=mynodeid[0].bytes.low; //PAR1reg03=mynodeid[1].bytes.high; //PAR2reg04=mynodeid[1].bytes.l原创 2005-06-22 16:09:00 · 2621 阅读 · 0 评论 -
八.以太网组播地址过滤寄存器的计算
终于找到关于RTL8019AS里的 MAR0-MAR7的计算的程序,源程序是80x86的汇编,我把它转换成了在keil c51里的程序,以便可以在51单片机里使用。 跟组播地址有关的寄存器: 为8个寄存器,提供对组播地址的过滤。跟crc的逻辑有关。MAR0-7 全部设置为0xff时,将接收所有的组播数据包,将MAR0-7 全部设置为0x00时,将不接收所有组播地址的数据包。在windows98原创 2005-06-23 10:44:00 · 4351 阅读 · 0 评论 -
七.网卡地址和多点播送(组播)及广播
以太网的地址为48位,由ieee统一分配给网卡制造商,每个网卡的地址都必须是全球唯一的。共6个字节的长度 字节 5 4 3 2 1 0原创 2005-06-22 17:32:00 · 4676 阅读 · 1 评论 -
六.RTL8019AS的跳线方式
rtl8019as有3种工作方式:第一种为跳线方式,网卡的i/o和中断由跳线决定第二种为即插即用方式,由软件进行自动配置plug and play第三种为免跳线方式,网卡的i/o和中断由外接的93c46里的内容决定。我们买到的网卡一般只支持第2和第3种。在嵌入式应用的 场合,如果可以不使用93c46的话,可以降低成本,同时又减少连线。那么我们如何使用第1种方式跳线方式呢?网卡使用哪种方式由rtl8原创 2005-06-22 17:29:00 · 3933 阅读 · 0 评论 -
三.网卡初始化
---- 完成复位之后,你要对网卡的工作参数进行设置.以使网卡开始工作.先介绍一个子函数#define reg00 XBYTE[0xc000] //对应于地址240H 为命令寄存器CR地址void page(uchar pagenumber){ uchar data temp; temp=reg00;//command register temp=temp&0x3f;pagenumber=pa原创 2005-06-22 01:40:00 · 5710 阅读 · 1 评论 -
一.以太网协议
——--以太网协议(用于10MBPS的以太网,作者以下所说的以太网均指10M以太网,而不是100M,1000M的以太网)——以太网协议有两种,一种是IEEE802.2/IEEE802.3,还有一种是以太网的封装格式。——现代的操作系统均能同时支持这两种类型的协议格式。因此对我们来说只需要了解其中的一种就够了,特别是对单片机来说,不可能支持太多的协议格式。——以太网的物理传输帧:(仅介绍第二种格式)原创 2005-06-21 22:32:00 · 4191 阅读 · 0 评论 -
四.读取网卡的网卡地址
完成上面的过程之后,网卡还不能正确的接收数据包,因为我们还没有对网卡的物理地址(网卡地址,48位的地址)进行设置。网卡还不知道它应该什么地址的数据包。要对网卡的物理地址进行设置,就必须知道网卡的物理地址是多少。读取网卡的物理地址的子程序:union u {uint word; struct{uchar high;uchar low;}bytes;}; //我定义的数据结构,为两个字节的结构 //,原创 2005-06-22 15:55:00 · 3121 阅读 · 0 评论 -
二.网卡上电复位
----当你买到一个新的RTL8019AS网卡,你要先将该网卡设置为以下的配置:操作方式Operating Mode:跳线方式Jumperless(不是即插即用Plug and Play)端口I/O base:0240-25FH中断Interrupt: 2/9(我的程序没有用到网卡中断,所以也可以不用设置)你要将这个网卡插到你的电脑里,用这个网卡带的设置程序RSET8019.exe将这个卡按照原创 2005-06-21 23:20:00 · 4234 阅读 · 0 评论 -
十.RTL8019AS,RTL8029AS如何读写网卡的RAM
要接收和发送数据包都必须读写网卡的内部的16k的ram,必须通过DMA进行读和写.网卡的内部ram是一块双端口的16k字节的ram.所谓双端口就是说有两套总线连结到该ram,一套总线A是网卡控制器读/写网卡上的ram,另一套总线B是单片机读/写网卡上的ram.总线A又叫Local DMA,总线B又叫Remote DMA. 上图中虚线框住的部分为Remote DMA,也就是单片机对网卡ram进行原创 2005-06-23 10:46:00 · 5770 阅读 · 1 评论 -
九.RTL8019AS,RTL8029AS如何接收一个数据包(1)
我们在上面谈到了网卡的ram的结构,网卡ram是以256字节为一页,是按页存储的结构,16位的ram的地址的高8位又叫页码. 网卡的16k的ram地址从0x4000-0x7fff,从页0x40到页0x7f,一共有64页.这64页被用来接收和发送数据包用. 一般把前面的12页用来存放发送的数据包,后面的52页用来存放接收的数据包. 当然你也可以配置成前面52页用来接收,而后面的12页用来发送原创 2005-06-23 10:45:00 · 4392 阅读 · 1 评论