一直等到FIFO中有数据时此函数才能执行完

[复制链接]
1418|21
 楼主| liuzaiy 发表于 2019-1-24 11:05 | 显示全部楼层 |阅读模式
用函数 DeviceIoControl (hDeviceR,
     IOCTL_EZUSB_BULK_READ,
         &bulkControlR,
         sizeof(BULK_TRANSFER_CONTROL),
         &buf[0],
         len,
         &nBytes,
         NULL);
读取数据,当读不到数据时,进程就会阻塞,一直等到FIFO中有数据时此函数才能执行完
yinxiangh 发表于 2019-1-24 11:08 | 显示全部楼层

然后呢
 楼主| liuzaiy 发表于 2019-1-24 11:11 | 显示全部楼层
要不然一直在等待数据,仿佛死机般
ousj 发表于 2019-1-24 11:14 | 显示全部楼层
用法有问题
 楼主| liuzaiy 发表于 2019-1-24 11:17 | 显示全部楼层
我想让其等待几秒后,就跳出,请问怎样才能实现!万分感谢!
 楼主| liuzaiy 发表于 2019-1-24 11:20 | 显示全部楼层
为什么不用XferData() API进行数据传输呢?
xxmmi 发表于 2019-1-24 11:23 | 显示全部楼层
对,再加个TimeOut()限定时间。
 楼主| liuzaiy 发表于 2019-1-24 11:25 | 显示全部楼层
你好,没看到过XferData() API啊,能详细说下吗?
kangzj 发表于 2019-1-24 11:28 | 显示全部楼层
CyAPI.pdf里有关XferData的说明
zwll 发表于 2019-1-24 11:32 | 显示全部楼层
对的,CyAPI.pdf文件有详细的说明
 楼主| liuzaiy 发表于 2019-1-24 11:34 | 显示全部楼层
我们没用CyAPI这个库
chuxh 发表于 2019-1-24 11:37 | 显示全部楼层
用个线程实现,可能会好些。
juventus9554 发表于 2019-1-24 11:42 | 显示全部楼层
另外,还可以通过CYAPI数据手册中的一个更改时间的函数,好像是timeout()来更改等待的时间也可以。
 楼主| liuzaiy 发表于 2019-1-24 11:47 | 显示全部楼层
我们就是用的线程另外,“还可以通过CYAPI数据手册中的一个更改时间的函数,好像是timeout()来更改等待的时间也可以。”CYAPI我们没有用,能详细说说吗?
stly 发表于 2019-1-24 11:50 | 显示全部楼层
你看看CyAPI文档,对XferData(),TimeOut()有使用说明,讲的很详细
 楼主| liuzaiy 发表于 2019-1-26 18:26 | 显示全部楼层
请问CyAPI.lib,CyAPI.h,CyUsb.sys等这些在哪里能下载到?
llljh 发表于 2019-1-26 18:29 | 显示全部楼层

CY7C68013有两个版本的驱动程序,早期版本开放源代码但不支持异步通信,可通过多线程模拟异步通信.
最新版本的驱动程序不开放源代码但支持异步通信
dingy 发表于 2019-1-26 18:33 | 显示全部楼层
对,可设超时等待时间.具体的可去cypress官方网站瞅瞅
pengf 发表于 2019-1-26 18:36 | 显示全部楼层

对,有一个驱动开发包.
CyAPI.lib是基于新版本驱动的
 楼主| liuzaiy 发表于 2019-1-26 18:39 | 显示全部楼层
CyAPI.lib是基于新版本驱动的”这个我怎么下载的不能安装啊,是不是下载的不对。哪位有这些文件的能不能传上来共享下,谢谢!!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

735

主题

7546

帖子

2

粉丝
快速回复 在线客服 返回列表 返回顶部