本帖最后由 新曲难觅旧知音 于 2023-11-10 20:41 编辑
又是好多天没更新,今天更新下usb hid设备使用
起因的是因为最近在打游戏,这个手的反应速度跟不上脑子。所以做一个解放手速的东西。
代码实现起来很简单啊。官方给提供了usb的相关例程,这里我们打开看一下。在官方例程上修修改改就出来了。
先打开例程提供的相关工程。然后把不需要的部分给删除掉。
LED这就不需要了,给删掉。不是一个很喜欢光效的人。 精简一下,最后只保留usb的初始化部分和时钟配置就够了。
然后初始化,主要的就是描述符的配置。这个之前帖子已经讲过好几次了,这里就不罗嗦讲了。有兴趣的可以去翻一下之前的帖子。
看一下例程本来的逻辑配置
如果USER_BUTTON被按下的话,就发送右键被按下的指令,然后将press_mouse 标志位置一。然后下面的else if成立,延时10ms后发送按键释放指令。这样一次按键按下就发送完毕。理清逻辑后就可以写我们自己的程序了。
此程序逻辑就是如果按键USER_BUTTON按下,发送左键被按下指令,然后延时10ms后发送左键松开指令。一直重复该步骤500次。 编译下看看
有个警告,是那个for循环里定义的变量,不用管它。 下面开始烧录看一下程序现象。
看下速度,一秒50下,速度直接起飞啊。比榜一高出8分,可以说是遥遥领先啊。 因为我用不到这么快的速度哈。就给设置成循环点击10次吧。
先到这里不说了,我先上号测试一下。
|