打印

usb键盘枚举成功之后,怎么处理键盘的led状态?

[复制链接]
7761|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
bsaver|  楼主 | 2012-4-25 16:47 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我用的 PSoC Designer,使用自带的 USB 模块,编写了一个键盘程序。请问键盘三个指示灯[num、caps、scroll]是怎么处理的?主机发送点灯命令后,是应该在 set_report 里面来获得数据的,但是我看了一整天,也没有看明白 psoc 是怎么来处理的。请大家帮帮忙指点一下,不胜感激!
沙发
bsaver|  楼主 | 2012-4-26 08:35 | 只看该作者
补充一下:我想知道主机是否发出了点灯命令,然后数据在哪里可以取得?

使用特权

评论回复
板凳
bsaver|  楼主 | 2012-4-27 13:53 | 只看该作者
仔细解释一下,我只是想提取主机 set_report 请求,发送来的数据。在USB模块生成的函数中,怎么取出来这个请求的数据呢?请大家帮忙指点下,谢谢!

使用特权

评论回复
地板
bsaver|  楼主 | 2012-4-29 22:46 | 只看该作者
本帖最后由 bsaver 于 2012-4-29 22:48 编辑

我试出来了,自己添加了变量,在Set_Report 函数中,将valueHi放入变量中。在EP0 OUT处理中,判断变量是否为2,如果是则将变量置1。自己添加函数,将变量的值返回,如果是1,返回1,并将变量清零;否则不处理,并返回0。如果函数返回1,读取EP0DATA,即主机的输出值,此处为键盘的点灯数据。

如此笨的方法,写出来深感惭愧。如果大家有更好的办法,希望能多多指教。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

4

主题

51

帖子

1

粉丝