arduino虚拟键盘开发环境及对应键盘按键代码
Posted hjf-log
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了arduino虚拟键盘开发环境及对应键盘按键代码相关的知识,希望对你有一定的参考价值。
今天的stm32系列的开发先断更一天,来玩玩淘宝卖的虚拟键盘的硬件(oled屏幕坏了,等一个新屏幕)
不知道小伙伴有没有见过下图这几款淘宝买的标题叫硬件虚拟键盘的设备
上图这几款虚拟键盘其实都是用的同一个IC,多的ESP8266和内存卡插槽啊都是这个IC功能的扩展
如果想了解ESP8266远程控制键盘或者内存卡提取写好脚本控制键盘可以上github找到他们的对应开源代码
之后有空我也会更新一下我在github上面使用开源代码的效果
那么这篇就介绍一下虚拟键盘的开发环境的搭建以及简单的使用方法
介绍硬件设备:
虚拟键盘IC:atmega32u4
我使用的是下图这款,当然没有上面淘宝卖的好看,但是功能一样嘛
上面卖的要50到70之间,我这个只花15块钱,多找找就有这种惊喜价格,这IC自己购买的话也要13块钱左右
开发环境搭建
1、先从arduino官网下载arduino IDE,下载地址:https://www.arduino.cc/en/Main/Software
这里我用的系统是win10,下载的IDE也是win10免安装版,直接解压找到exe文件就可以使用了,我jio得比较方便
2、下载完成以后打开arduino IDE--文件--首选项,在附加开发板管理器网址填入http://www.arduino.cn/thread-5838-1-1.html,点击好
3、打开项目–加载库中选择点击Keyboard,会将#include <Keyboard.h>自动添加到代码中
4、在工具–开发板中选择arduino Leonardo,这个开发板的IC就是atmega32u4,配置好这几部以后就可以开始测试一下硬件虚拟键盘了
来进行使用实战测试
我们先弄一个打开windows下的cmd
过程就是:按下win+R然后填入cmd后点击回车
1 #include <Keyboard.h> 2 //为什么加入延时 3 //每个按键按下和释放都需要一个短暂的时间间隔 4 //避免按下和释放间隔时间太短电脑还没识别到按下 5 void setup() { 6 delay(1000); 7 Keyboard.press(KEY_LEFT_GUI); 8 Keyboard.press(‘r‘); 9 delay(100); 10 Keyboard.releaseAll(); 11 Keyboard.print("cmd"); 12 delay(1000); 13 Keyboard.press(KEY_RETURN); 14 delay(100); 15 Keyboard.release(KEY_RETURN); 16 17 } 18 19 void loop() { 20 21 }
这里没有过程视频,不过确实是打开了cmd界面
注意一下要关闭输入法,不然打到输入法里面去了
我们在看一下windows下的设备显示
未接入开发板时
这个是笔记本自带的键盘来的
接入开发板时
然后就可以看到多了一个HID键盘啦
这个端口COM5是因为这款IC自带串口,不仅方便直接写入重新,还剩下了一个USB转串口芯片
真的很好用!!!
注意事项:
按下必须和释放配合使用
按下Keyboard.press()
释放Keyboard.release()
另外咱整理了一些代码中对应的硬件虚拟键盘键位的定义
也可以在Keyboard.h的库中查看
1 键盘左边ctrl --- KEY_LEFT_CTRL 2 键盘左边shift --- KEY_LEFT_SHIFT 3 键盘左边alt --- KEY_LEFT_ALT 4 键盘左边win --- KEY_LEFT_GUI 5 键盘右边ctrl --- KEY_RIGHT_CTRL 6 键盘右边shift --- KEY_RIGHT_SHIFT 7 键盘右边alt --- KEY_RIGHT_ALT 8 键盘右边win --- KEY_RIGHT_GUI 9 方向键上 --- KEY_UP_ARROW 10 方向键下 --- KEY_DOWN_ARROW 11 方向键左 --- KEY_LEFT_ARROW 12 方向键右 --- KEY_RIGHT_ARROW 13 空格键 --- KEY_BACKSPACE 14 tab键 --- KEY_TAB 15 回车键 --- KEY_RETURN 16 esc键 --- KEY_ESC 17 insert键 --- KEY_INSERT 18 delete键 --- KEY_DELETE 19 page up键 --- KEY_PAGE_UP 20 page down键 --- KEY_PAGE_DOWN 21 home键 --- KEY_HOME 22 end键 --- KEY_END 23 capslock键 --- KEY_CAPS_LOCK 24 F1 --- KEY_F1 25 F2 --- KEY_F2 26 F3 --- KEY_F3 27 F4 --- KEY_F4 28 F5 --- KEY_F5 29 F6 --- KEY_F6 30 F7 --- KEY_F7 31 F8 --- KEY_F8 32 F9 --- KEY_F9 33 F10 --- KEY_F10 34 F11 --- KEY_F11 35 F12 --- KEY_F12
结束
这款IC还可以模拟鼠标的移动,真是多功能
有空的话我做一个硬件的外挂来玩一下,之后也会更新一下鼠标移动的开发
今天也是充满希望的一天
以上是关于arduino虚拟键盘开发环境及对应键盘按键代码的主要内容,如果未能解决你的问题,请参考以下文章
详解如何基于Arduino兼容板Digispark实现虚拟键盘与鼠标
Proteus仿真Arduino UNO +74C922键盘解码驱动4X4矩阵键盘
Proteus仿真Arduino UNO+数码管显示4x4键盘矩阵按键