diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/arch/msp430fr5969lp/driver/stdin.h | 8 | ||||
-rw-r--r-- | include/arch/msp430fr5994lp/driver/stdin.h | 8 |
2 files changed, 10 insertions, 6 deletions
diff --git a/include/arch/msp430fr5969lp/driver/stdin.h b/include/arch/msp430fr5969lp/driver/stdin.h index 1085111..7b78a9a 100644 --- a/include/arch/msp430fr5969lp/driver/stdin.h +++ b/include/arch/msp430fr5969lp/driver/stdin.h @@ -9,8 +9,10 @@ class StandardInput { private: StandardInput(const StandardInput ©); - char buffer[8]; - unsigned char write_pos, read_pos; + static unsigned char const bufsize = 16; + char buffer[bufsize]; + volatile unsigned char write_pos; + unsigned char read_pos; public: StandardInput() : write_pos(0), read_pos(0) {} @@ -20,7 +22,7 @@ class StandardInput { inline void addKey(char key) { buffer[write_pos++] = key; - write_pos %= 8; + write_pos %= bufsize; } }; diff --git a/include/arch/msp430fr5994lp/driver/stdin.h b/include/arch/msp430fr5994lp/driver/stdin.h index 1085111..7b78a9a 100644 --- a/include/arch/msp430fr5994lp/driver/stdin.h +++ b/include/arch/msp430fr5994lp/driver/stdin.h @@ -9,8 +9,10 @@ class StandardInput { private: StandardInput(const StandardInput ©); - char buffer[8]; - unsigned char write_pos, read_pos; + static unsigned char const bufsize = 16; + char buffer[bufsize]; + volatile unsigned char write_pos; + unsigned char read_pos; public: StandardInput() : write_pos(0), read_pos(0) {} @@ -20,7 +22,7 @@ class StandardInput { inline void addKey(char key) { buffer[write_pos++] = key; - write_pos %= 8; + write_pos %= bufsize; } }; |