MicrOS
micros_keyboard.h
Go to the documentation of this file.
1 #ifndef MICROS_KEYBOARD_H
2 #define MICROS_KEYBOARD_H
3 
4 #include <stdbool.h>
5 #include "micros_interrupts.h"
6 
9 {
11  unsigned char scancode;
12 
14  unsigned char ascii;
16 
19 {
20  key_esc = 1,
21  key_1 = 2,
22  key_2 = 3,
23  key_3 = 4,
24  key_4 = 5,
25  key_5 = 6,
26  key_6 = 7,
27  key_7 = 8,
28  key_8 = 9,
29  key_9 = 10,
30  key_0 = 11,
31  key_pause = 12,
32  key_equal = 13,
34  key_tab = 15,
35  key_q = 16,
36  key_w = 17,
37  key_e = 18,
38  key_r = 19,
39  key_t = 20,
40  key_y = 21,
41  key_u = 22,
42  key_i = 23,
43  key_o = 24,
44  key_p = 25,
47  key_enter = 28,
49  key_a = 30,
50  key_s = 31,
51  key_d = 32,
52  key_f = 33,
53  key_g = 34,
54  key_h = 35,
55  key_j = 36,
56  key_k = 37,
57  key_l = 38,
63  key_z = 44,
64  key_x = 45,
65  key_c = 46,
66  key_v = 47,
67  key_b = 48,
68  key_n = 49,
69  key_m = 50,
70  key_comma = 51,
71  key_dot = 52,
72  key_slash = 53,
76  key_space = 57,
78  key_f1 = 59,
79  key_f2 = 60,
80  key_f3 = 61,
81  key_f4 = 62,
82  key_f5 = 63,
83  key_f6 = 64,
84  key_f7 = 65,
85  key_f8 = 66,
86  key_f9 = 67,
87  key_f10 = 68,
103  key_f11 = 87,
104  key_f12 = 88
106 
107 #ifdef __cplusplus
108 extern "C"
109 {
110 #endif
111 
113 
118 
120 
126 
128 
133 
135 
141 
142 #ifdef __cplusplus
143 }
144 #endif
145 
146 #endif
bool micros_keyboard_is_key_pressed()
Checks if any key is pressed.
Definition: micros_keyboard.c:3
Definition: micros_keyboard.h:74
Definition: micros_keyboard.h:41
bool micros_keyboard_get_pressed_key(micros_keyboard_scan_ascii_pair *scan_ascii_pair)
Retrieves pressed key from the buffer if possible.
Definition: micros_keyboard.c:8
Definition: micros_keyboard.h:100
Definition: micros_keyboard.h:47
Definition: micros_keyboard.h:38
Definition: micros_keyboard.h:49
Definition: micros_keyboard.h:43
Definition: micros_keyboard.h:65
Definition: micros_keyboard.h:97
Definition: micros_keyboard.h:78
unsigned char scancode
Scancode representing the specified key.
Definition: micros_keyboard.h:11
Definition: micros_keyboard.h:25
Definition: micros_keyboard.h:52
Definition: micros_keyboard.h:90
Definition: micros_keyboard.h:98
Definition: micros_keyboard.h:30
Definition: micros_keyboard.h:32
Definition: micros_keyboard.h:75
Definition: micros_keyboard.h:44
Definition: micros_keyboard.h:85
Definition: micros_keyboard.h:20
Definition: micros_keyboard.h:28
Definition: micros_keyboard.h:50
Definition: micros_keyboard.h:48
bool micros_keyboard_get_key_state(micros_keyboard_keys scancode)
Retrieves key state (is pressed or not)
Definition: micros_keyboard.c:26
Definition: micros_keyboard.h:62
Definition: micros_keyboard.h:84
Definition: micros_keyboard.h:27
Definition: micros_keyboard.h:73
Definition: micros_keyboard.h:37
Definition: micros_keyboard.h:72
Definition: micros_keyboard.h:51
Definition: micros_keyboard.h:77
Structure with the scancode and the ASCII representation.
Definition: micros_keyboard.h:8
Definition: micros_keyboard.h:26
Definition: micros_keyboard.h:102
Definition: micros_keyboard.h:36
Definition: micros_keyboard.h:59
Definition: micros_keyboard.h:35
Definition: micros_keyboard.h:46
Definition: micros_keyboard.h:57
Definition: micros_keyboard.h:58
Definition: micros_keyboard.h:68
Definition: micros_keyboard.h:92
Definition: micros_keyboard.h:81
Definition: micros_keyboard.h:53
Definition: micros_keyboard.h:33
Definition: micros_keyboard.h:91
Definition: micros_keyboard.h:60
Definition: micros_keyboard.h:79
Definition: micros_keyboard.h:67
Definition: micros_keyboard.h:29
Definition: micros_keyboard.h:69
micros_keyboard_keys
Represents a set of keyboard keys.
Definition: micros_keyboard.h:18
Definition: micros_keyboard.h:70
Definition: micros_keyboard.h:82
Definition: micros_keyboard.h:24
Definition: micros_keyboard.h:61
Definition: micros_keyboard.h:87
Definition: micros_keyboard.h:64
Definition: micros_keyboard.h:71
Definition: micros_keyboard.h:34
Definition: micros_keyboard.h:83
void micros_keyboard_wait_for_key_press(micros_keyboard_scan_ascii_pair *scan_ascii_pair)
Retrieves pressed key from the buffer (or waits if buffer is empty)
Definition: micros_keyboard.c:13
Definition: micros_keyboard.h:88
Definition: micros_keyboard.h:56
Definition: micros_keyboard.h:94
Definition: micros_keyboard.h:54
Definition: micros_keyboard.h:95
Definition: micros_keyboard.h:103
Definition: micros_keyboard.h:101
Definition: micros_keyboard.h:99
Definition: micros_keyboard.h:40
Definition: micros_keyboard.h:96
Definition: micros_keyboard.h:63
Definition: micros_keyboard.h:22
Definition: micros_keyboard.h:23
Definition: micros_keyboard.h:86
Definition: micros_keyboard.h:31
Definition: micros_keyboard.h:66
Definition: micros_keyboard.h:76
Definition: micros_keyboard.h:45
unsigned char ascii
ASCII representation of the specified key.
Definition: micros_keyboard.h:14
Definition: micros_keyboard.h:55
Definition: micros_keyboard.h:89
Definition: micros_keyboard.h:42
Definition: micros_keyboard.h:39
Definition: micros_keyboard.h:93
Definition: micros_keyboard.h:21
Definition: micros_keyboard.h:80
Definition: micros_keyboard.h:104