版块
论坛
喜欢
话题
应用
搜索
登录
注册
aqdy001的个人空间
访问量
0
新鲜事
帖子
资料
http://bbs3.driverdevelop.com/index.php?m=space&uid=80887
cy7c68013数据丢失问题
我作了一个数据采集系统,用的是CY的通用驱动程序。在主机应用程序里,我将每次读取的数据设置成32k,采出来的数据发现每块内(32k)的数据是完整的,可是块与块之间的数据发生了丢失的情况。这到底是什么原因了,请老大们体体意见!!!!
回复
(
19
)
2004-11-21 18:33
来自版块 -
USB驱动开发
◆
◆
表情
告诉我的粉丝
提 交
jinghuiren
:
那应该不会出现你说的问题,我当初做的时候1M的实时传输都不会出现问题的,是不是你用得是1.1模式?如果是2.0是不会出现的 告诉你一个简单的方法,降低你的采样率,这样就知道是不是主机方接受速度不够造成的数据丢失了
(2004-11-30 09:35)
回复
AllenZh
:
我没有直接使用通用驱动
(2004-11-28 22:55)
回复
aqdy001
:
AllenZh能提点建议吗
(2004-11-24 16:33)
回复
AllenZh
:
10M/s ,不用外加RAM能实现吗? fimeware不是我做的,我只做了驱动,所以不知道他们加了内存没有,不过他告诉我有最大4k的buffer,但以前他使用时在两个包之间有丢数据,使用我的驱动后就OK了
(2004-11-24 15:08)
回复
AllenZh
:
我用的是CY的通用驱动程序哑,难道这也有问题。 YES
(2004-11-24 14:57)
回复
shen_51000
:
10M/s ,不用外加RAM能实现吗?
(2004-11-24 14:50)
回复
aqdy001
:
我用的是CY的通用驱动程序哑,难道这也有问题。
(2004-11-24 14:45)
回复
AllenZh
:
因为你设备端写数据的速率太快了,应该至少大于1MB/s,你可以尝试把速率降到1MB/s以下,这样用就不会丢失数据了,或者将双缓冲改成四缓冲,这样也许能好一点。 根本原因:主机每次发送一个URB需要0.2ms左右的时间,也就是说两个URB之间会有一个0.1ms以上的时间间隙,...
(2004-11-24 14:29)
回复
aqdy001
:
多谢jinghuiren。我的采样率只有40k,没有你说的那么快。我觉的根本原因就象你说的那样,但不知道怎么把驱动改成异步io模式。
(2004-11-24 12:37)
回复
jinghuiren
:
因为你设备端写数据的速率太快了,应该至少大于1MB/s,你可以尝试把速率降到1MB/s以下,这样用就不会丢失数据了,或者将双缓冲改成四缓冲,这样也许能好一点。 根本原因:主机每次发送一个URB需要0.2ms左右的时间,也就是说两个URB之间会有一个0.1ms以上的时间间隙,...
(2004-11-24 12:06)
回复
1
2
下一页 »
aqdy001
加关注
写私信
0
关注
0
粉丝
24
帖子
返回顶部