打印

FX2:FIFO复位不正常的问题

[复制链接]
3246|4
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
wowow|  楼主 | 2007-12-1 15:40 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
程序中建立通信时要复位一下FIFO,清除掉以前可能因为通信中断遗留的数据。我在在Vender Command里加了一断复位FIFO的代码,但是复位过后,OUT EP死活发不了数据了。IN EP似乎没有受影响。网上搜了一下,相关讨论都是第一次复位的,我在第一次复位没有问题。REVCTL,OUTPKTEND之类的以及命令的顺序也试了不少种组合。有谁有成功的经验?

相关帖子

沙发
vongy| | 2007-12-1 17:29 | 只看该作者

检查一下有没有开OUT中断

使用特权

评论回复
板凳
wowow|  楼主 | 2007-12-1 19:55 | 只看该作者

没有开

   EZUSB_IRQ_ENABLE();            // Enable USB interrupt (INT2)
   EZUSB_ENABLE_RSMIRQ();            // Wake-up interrupt
   EIEX4=0; //Disable INT4

   INTSETUP |= (bmAV2EN | bmAV4EN);     // Enable INT 2 & 4 autovectoring

   USBIE |= bmSUDAV | bmSUTOK | bmSUSP | bmURES | bmHSGRANT;   // Enable selected interrupts
   
   EA = 1;                  // Enable 8051 interrupts

使用特权

评论回复
地板
andyliji| | 2010-9-21 10:29 | 只看该作者
我也出现了这种问题,结果主机发不命令了。

使用特权

评论回复
5
andyliji| | 2010-9-21 15:55 | 只看该作者
EZUSB_IRQ_ENABLE();            // Enable USB interrupt (INT2)
   EZUSB_ENABLE_RSMIRQ();            // Wake-up interrupt
   EIEX4=0; //Disable INT4

   INTSETUP |= (bmAV2EN | bmAV4EN);     // Enable INT 2 & 4 autovectoring

   USBIE |= bmSUDAV | bmSUTOK | bmSUSP | bmURES | bmHSGRANT;   // Enable selected interrupts
   
   EA = 1;                  // Enable 8051 interrupts

这不是开了中断嘛,怎么还说没有开。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

59

主题

649

帖子

3

粉丝