Arduino 模擬PS/2鍵盤事件(免改韌體, 適用Uno)
這篇主要使用Arduino Uno透過PS/2連接埠
達到從Arduino發送鍵盤訊號到電腦端
首先需要知道PS/2的Pin對應位置
基本上只要知道1,5這兩個Pin就好
將Data插入到Pin4, Clock插入到Pin2
然後下載這裡的Library放到專案目錄下
準備開始測試
//匯入程式庫 #include "FidPS2Keyboard.h" #include "FidPS2Host.h"
//初始化PS/2連接(Data Pin, Clock Pin) void fid_ps2kb_init(int data, int clock)
//發送Key訊號 fid_ps2kb_write(uint8_t b)
//發送一次完整訊號(分別為按下與放開) fid_ps2h_write(0x1C); fid_ps2h_write(0xF0); fid_ps2h_write(0x1C);
Hex表格如下(常用字元)
| Key | Make | Break |
| A | 1C | F0,1C |
| B | 32 | F0,32 |
| C | 21 | F0,21 |
| D | 23 | F0,23 |
| E | 24 | F0,24 |
| F | 28 | F0,28 |
| G | 34 | F0,34 |
| H | 33 | F0,33 |
| I | 43 | F0,43 |
| J | 3B | F0,3B |
| K | 42 | F0,42 |
| L | 4B | F0,4B |
| M | 3A | F0,3A |
| N | 31 | F0,31 |
| O | 44 | F0,44 |
| P | 4D | F0,4D |
| Q | 15 | F0,15 |
| R | 2D | F0,2D |
| S | 1B | F0,1B |
| T | 2C | F0,2C |
| U | 3C | F0,3C |
| V | 2A | F0,2A |
| W | 1D | F0,1D |
| X | 22 | F0,22 |
| Y | 35 | F0,35 |
| Z | 1A | F0,1A |
| 0 | 45 | F0,45 |
| 1 | 16 | F0,16 |
| 2 | 1E | F0,1E |
| 3 | 26 | F0,26 |
| 4 | 25 | F0,25 |
| 5 | 2E | F0,2E |
| 6 | 36 | F0,36 |
| 7 | 3D | F0,3D |
| 8 | 3E | F0,3E |
| 9 | 46 | F0,46 |

留言