1
0
forked from me/IronOS

Better button auto-repeat

This commit is contained in:
Ben V. Brown
2017-07-30 21:25:27 +10:00
parent 4fb7a70e3c
commit b0264be3c5
3 changed files with 91 additions and 35 deletions

View File

@@ -8,40 +8,23 @@
/* Functions for access to data */
extern volatile uint32_t system_Ticks;
void delayMs(uint32_t ticks);
extern volatile uint32_t lastKeyPress;
extern volatile uint32_t lastMovement;
extern volatile uint8_t keyState;
extern volatile uint8_t rawKeys;
inline uint32_t millis() {
return system_Ticks;
}
inline uint32_t getLastButtonPress() {
return lastKeyPress;
}
inline void resetLastButtonPress() {
lastKeyPress = millis();
}
inline void resetButtons() {
keyState = 0;
}
inline uint32_t getLastMovement() {
return lastMovement;
}
inline uint16_t getButtons() {
return keyState;
}
uint8_t getButtons();
uint32_t getLastButtonPress();
inline uint16_t getRawButtons() {
return rawKeys;
}
inline void restoreButtons() {
keyState = getRawButtons();
}
/*IRQ prototypes*/
void NMI_Handler(void);