본문 바로가기

아두이노우노 R4

키보드 수정자 및 특수 키 - 아두이노 우노 R4 키보드 기능

반응형

 

키보드.쓰기(), 키보드.누르기() 및 키보드.놓기() 함수는 인쇄 가능한 ASCII 문자를 인수로 지정하면 해당 키에 대한 작동을 시뮬레이션합니다. 이러한 함수는 Shift 또는 국제 키보드의 경우 AltGr과 함께 키를 눌러야 하는 ASCII 문자를 처리할 수도 있습니다. 예를 들어

 

Keyboard.write('a'); // 'A' 키 눌렀다 놓기

Keyboard.write('A'); // Shift와 'A'를 누른 다음 둘 다 놓습니다.

 

그러나 일반적인 키보드에는 인쇄 가능한 ASCII 문자와 일치하지 않는 키가 많이 있습니다. 이러한 키를 시뮬레이션하기 위해 라이브러리에서는 키보드 쓰기(), 키보드 누르기() 및 키보드 놓기()에 인수로 전달할 수 있는 매크로 집합을 제공합니다. 예를 들어 Shift+F2 키 조합은 다음과 같이 생성할 수 있습니다:

 

Keyboard.press(KEY_LEFT_SHIFT); // Shift 키를 길게 누릅니다.

Keyboard.press(KEY_F2); // F2 누르기

Keyboard.releaseAll(); // 둘 다 놓기

 

여러 키를 동시에 누르려면 Keyboard.write()가 아닌 Keyboard.press()를 사용해야 합니다.

Keyboard.write 함수는 키를 '누르고' 바로 놓기 때문입니다(키를 누른 후 바로 놓습니다). 말 그대로 쓰기 때문에 누름이 유지되지 않기 때문입니다.

 

사용 가능한 매크로는 다음과 같습니다:

 

키보드 수정자

 

이 키는 두 키를 함께 눌렀을 때, 다른 키의 일반적인 동작을 수정하기 위한 것입니다. 

 

KEY HEXADECIMAL VALUE DECIMAL VALUE NOTES
KEY_LEFT_CTRL 0x80 128  
KEY_LEFT_SHIFT 0x81 129  
KEY_LEFT_ALT 0x82 130 Option (⌥) on Mac
KEY_LEFT_GUI 0x83 131 OS logo, Command (⌘) on Mac
KEY_RIGHT_CTRL 0x84 132  
KEY_RIGHT_SHIFT 0x85 133  
KEY_RIGHT_ALT 0x86 134 also AltGr, Option (⌥) on Mac
KEY_RIGHT_GUI 0x87 135 OS logo, Command (⌘) on Mac

 

특수 키

 

인쇄 가능한 ASCII 문자와 일치하지 않으며 수정자가 아닌 모든 키입니다.

 

영숫자 클러스터 안에 있는 키

 

 

KEY HEXADECIMAL VALUE DECIMAL VALUE
KEY_TAB 0xB3 179
KEY_CAPS_LOCK 0xC1 193
KEY_BACKSPACE 0xB2 178
KEY_RETURN 0xB0 176
KEY_MENU 0xED 237

 

 

내비게이션 클러스터  

 

 

KEYHEXADECIMAL VALUE HEXADECIMAL VALUE DECIMAL VALUE
KEY_INSERT 0xD1 209
KEY_DELETE 0xD4 212
KEY_HOME 0xD2 210
KEY_END 0xD5 213
KEY_PAGE_UP 0xD3 211
KEY_PAGE_DOWN 0xD6 214
KEY_UP_ARROW 0xDA 218
KEY_DOWN_ARROW 0xD9 217
KEY_LEFT_ARROW 0xD8 216
     
KEY_RIGHT_ARROW 0xD7 215

 

 

숫자 키패드  

 

KEY HEXADECIMAL VALUE DECIMAL VALUE
KEY_NUM_LOCK 0xDB 219
KEY_KP_SLASH 0xDC 220
KEY_KP_ASTERISK 0xDD 221
KEY_KP_MINUS 0xDE 222
KEY_KP_PLUS 0xDF 223
KEY_KP_ENTER 0xE0 224
KEY_KP_1 0xE1 225
KEY_KP_2 0xE2 226
KEY_KP_3 0xE3 227
KEY_KP_4 0xE4 228
KEY_KP_5 0xE5 229
KEY_KP_6 0xE6 230
KEY_KP_7 0xE7 231
KEY_KP_8 0xE8 232
KEY_KP_9 0xE9 233
KEY_KP_0 0xEA 234
KEY_KP_DOT 0xEB 235

 

 

이스케이프 및 기능 키

 

라이브러리는 최대 F24까지 기능 키를 시뮬레이션할 수 있습니다. 

 

KEYHEXADECIMAL VALUEDECIMAL VALUE

KEY HEXADECIMAL VALUE DECIMAL VALUE
KEY_ESC 0xB1 177
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
KEY_F13 0xF0 240
KEY_F14 0xF1 241
KEY_F15 0xF2 242
KEY_F16 0xF3 243
KEY_F17 0xF4 244
KEY_F18 0xF5 245
KEY_F19 0xF6 246
KEY_F20 0xF7 247
KEY_F21 0xF8 248
KEY_F22 0xF9 249
KEY_F23 0xFA 250
KEY_F24 0xFB 251

 

 

 

기능 제어 키

 

내비게이션 클러스터 위에 있는 세 개의 키입니다. 

 

KEYHEXADECIMAL VALUEDECIMAL VALUENOTES

KEY_PRINT_SCREEN 0xCE 206 Print Screen or PrtSc / SysRq
KEY_SCROLL_LOCK 0xCF 207  
KEY_PAUSE 0xD0 208 Pause / Break

 

 

국제 키보드 레이아웃

 

일부 국가별 레이아웃은 추가 키를 정의합니다. 예를 들어 스웨덴 및 덴마크 레이아웃에서는 "Å", 미국 레이아웃에서는 "{"/"[""로 표시된 "P"의 오른쪽에 있는 키인 0xB7로 KEY_A_RING을 정의합니다. 이러한 정의를 사용하려면 적절한 Keyboard_*.h 파일을 포함해야 합니다. 예를 들어

 

 

#include <Keyboard.h>
#include <Keyboard_sv_SE.h> // 스웨덴어 레이아웃의 추가 키 정의 포함

void setup() {
  Keyboard.begin(KeyboardLayout_sv_SE); // 스웨덴어 레이아웃 사용
  Keyboard.write(KEY_A_RING);
}

void loop() {} // 아무것도 하지 않는 루프

 

 

레이아웃별 키 정의 목록은 라이브러리 소스 내의 각 Keyboard_*.h 파일을 참조하세요. 

 

 

아두이노 레퍼런스 참고 링크

키보드 - 키배열/명칭/기호이름/Ctrl+C/Ctrl+V/Ctrl+X  

 

 

 

특수키 명칭

 

 

 

 

 

 

 

 

반응형

더욱 좋은 정보를 제공하겠습니다.~ ^^