Rohoo
驱动牛犊
驱动牛犊
  • 注册日期2004-07-06
  • 最后登录2005-05-27
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1743回复:7

请教:各位大侠看过来阿!关于68013的AUTO传输问题。

楼主#
更多 发布于:2004-11-03 15:04
我的68013采用SLAVE模式,外接一个CPLD,以实现端点2的AUTOOUT传输。不断的向SLAVE发送包大小为512的数据流,CPLD在外面读数据。但是一段时间之后(时好时坏,可以正常工作的时间也不等),有可能出错。GetLastError()函数提示说我的USB设备没有行使功能,不知道为什么,各位请指教哈:)
gdutchen
驱动牛犊
驱动牛犊
  • 注册日期2004-08-23
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分1分
  • 威望1点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2004-11-03 16:29
没有遇到你所说的问题,可能是你的Slave FIFO方式与CPLD时钟不匹配。可以考虑使用从68013的时钟输出引脚引出供CPLD作时钟信号,这样就可以时钟匹配了,应该不会发生丢数据的情况。我使用FPGA/CPLD时,都是用的68013的时钟,没有用外接晶振。
Rohoo
驱动牛犊
驱动牛犊
  • 注册日期2004-07-06
  • 最后登录2005-05-27
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2004-11-04 09:27
我接的也是68013的IFCLK引脚啊,48MHZ。
Rohoo
驱动牛犊
驱动牛犊
  • 注册日期2004-07-06
  • 最后登录2005-05-27
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2004-11-04 09:38
我想到一个问题,就是在我的固件程序中 REVCTL = 0x01; 的时候才能够传输数据,按照Cypress的资料上面说得是REVCTL = 0x03才可以的啊?但是我把REVCTL 设置成 0x03的时候就不行了,是不是因为这个原因啊?各位做过的你们的固件程序是怎么设置的呢?
seedriver
驱动牛犊
驱动牛犊
  • 注册日期2004-11-04
  • 最后登录2004-11-29
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2004-11-04 14:25
应该是REVCTL = 0x03,可能初始化配置有问题。空满标志也要用,引到逻辑中,否则会数据溢出或丢失的。
huoxy
驱动小牛
驱动小牛
  • 注册日期2002-03-01
  • 最后登录2014-02-24
  • 粉丝0
  • 关注0
  • 积分21分
  • 威望4点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2004-11-04 14:54
我认为 应该 REVCTL = 0x00。
好好学习,天天向上,做一个乖宝宝。
Rohoo
驱动牛犊
驱动牛犊
  • 注册日期2004-07-06
  • 最后登录2005-05-27
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2004-11-04 15:18
空满标志都用了,我认为控制逻辑上面的时序应该是对的了。就是那个控制限定数据传输量的PF标志我虽然在固件程序中间设置了,但是没有在控制逻辑中间用到(好像也不需要用吧?),只是用了EF喝FF。我再论坛上面看到好多人设置的REVCTL = 0x03。资料中间说一定得把他设置成0x03。是不是还有什么设置我没有做啊?
Rohoo
驱动牛犊
驱动牛犊
  • 注册日期2004-07-06
  • 最后登录2005-05-27
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2004-11-05 14:37
自己顶一下!
游客

返回顶部