打印

请教关于USB Slave FIFO的OUT传输

[复制链接]
3458|7
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
tom_2_2|  楼主 | 2011-2-14 11:27 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我想通过SlaveFIFO模式把主机数据通过EZ-USB传输给外部其它的MCU。外部MCU的数据通过SlaveFIFO模式已经用CYpress Console软件不断的读出来了!
  可是我把端点2设为OUT端点用CYpress Console软件确发不出来,提示Bulk OUT failed
  下面是我关于设置端点的固件程序。请前辈们给我指出问题!
BREAKPT &= ~bmBPEN;      // to see BKPT LED go out TGE
   Rwuen = TRUE;            // Enable remote-wakeup
   OEE=0xFF;
   IOE=0x00;
   // set the CPU clock to 48MHz
   CPUCS = ((CPUCS & ~bmCLKSPD) | bmCLKSPD1) ;
   // set the slave FIFO interface to 48MHz
   //IFCONFIG |= 0x40;
   IFCONFIG=0xcb;
   SYNCDELAY;
   REVCTL=0x03;
   SYNCDELAY;
   EP1OUTCFG = 0xA0;
  EP1INCFG = 0xA0;
  SYNCDELAY;                    // see TRM section 15.14
  EP2CFG = 0xA2;
  SYNCDELAY;                    
  EP4CFG = 0xA0;
  SYNCDELAY;                    
  EP6CFG = 0xE2;
  SYNCDELAY;                    
  EP8CFG = 0xE0;
  SYNCDELAY;
  FIFORESET=0x80;
  SYNCDELAY;
  FIFORESET=0x08;
  SYNCDELAY;
  FIFORESET=0x00;
  SYNCDELAY;
  EP6FIFOCFG=0x0C;
  SYNCDELAY;
  EP2FIFOCFG=0x10;
  
  SYNCDELAY;
  EP2AUTOINLENH=0x02;
  SYNCDELAY;
  EP2AUTOINLENL=0x00;
SYNCDELAY;                    
  EP2BCL = 0x80;                // arm EP2OUT by writing byte count w/skip.
  SYNCDELAY;                    
  EP2BCL = 0x80;
  SYNCDELAY;                    
  EP4BCL = 0x80;                // arm EP4OUT by writing byte count w/skip.
  SYNCDELAY;                    
  EP4BCL = 0x80;   
  FIFORESET=0x80;
  SYNCDELAY;
  FIFORESET=0x02;
  SYNCDELAY;
  FIFORESET=0x04;
  SYNCDELAY;
  FIFORESET=0x06;
  SYNCDELAY;
  FIFORESET=0x08;
  SYNCDELAY;
  FIFORESET=0x00;
  SYNCDELAY;
  // enable dual autopointer feature
  AUTOPTRSETUP |= 0x01;

相关帖子

沙发
tom_2_2|  楼主 | 2011-2-14 15:56 | 只看该作者
现在可以PC机数据输出给EZ-USB了,但是有时候明明FIFO是空的,从空标志FLAGC判断出,但是从PC就是不能发数据给EZ-USB,一定要重新下载程序到EZ-USB后,重新开始。
  不知道这是什么原因?

使用特权

评论回复
板凳
tom_2_2|  楼主 | 2011-2-14 21:16 | 只看该作者
程序已经调出来了。

可是我发现我的Slave FIFO OUT传输速度太慢,只有300KB/S
我PC不断的发数据,EZ-USB接收,外面的AVR-单片机就从FIFO读出数据SLRD=0;
    SLRD=1;没有其它的处理。
怎么只有这么点速度?






使用特权

评论回复
地板
tom_2_2|  楼主 | 2011-2-14 22:01 | 只看该作者
请教USB的传输速度用什么软件可以精确测量?
我是在Bus Hound软件的Devices下看到的,这个速度是否正确?

使用特权

评论回复
5
dqyubsh| | 2011-2-15 00:08 | 只看该作者
CY最新驱动里有个Screamer.exe,可以测试铜须速率。

使用特权

评论回复
6
tom_2_2|  楼主 | 2011-2-15 11:44 | 只看该作者
楼上的 dqyubsh
能不能给我发一个测USB传输速度的Screamer.exe软件啊?我找不到!
我邮箱是tom_2_2@sina.com

使用特权

评论回复
7
dqyubsh| | 2011-2-15 15:23 | 只看该作者

使用特权

评论回复
8
yanli1226| | 2012-10-10 17:20 | 只看该作者
楼主可以分享一下调试正确的代码吗?我正在调这个,可是提示Bulk OUT failed,Bulk IN failed,多谢了

使用特权

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

本版积分规则

40

主题

319

帖子

1

粉丝