BLE switch interface with GROVE joystic for micro:bit http://mahoro-ba.net/e2073.html
Diff: microbit_switch_if_joy.h
- Revision:
- 13:39ecc149d163
- Parent:
- 12:7fb193872bec
- Child:
- 14:469243e10ce5
--- a/microbit_switch_if_joy.h Sun Feb 24 05:24:50 2019 +0000 +++ b/microbit_switch_if_joy.h Sun Feb 24 20:26:39 2019 +0000 @@ -31,22 +31,40 @@ //---------------------- // Keybord //---------------------- +#define MODIFY_CTRL 0x100 +#define MODIFY_SHIFT 0x200 +#define MODIFY_OPTION 0x400 /* option or alt */ +#define MODIFY_COMMAND 0x800 /* command or Windows */ + const int KEY_BS = 8; /* Keyboard Backspace */ const int KEY_TAB = 9; /* Keyboard Tab */ const int KEY_ENTER = 10; /* Keyboard Return (Enter) */ //const int KEY_ESC = 27; /* Keyboard Escape */ const int KEY_SPACE = 32; /* Keyboard Space */ -const int KEY_NUMPAD0 = 0x60; /* Numpad 0 */ -const int KEY_NUMPAD1 = 0x61; /* Numpad 1 */ -const int KEY_NUMPAD2 = 0x62; /* Numpad 2 */ -const int KEY_NUMPAD3 = 0x63; /* Numpad 3 */ -const int KEY_NUMPAD4 = 0x64; /* Numpad 4 */ -const int KEY_NUMPAD5 = 0x65; /* Numpad 5 */ -const int KEY_NUMPAD6 = 0x66; /* Numpad 6 */ -const int KEY_NUMPAD7 = 0x67; /* Numpad 7 */ -const int KEY_NUMPAD8 = 0x68; /* Numpad 8 */ -const int KEY_NUMPAD9 = 0x69; /* Numpad 9 */ +const int KEY_EQUAL = 0x2b; /* = */ +const int KEY_COMMA = 0x2c; /* , */ +const int KEY_MINUS = 0x2d; /* - */ +const int KEY_PIRIOD = 0x2e; /* . */ +const int KEY_SLASH = 0x2f; /* / */ +const int KEY_QUOT = 0x40; /* ' */ + +const int KEY_PLUS = MODIFY_SHIFT +0x2b; /* + */ +const int KEY_LT = MODIFY_SHIFT +0x2c; /* < */ +const int KEY_UNDER = MODIFY_SHIFT +0x2d; /* _ */ +const int KEY_GT = MODIFY_SHIFT +0x2e; /* > */ +const int KEY_QUESTION = MODIFY_SHIFT +0x2f; /* ? */ +const int KEY_RBRACKET = MODIFY_SHIFT +0x30; /* ) shif+0 */ +const int KEY_EXCLA = MODIFY_SHIFT +0x31; /* ! shif+1 */ +const int KEY_AT = MODIFY_SHIFT +0x32; /* @ shif+2 */ +const int KEY_NUMBER = MODIFY_SHIFT +0x33; /* # shif+3 */ +const int KEY_DOLL = MODIFY_SHIFT +0x34; /* $ shif+4 */ +const int KEY_PERCENT = MODIFY_SHIFT +0x35; /* % shif+5 */ +const int KEY_CARET = MODIFY_SHIFT +0x36; /* ^ shif+6 */ +const int KEY_AMP = MODIFY_SHIFT +0x37; /* & shif+7 */ +const int KEY_ASTERISK = MODIFY_SHIFT +0x38; /* * shif+8 */ +const int KEY_LBRACKET = MODIFY_SHIFT +0x39; /* ( shif+9 */ +const int KEY_DBLQUOT = MODIFY_SHIFT +0x40; /* " */ //---------------------- // Setting @@ -54,10 +72,7 @@ #define NUM_GROUP1 4 #define NUM_G1MEMBER 5 -#define MODIFY_CTRL 0x100 -#define MODIFY_SHIFT 0x200 -#define MODIFY_OPTION 0x400 /* option or alt */ -#define MODIFY_COMMAND 0x800 /* command or Windows */ + const int keyCodeGroup0[3] = { // Button A, Button B, Button A&B 'a', @@ -67,10 +82,8 @@ const int keyCodeGroup1[NUM_GROUP1][NUM_G1MEMBER] = { // 中央 左 右 上 下 {KEY_ENTER, KEY_TAB, KEY_SPACE, 0, KEY_ENTER }, {KEY_HOME, RIGHT_ARROW, LEFT_ARROW, DOWN_ARROW, UP_ARROW }, - {MODIFY_SHIFT+'1', MODIFY_SHIFT+'2', MODIFY_SHIFT+'3', MODIFY_SHIFT+'4', MODIFY_SHIFT+'5'}, - {KEY_ENTER, MODIFY_OPTION+MODIFY_SHIFT+KEY_TAB, MODIFY_OPTION+KEY_TAB, - MODIFY_OPTION+DOWN_ARROW, MODIFY_OPTION+UP_ARROW}, -// {KEY_ENTER, MODIFY_SHIFT+KEY_TAB, KEY_TAB, KEY_SPACE, MODIFY_SHIFT+KEY_SPACE}, + {MODIFY_SHIFT+'1', MODIFY_SHIFT+'2', MODIFY_SHIFT+'3', MODIFY_SHIFT+'4', MODIFY_SHIFT+'5'}, + {MODIFY_COMMAND+'r', 0, 0, MODIFY_OPTION+DOWN_ARROW, MODIFY_OPTION+UP_ARROW}, }; //in "BLE_HID\Keyboad_types.h"