打印

68013 slavefifo BULK传输有时会失败

[复制链接]
1235|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
雨天遮阳|  楼主 | 2015-12-1 16:11 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 雨天遮阳 于 2015-12-1 16:15 编辑

下位机68013接fpga。上位机用cy concole接收从FPGA传来的数据,但经常会出现上位机卡死的现象,用逻辑分析仪看到总线不断IN/NAK,反复插拔几次才能正常使用,今天彻底不能用了。我就用电压表量了一下FIFO标志位空满都是有效,由于fifo满,fpga无法给fifo数据,但是空满的标志位不能同时有效啊,不知道是什么问题。下面是我的固件代码:
  IFCONFIG |= 0xCB;    //48MHz  Slave FIFO  ASYNC  异步fifo
  SYNCDELAY;
  REVCTL=0x01;
  SYNCDELAY;
  FIFORESET=0x80;           //FIFORESET
  SYNCDELAY;

  EP6CFG=0xE2;                   //VAILID=1  DIR:IN   BULK  512B  2xbuf
  SYNCDELAY;
  EP6FIFOCFG=0x0C;           //AUTOIN=1  ZEROLENIN=1  WORDWIDE=0:8bits
  SYNCDELAY;
  EP6CS|=0x10;                   //FIFO Packet=1
  SYNCDELAY;

  PINFLAGSAB=0x00;           //FLAGB for full And FLAGC for empty
  SYNCDELAY;
  PINFLAGSCD=0x00;
  SYNCDELAY;

  FIFOPINPOLAR=0x00;
  SYNCDELAY;
  EP6AUTOINLENH=0x02;        //AUTOINLEN=512B
  SYNCDELAY;
  EP6AUTOINLENL=0x00;
  SYNCDELAY;

  FIFORESET=0x86;
  SYNCDELAY;
  FIFORESET=0x00;
  SYNCDELAY;
主要不知道问题出在哪块,FIFO也按照文档中做的清除了fifo中的数据,如果FIFO满应该IN可以把数据要上来啊
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2

主题

17

帖子

0

粉丝