C语言如何让调用笔记本的USB接口啊,求实例

 我来答
tattackor
推荐于2018-03-29 · TA获得超过3.5万个赞
知道大有可为答主
回答量:5083
采纳率:94%
帮助的人:891万
展开全部

1.打开usb接口上的设备,或者打开usb控制器,涉及到windows的驱动访问。一般访问设备使用CreateFile打开设备,然后使用ReadFile/WriteFile读写设备。

2.例程:


    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
    }
junky163
推荐于2016-11-21 · TA获得超过348个赞
知道小有建树答主
回答量:179
采纳率:50%
帮助的人:3.6万
展开全部
没有调用USB接口这种说法吧
可以打开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
}
追问
如果我用C编程,能否实现从键盘输入十进制数,从计算机的USB接口输出其对应的二进制码呢?
追答
可以的
获取键盘输入最简单的就是使用键盘钩子,获取用户输入
向USB接口输出的话,你应该是向连接到USB接口的某个设备输出吧:打开这个设备,向他写数据。
但USB的设备各种各样,驱动也各异;你得清楚他是如何工作的,应该如何操作他。
如果是你自己做的USB设备,则需要做usb驱动或者使用通用的USB驱动
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
迅捷司鼐膊俳b9ade
2015-06-17 · TA获得超过532个赞
知道小有建树答主
回答量:291
采纳率:0%
帮助的人:212万
展开全部
在Windows平台下,一个USB接口,被称为串口,被视为一个设备,用OpenFile函数打开.
如果串口被成功打开,接下来就是利用一个DBC结构体对串口的相关参数进行设置.

接下来就可以使用ReadFile和WriteFile进行读写操作了.
具体做法与函数参数描述起来比较复杂,在此引入相关资料:
http://wenzhang.baidu.com/page/view?key=8a466838e3848226-1428159195
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式