c语言读取电脑usb端口函数,C语言如何让调用笔记本的USB接口啊,求实例

匿名用户

1级

2012-03-14 回答

没有调用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驱动

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值