snickerdoodle Platform Controller
firmware for STM32F0 platform controller
sd_button.h
Go to the documentation of this file.
1
46
#ifndef __SD_BUTTON_H
47
#define __SD_BUTTON_H
48
#ifdef __cplusplus
49
extern
"C"
{
50
#endif
51
62
extern
struct
sd_button
reset_button
;
63
extern
struct
sd_button
select_button
;
77
enum
sd_button_err
{
78
SD_BUTTON_SUCCESS
,
79
SD_BUTTON_ERROR
80
};
81
86
enum
sd_button_state
{
87
SD_BUTTON_IDLE
,
88
SD_BUTTON_DOWN_WAIT
,
89
SD_BUTTON_DOWN_DEB
,
90
SD_BUTTON_UP_WAIT
,
91
};
92
97
struct
sd_button
{
98
GPIO_TypeDef *
port
;
99
uint16_t
pin
;
100
enum
sd_button_state
state
;
101
uint32_t
tick
;
102
uint32_t
up_to
;
103
uint32_t
down_to
;
104
void (*
down_cb
)(void);
105
void (*
up_cb
)(void);
106
};
115
enum
sd_button_err
sd_button_init
(
struct
sd_button
*butt,
116
GPIO_TypeDef *port,
117
uint16_t pin,
118
uint32_t up_to,
119
void
(*up_cb)(
void
),
120
uint32_t down_to,
121
void
(*down_cb)(
void
));
122
enum
sd_button_err
sd_button_run
(
struct
sd_button
*butt);
131
#ifdef __cplusplus
132
}
133
#endif
134
#else
135
#error "Multiple inclusion of sd_button.h"
136
#endif
/* __SD_BUTTON_H */
137
138
/*
139
* END OF FILE [sd_button.h]
140
*/
sd_button::pin
uint16_t pin
Definition:
sd_button.h:96
sd_button
Button structure.
Definition:
sd_button.h:94
sd_button_err
sd_button_err
Button error enumeration.
Definition:
sd_button.h:74
sd_button_run
enum sd_button_err sd_button_run(struct sd_button *butt)
Run Button State Machine.
Definition:
sd_button.c:119
SD_BUTTON_DOWN_DEB
Definition:
sd_button.h:86
SD_BUTTON_IDLE
Definition:
sd_button.h:84
SD_BUTTON_SUCCESS
Definition:
sd_button.h:75
sd_button::port
GPIO_TypeDef * port
Definition:
sd_button.h:95
SD_BUTTON_DOWN_WAIT
Definition:
sd_button.h:85
sd_button::up_to
uint32_t up_to
Definition:
sd_button.h:99
sd_button::down_to
uint32_t down_to
Definition:
sd_button.h:100
select_button
struct sd_button select_button
Definition:
sd_button.c:68
sd_button_init
enum sd_button_err sd_button_init(struct sd_button *butt, GPIO_TypeDef *port, uint16_t pin, uint32_t up_to, void(*up_cb)(void), uint32_t down_to, void(*down_cb)(void))
Initialize Button Port/Pin and State Machine.
Definition:
sd_button.c:91
SD_BUTTON_UP_WAIT
Definition:
sd_button.h:87
sd_button::down_cb
void(* down_cb)(void)
Definition:
sd_button.h:101
reset_button
struct sd_button reset_button
Definition:
sd_button.c:67
sd_button::up_cb
void(* up_cb)(void)
Definition:
sd_button.h:102
sd_button_state
sd_button_state
Button state enumeration.
Definition:
sd_button.h:83
SD_BUTTON_ERROR
Definition:
sd_button.h:76
sd_button::tick
uint32_t tick
Definition:
sd_button.h:98
sd_button::state
enum sd_button_state state
Definition:
sd_button.h:97
Inc
sd_button.h
Generated on Mon Apr 2 2018 13:17:21 for snickerdoodle Platform Controller by
1.8.14