diff options
Diffstat (limited to 'src/button.h')
| -rw-r--r-- | src/button.h | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/src/button.h b/src/button.h new file mode 100644 index 0000000..234e45b --- /dev/null +++ b/src/button.h @@ -0,0 +1,23 @@ +#ifndef __BUTTON_H__ +#define __BUTTON_H__ + +#include "CH58x_common.h" + +enum keys { + KEY1 = 0, + KEY2, + KEY_INDEX, +}; + +#define KEY2_PIN (GPIO_Pin_22) // PB +#define KEY1_PIN (GPIO_Pin_1) // PA + +#define isPressed(key) ((key) ? \ + !GPIOB_ReadPortPin(KEY2_PIN) : \ + GPIOA_ReadPortPin(KEY1_PIN)) + +void btn_onOnePress(int key, void (*handler)(void)); +void btn_onLongPress(int key, void (*handler)(void)); +void btn_init(); + +#endif /* __BUTTON_H__ */ |