网站首页
IC库存
IC展台
电子资讯
技术资料
PDF文档
我的博客
IC72论坛
ic72 logo
资料首页最新产品 技术参数 电路图 设计应用 解决方案 代理商查询 IC替换 IC厂商 电子辞典
关键字: 技术文章 PDF资料 IC价格 电路图 代理商查询 IC替换 IC厂商 电子辞典

单片机驱动程序的设计(代码 RTL8019AS)

相信大家都装过电脑,安装完操作系统后我们就需要装各种驱动程序。单片机加上网卡芯片后也需要驱动程序才能正常工作,下面就谈谈单片机驱动程序的设计。

  RTL8019AS数据收发是通过一种称为DMA方式进行的,按数据链路不同划分为远程DMA(remote DMA)和本地DMA(local DMA)两部分。远程DMA完成主处理器和网卡内部缓冲区数据交换,本地DMA完成缓冲区数据发送,CPU发送数据时,先将一帧数据通过远程DMA通道送到RTL8019AS的发送缓冲区,然后发出传送命令。当 RTL8019AS收到一帧正确数据后,将其存放在接收缓冲区并置位相关寄存器或产生中断。要明白以上过程我们首先要清楚RTL8019AS缓冲区结构和相关DMA控制寄存器。

  RTL8019AS内部有16K byte SRAM,分为256字节/页,只能按页操作,地址从0x40~0x7F,共64页组成环形队列作为收发缓冲区。与之相关的寄存器有 PSTART(Page Start Register), PSTOP(Page Stop Register), BNRY(Boundary Register),CURR(Current Page Register)四个。PSTART 定义接收缓冲区起始地址,PSTOP定义接收缓冲区结束地址,BNRY 指向队列中没有被主机读取的第一个数据包地址,CURR指向将要接收数据包的存储起始地址。我们可以简单的理解为CURR为写指针,而BNRY为读指针。 CURR指针由RTL8019AS自动改变,BNRY由程序控制。

  与DMA相关的寄存器如下图所示:


    其中TPSR为发送缓冲区起始地址,TBCR为要发送的字节数,RSAR为远程DMA起始地址,RBCR为远程DMA字节数。其他寄存器我们很少用到,在此不作介绍。

 

热门搜索:2838283 2986122 2866352 2866569 TLM609NS 1553DBPCB BQ25895MRTWR PS3612RA B40-8000-PCB 48VDCSPLITTER LS606M 2839240 PS4816 PM6NS 2838322 PS-615-HG-OEM TLM825GF SS3612 BT05-F250H-03 602-15 UL17CB-15 PS480806 BT-M515RD 2804623 ULTRABLOK
COPYRIGHT:(1998-2010) IC72 达普IC芯片交易网
客户服务:service@IC72.com 库存上载:IC72@IC72.com
(北京)联系方式: 在线QQ咨询:点击这里给我发消息 联系电话:010-82614113 传真:010-82614123
京ICP备06008810号-21 京公网安备 11010802032910 号 企业资质