谁用到过RTL8019,有以下丢包的现象,有实际经验的看看,为何?
谁用到过RTL8019,有以下丢包的现象,有实际经验的看看,为何?
if (bnry!=curr) //此时表示有新的数据包在缓冲区里
{
//读取一包的前4个字节:4字节的8019头部
page(0);
reg09=bnry; //read page address high
reg08=0x00; //read page address low
reg0b=0x00; //read count high
reg0a=4; //read count low;
reg00=0x0a; //read dma
temp = reg10;
temp = reg10;
next_page = temp-1; //next page start-1
//就是这儿,读出next page结果老是和CURR有很
//大的出入,基本上是错的,都是大于80H,小于4CH
//不应该是这样,基本上应该等于CURR,如果在这
//种去读RAM的数据,都是错误的,只要丢弃
len = reg10;
temp = reg10;
len += temp < <8;
reg0b=0x00; reg0a=0x00; reg00=0x22;//complete dma page 0
............
}
哪位遇到过以上的情况,麻烦赐教赐教!
我是把以上的C语言翻译汇编后来调试的
发表时间:2005年12月23日22:21:47