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

這里沒有過程視頻,不過確實是打開了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還可以模擬鼠標的移動,真是多功能

有空的話我做一個硬件的外掛來玩一下,之后也會更新一下鼠標移動的開發

 

今天也是充滿希望的一天

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM