导航: 老古网老古论坛XMOS公共讨论区XMOS开源项目区单片机程序设计嵌入式系统广告区域
→初学者:老古:帮帮我

* 7019: 初学者:老古:帮帮我

   梁栋 
梁栋发表的帖子 

 初学者:老古:帮帮我
老古大侠:
    您好!
    我现在正利用MCU驱动RTL8019AS芯片以实现嵌入式以太网。在您网页上看了关于
RTL8019AS以太网芯片的文章以后,收获很多。但对你DMA方式存取RTL8019AS内部RAM不太清
楚,您说的程序中(读取网卡地址时)涉及到DMA操作,依照你的说法,DMA过程似乎是这
样:
DCR=0xc8;
void write_dma( )       /*DMA写*/
{
 ........               /*设置DMA起始地址及字节数*/
 reg00=0x12;            /*启动DMA*/
 for(i=0;i<count;i++)
 {
 reg10=buffer[i];       /*DMA写入???此处有疑问*/
 }
 ........
}
疑问:
是不是在每一次向DMA通道reg10写数据前后需要IOCHRDY(I/O准备好)信号的配合呢?这样
的话以上循环体是不是可以写为:
IOWB=0;              /*I/O写信号*/
for(i=0;i<count;i++)
{
    reg10=buffer[i];
    IOCHRDY=0;
    IOCHRDY=1;
}
IOWB=1;

同理再DMA读取操作时:
IORB=0;
for(i=0;i<coount;i++)
{
    IOCHRDY=0;
    buffer[i]=reg10;
    IOCHRDY=1;
}
IORB=1;
请不吝赐教!麻烦您了大侠!


发表时间:2002年4月10日15:57:00

  
回复该帖

本主题共有 2 帖,分页:>>>>>该主题的所有内容[2]条

 *树形目录 只列出部分跟帖的标题以及简单的摘要信息 该主题的部分跟帖如下:

  7021.[详细]我没有管IOCHRDY,结果也可行。
摘要:......(无内容)
- [tuoniao35][945次] 2002年4月10日

[上一篇帖子]:怎么没人应答呢?老古,你的看法呢?
[下一篇帖子]:自造简单的汉字应该是可以的