@@ -34,6 +34,49 @@ extern "C" {
3434#define UART_NO -1
3535
3636// Options for `config` argument of uart_init
37+ #define UART_NB_BIT_MASK 0B00001100
38+ #define UART_NB_BIT_5 0B00000000
39+ #define UART_NB_BIT_6 0B00000100
40+ #define UART_NB_BIT_7 0B00001000
41+ #define UART_NB_BIT_8 0B00001100
42+
43+ #define UART_PARITY_MASK 0B00000011
44+ #define UART_PARITY_NONE 0B00000000
45+ #define UART_PARITY_EVEN 0B00000010
46+ #define UART_PARITY_ODD 0B00000011
47+
48+ #define UART_NB_STOP_BIT_MASK 0B00110000
49+ #define UART_NB_STOP_BIT_0 0B00000000
50+ #define UART_NB_STOP_BIT_1 0B00010000
51+ #define UART_NB_STOP_BIT_15 0B00100000
52+ #define UART_NB_STOP_BIT_2 0B00110000
53+
54+ #define UART_5N1 ( UART_NB_BIT_5 | UART_PARITY_NONE | UART_NB_STOP_BIT_1 )
55+ #define UART_6N1 ( UART_NB_BIT_6 | UART_PARITY_NONE | UART_NB_STOP_BIT_1 )
56+ #define UART_7N1 ( UART_NB_BIT_7 | UART_PARITY_NONE | UART_NB_STOP_BIT_1 )
57+ #define UART_8N1 ( UART_NB_BIT_8 | UART_PARITY_NONE | UART_NB_STOP_BIT_1 )
58+ #define UART_5N2 ( UART_NB_BIT_5 | UART_PARITY_NONE | UART_NB_STOP_BIT_2 )
59+ #define UART_6N2 ( UART_NB_BIT_6 | UART_PARITY_NONE | UART_NB_STOP_BIT_2 )
60+ #define UART_7N2 ( UART_NB_BIT_7 | UART_PARITY_NONE | UART_NB_STOP_BIT_2 )
61+ #define UART_8N2 ( UART_NB_BIT_8 | UART_PARITY_NONE | UART_NB_STOP_BIT_2 )
62+ #define UART_5E1 ( UART_NB_BIT_5 | UART_PARITY_EVEN | UART_NB_STOP_BIT_1 )
63+ #define UART_6E1 ( UART_NB_BIT_6 | UART_PARITY_EVEN | UART_NB_STOP_BIT_1 )
64+ #define UART_7E1 ( UART_NB_BIT_7 | UART_PARITY_EVEN | UART_NB_STOP_BIT_1 )
65+ #define UART_8E1 ( UART_NB_BIT_8 | UART_PARITY_EVEN | UART_NB_STOP_BIT_1 )
66+ #define UART_5E2 ( UART_NB_BIT_5 | UART_PARITY_EVEN | UART_NB_STOP_BIT_2 )
67+ #define UART_6E2 ( UART_NB_BIT_6 | UART_PARITY_EVEN | UART_NB_STOP_BIT_2 )
68+ #define UART_7E2 ( UART_NB_BIT_7 | UART_PARITY_EVEN | UART_NB_STOP_BIT_2 )
69+ #define UART_8E2 ( UART_NB_BIT_8 | UART_PARITY_EVEN | UART_NB_STOP_BIT_2 )
70+ #define UART_5O1 ( UART_NB_BIT_5 | UART_PARITY_ODD | UART_NB_STOP_BIT_1 )
71+ #define UART_6O1 ( UART_NB_BIT_6 | UART_PARITY_ODD | UART_NB_STOP_BIT_1 )
72+ #define UART_7O1 ( UART_NB_BIT_7 | UART_PARITY_ODD | UART_NB_STOP_BIT_1 )
73+ #define UART_8O1 ( UART_NB_BIT_8 | UART_PARITY_ODD | UART_NB_STOP_BIT_1 )
74+ #define UART_5O2 ( UART_NB_BIT_5 | UART_PARITY_ODD | UART_NB_STOP_BIT_2 )
75+ #define UART_6O2 ( UART_NB_BIT_6 | UART_PARITY_ODD | UART_NB_STOP_BIT_2 )
76+ #define UART_7O2 ( UART_NB_BIT_7 | UART_PARITY_ODD | UART_NB_STOP_BIT_2 )
77+ #define UART_8O2 ( UART_NB_BIT_8 | UART_PARITY_ODD | UART_NB_STOP_BIT_2 )
78+
79+ /*
3780#define UART_5N1 0x10
3881#define UART_6N1 0x14
3982#define UART_7N1 0x18
@@ -58,6 +101,7 @@ extern "C" {
58101#define UART_6O2 0x37
59102#define UART_7O2 0x3b
60103#define UART_8O2 0x3f
104+ */
61105
62106// Options for `mode` argument of uart_init
63107#define UART_FULL 0
0 commit comments