如何使用C语言编程读取从电脑usb接口的信息。

我有一块能发送信息到电脑usb接口的单片机学习版,我也试过使用软件接收usb的信息,但是我想要一个用C语言来编写的可以接收usb信息的源代码那么如何。我想看看对应的程序日... 我有一块能发送信息到电脑usb接口的单片机学习版,我也试过使用软件接收usb的信息,但是我想要一个用C语言来编写的可以接收usb信息的源代码那么如何。我想看看对应的程序日后好让我自己进行编写对应的程序。 展开
 我来答
du瓶邪
2015-08-01 · TA获得超过2.4万个赞
知道大有可为答主
回答量:1.7万
采纳率:100%
帮助的人:2943万
展开全部
可以打开USB接口上的设备,或者打开USB控制器,那涉及到windows的驱动访问。
一般访问设备使用CreateFile打开设备,然后使用ReadFile/WriteFile读写设备。
比如:
HANDLE hFile = CreateFile(..., FILE_FLAG_OVERLAPPED, ...); //指定以异步方式打开
BYTE bBuffer[100];
OVERLAPPED o = { 0 };
o.Offset = 345;

BOOL bReadDone = ReadFile(hFile, bBuffer, 100, NULL, &o); // bReadDone 指定I/O请求是不是以同步方式打开
DWORD dwError = GetLastError();

if (!bReadDone && (dwError == ERROR_IO_PENDING)) { //异步方式打开
// The I/O is being performed asynchronously; wait for it to complete
WaitForSingleObject(hFile, INFINITE);
bReadDone = TRUE;
}
if (bReadDone) {
// o.Internal contains the I/O error
// o.InternalHigh contains the number of bytes transferred
// bBuffer contains the read data
} else {
// An error occurred; see dwError
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
bigbatcn
2013-08-21 · TA获得超过402个赞
知道小有建树答主
回答量:467
采纳率:60%
帮助的人:100万
展开全部
这个不是一下子,就可以的。你需要学习usb驱动的知识。建议看看usb驱动资料。
追问
网上哪里有相关的知识看,我现在买了一本介绍usb的书,但是看起来稍微有点困难
追答
第一步 搞清楚什么是端点、路由器什么的观念
第二步 学习USB的自据过程
第三步 学习通过模式
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
mengfeiX618
2013-08-21
知道答主
回答量:42
采纳率:0%
帮助的人:11万
展开全部
Windriver很容易上手的。
追问
什么来的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
xu7473309
2013-08-27
知道答主
回答量:38
采纳率:100%
帮助的人:12.2万
展开全部
了解驱动通信什么表示1 什么表示0 就能得到信息 看驱动书籍貌似都跟操作系统有关 不好说 反正那东西需要相当水平 代码都是一次次试出来的 加油吧 不懂上网多查一下
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式