27 lines
584 B
C
27 lines
584 B
C
/*
|
|
* Copyright 2017-2024 Oleg Borodin <onborodin@gmail.com>
|
|
*/
|
|
|
|
#ifndef BUTTON_H_QWERTY
|
|
#define BUTTON_H_QWERTY
|
|
|
|
#include <stdint.h>
|
|
|
|
typedef struct button_t {
|
|
uintptr_t ddraddr;
|
|
uintptr_t portaddr;
|
|
uintptr_t pinaddr;
|
|
uint8_t outnum;
|
|
bool was_pressed;
|
|
uint8_t push_time;
|
|
} button_t;
|
|
|
|
|
|
void button_init(button_t *button, uintptr_t ddraddr, uintptr_t portaddr, uintptr_t pinaddr, uint8_t outnum);
|
|
void button_setup(button_t *button);
|
|
void button_reset(button_t *button);
|
|
bool button_was_pressed(button_t *button);
|
|
void button_handle(button_t *button);
|
|
|
|
#endif
|