小玩具Teensy
工具:Teensy 2++(随便淘宝买的,几十块钱)
大概长这个样子
简单说一下功能,第一次玩,也不是很熟悉:
这个东东可以插进电脑可以模拟成一个鼠标键盘,里面是烧好我们写好的代码,插进电脑,就会自动执行我们的代码,说简单点,就是这个东西可以模拟出鼠标键盘的操作
编译工具:
arduino-1.6.13-windows 这个 arduino IDE
TeensyduinoInstall 这个是Teensy插件
因为arduino 这个IDE里面是没有Teensy的,所以要装这个插件
下载地址:
https://downloads.arduino.cc/arduino-1.6.13-windows.exe
https://www.pjrc.com/teensy/td_133/TeensyduinoInstall.exe
这两个下载会很慢,如果你有国外的服务器的话,可以在服务器上面下载,然后再拉过来。
然后安装就行了
注意:Teensy插件只能是安装在arduino的安装目录里面
打开是这样子的:
在 工具--> 开发板 可以看到插件已经安装好
在编译过程中,有两个要配置的地方:
一定要选择好,不然会出错
然后到代码:
其实很简单,setup()函数是开启的函数,loop()函数是循环的
代码编程的思路就是,用代码来执行按下键盘的哪一个键
Keyboard.press(‘r’) 就是按下r键
Keyboard.release(‘r’) 就是松开r键
当然按下了就要松开,所以这两个一般都是成对出现的,但是两个之间可以有一定的延迟
下面是键值对照表:
Key Hexadecimal value Decimal value
KEY_LEFT_CTRL 0x80 128
KEY_LEFT_SHIFT 0x81 129
KEY_LEFT_ALT 0x82 130
KEY_LEFT_GUI 0x83 131
KEY_RIGHT_CTRL 0x84 132
KEY_RIGHT_SHIFT 0x85 133
KEY_RIGHT_ALT 0x86 134
KEY_RIGHT_GUI 0x87 135
KEY_UP_ARROW 0xDA 218
KEY_DOWN_ARROW 0xD9 217
KEY_LEFT_ARROW 0xD8 216
KEY_RIGHT_ARROW 0xD7 215
KEY_BACKSPACE 0xB2 178
KEY_TAB 0xB3 179
KEY_RETURN 0xB0 176
KEY_ESC 0xB1 177
KEY_INSERT 0xD1 209
KEY_DELETE 0xD4 212
KEY_PAGE_UP 0xD3 211
KEY_PAGE_DOWN 0xD6 214
KEY_HOME 0xD2 210
KEY_END 0xD5 213
KEY_CAPS_LOCK 0xC1 193
KEY_F1 0xC2 194
KEY_F2 0xC3 195
KEY_F3 0xC4 196
KEY_F4 0xC5 197
KEY_F5 0xC6 198
KEY_F6 0xC7 199
KEY_F7 0xC8 200
KEY_F8 0xC9 201
KEY_F9 0xCA 202
KEY_F10 0xCB 203
KEY_F11 0xCC 204
KEY_F12 0xCD 205
下面用简单的代码解析一下:
例如我们要求:在插件那个东东的时候,执行打开cmd
注意:可以看到,如果你的代码没错,颜色是这样子的,如果你输入了一些错误的函数,代码是黑色的
然后点击验证:
如果成功弹出
如果出错会自动定位在错误的行
这时候,按照提示插进你的Teensy,然后按那个黑色的按钮,按一下就好,会自动烧录,然后烧录成功会自动弹出,然后重新载入,这时候你不要动你的鼠标和键盘,代码会自动执行
会很快的执行打开cmd
注意一点就是,其实这个是模拟了键盘的输入,也就是说,输入点是在鼠标的光标处,如果在这时候,你点击了鼠标,可能就会导致代码的执行失败
在这个简单的代码上面,你可以添加很多东西,你能想到的一切东西,因为这个语言是C++,你可以运用上你的代码知识,添加上其他头文件,然后执行神奇的代码,这里不介绍了,各自开发自己的大脑吧
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
上面是在windows安装的IDE,我一开始是在树莓派上面安装IDE的,但是我的Teensy不能response,不知道是什么原因,如果知道原因,可以进行交流一下,写写。