保存桌面快捷方式 - - 设为首页 - 手机版
凹丫丫旗下网站:四字成语大全 - 故事大全 - 范文大全
您现在的位置: 范文大全 >> 理工论文 >> 电子通信论文 >> 正文

用51单片机控制RTL8019AS实现以太网通讯


RV为高电平有效,至少需要800ns的宽度。给该引脚旋加一个1μs以上的高电平就可以复位。施加一个高电平后,然后施加一个低电平。复位过程将执行一些操作,至少需要2ms的时间,推荐等待更久的时间之后如100ms之后才对它操作,以确保完全复位。
  
  4.2初始化RTL8019AS
  
  初始化页0与页1的相关寄存器,页2的寄存器是只读的,不可以设置,页3的寄存器不是NE2000兼容的,不用设置。
  
  (1)CR=0x21,选择页0的寄存器;
  
  (2)TPSR=0x45,发送页的起始页地址,初始化为指向第一个发送缓冲区的页即0x40;
  
  (3)PSTART=0x4c,PSTOP=0x80,构造缓冲环:0x4c~0x80;
  
  (4)BNRY=0x4c,设置指针;
  
  (5)RCR=0xcc,设置接收配置寄存器,使用接收缓冲区,仅接收自己地址的数据包(以及广播地址数据包)和多点播送地址包,小于64字节的包丢弃,校验错的数据包不接收;
  
  (6)TCR=0xe0,设置发送配置寄存器,启用CRC自动生成和自动校验,工作在正常模式;
  
  (7)DCR=0xc8,设置数据配置寄存器,使用FIFO缓存,普通模式,8位数据DMA;
  
  (8)IMR=0x00,设置中断屏蔽寄存器,屏蔽所有中断;
  
  (9)CR=0x61,选择页1的寄存器;
  
  (10)CURR=0x4d,CURR是RTL8019AS写内存的指针,指向当前正在写的页的下一页,初始化时指和0x4c+1=0x4d;
  
  (11)设置多址寄存器MAR0~MAR5,均设置为0x00;
  
  (12)设置网卡地址寄存器PAR0~PAR5;
  
  (13)CR=0x22,选择页1的寄存器,进入正常工作状态。
  
  图289C52单片机控制RTL8019AS实现以太网通讯的接口电路框图
  
  4.3发送帧
  
  将待发送的数据按帧格式封装,通过远程DMA通道送到RTL8019AS中的发送缓存区,然后发出传送命令,完成帧的发送。需要设置以太网目的地址、以太网源地址、协议类型,再按所设置的协议类型来设置数据段。之后启动远程DMA,数据写入RTL8019AS的RAM,再启动本地DMA,将数据发送网上。
  
  RTL8019AS无法将整个数据包通过DMA通道一次存入FIFO,则在构成一个新的数据包之前必须先等待前一数据包发送完成。为提高发送效率,设计将12页的发送缓存区分为两个6页的发送缓存区,一个用于数据包发送,另一个用于构造端的数据包,交替使用。
  
  5软件的调试与验证
  
  调试环境包括RTL8019AS实验板、PC机(带网卡)以及网线。
  
  用C51语言编程,实现TCP/IP协议中ARP数据帧的收发。
  
  实验中,单片机首先构造一个ARP请求包发送给PC机,PC机收到后会发送一个ARP应答包给单片机,单片机收到该应签包后再发一个ARP请求包给PCF机,如此不断循环,来测试系统的性能。在PC机上采用Sniffer软件如Windump软件来监视(或截获)PC机网卡接收ARP包的情况,取得了满意的效果。
  
  

《用51单片机控制RTL8019AS实现以太网通讯(第4页)》
本文链接地址:http://www.oyaya.net/fanwen/view/145073.html

★温馨提示:你可以返回到 电子通信论文 也可以利用本站页顶的站内搜索功能查找你想要的文章。