No.24765 作者:jingzhu420 邮件:lijingzhu123489@163.com ID:81991 登陆:12次 文章数:7篇 最后登陆IP:116.22.78.154 最后登陆:2008/4/15 13:22:06 注册:2007/7/2 11:52:24 财富:146 发帖时间:2007/8/20 17:42:36 发贴者IP:61.144.119.84 标题:jingzhu420:求助!!!!!!!!!!8019接收中断的配置问题!!小弟给各位大侠鞠躬了!!!!! 摘要:No.24765求助!!!!!!!!!!8019接收中断的配置问题!!小弟给各位大侠鞠躬了!!!!! 我遇到的问题是这样的:我想让我的lwip能用中断的方式接收数据包,但是我在写完中断这部分程序后发现,当rtl8019as在接收到数据包后并没有发送中断信号给CPU(用示波器观察没有中断信号产生).用轮询的方式就可以接收到网络上的ARP广播,这说明数据包肯定是被8019接收到了,但是却没有产生中断,我怀疑是网卡初始化配置的问题,我将IMR写入了0xff,初始化代码如下: 想了好久都没想通,请各位大侠帮帮忙,给我这个菜鸟指点一下迷津,我给各位鞠躬了. void NicInit(void) { u8_t i; u8_t j; IODIR=IODIR|NET_RST; IOCLR=NET_RST; for(i=0;i <200;i++) { for(j=0;j <200;j++); } IOSET=NET_RST; for(i=0;i <200;i++) { for(j=0;j <200;j++); } IOCLR=NET_RST; for(i=0;i <200;i++) { for(j=0;j <200;j++); } WriteToNic(0x1f,0x00); for(i=0;i <200;i++) { for(j=0;j <200;j++); } /********************************************************************** 1.Reg00命令寄存器: CR,命令寄存器,地址偏移量00H,为一个字节 位: 7 6 5 4 3 2 1 0 名字: PS1 PS0 RD2 RD1 RD0 TXP STA STP //============================================ 2. RD2,RD1,RD0: 这3个位代表要执行的功能。 0 0 1 : 读网卡内存 0 1 0 : 写网卡内存 0 1 1 : 发送网卡数据包 1 * * : 完成或结束DMA的读写操作 //============================================ 3.TXP位置1时发送数据包,发完自动清零 //============================================ 4. STA,STP: 这两个位用来启动命令或停止命令 1 0 启动命令 0 1 停止命令 //============================================ ********************************************************/ WriteToNic(0x00,0x21); //使芯片处于停止模式,这时进行寄存器设置 for( ......
>>返回讨论的主题
|
老古网执行:31毫秒 最大:4266毫秒 查询6次
|
|