Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- void PU_CheckButtons(PU_ButtonTypeDef* PU_ButtonStruct)
- {
- static int menu_delay = 0;
- static int menu_old_state = 0;
- static int menu_state;
- // get current state
- menu_state = ReadPin(); // insert your ReadPin() function here, returns 0 if button pressed and 1 if not pressed
- // reset values
- PU_ButtonStruct->MenuShortPress = 0;
- // button held, time
- if(menu_state == 0 && menu_old_state == 0)
- menu_delay++;
- // button depressed, short press detection
- if(menu_state == 1 && menu_old_state == 0) //current_menu
- {
- if(menu_delay >= MIN_PRES_TIME && menu_delay < SHORT_PRESS_TIME)
- PU_ButtonStruct->MenuShortPress = 1;
- menu_delay = 0;
- }
- // store state
- menu_old_state = menu_state;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement