/*
 * application.h
 *
 *  Created on: 22.09.2022
 *      Author: jonas
 */

#ifndef APPLICATION_H_
#define APPLICATION_H_

#define LED_BLUE_GPIO GPIOC
#define LED_BLUE_PORT PORTC
#define LED_BLUE_PIN  2U

typedef enum Debounce_event_e {
  Event_None,

  Button_Left_Pressed,
  Button_LeftRepeat_Pressed,
  Button_Left_Released,

  Button_Right_Pressed,
  Button_RightRepeat_Pressed,
  Button_Right_Released,

  Button_Up_Pressed,
  Button_UpRepeat_Pressed,
  Button_Up_Released,

  Button_Down_Pressed,
  Button_DownRepeat_Pressed,
  Button_Down_Released,

  Button_Center_Pressed,
  Button_CenterRepeat_Pressed,
  Button_Center_Released,
} Debounce_event_e;

/* Application initialization */
void App_Init(void);

/* Application run */
void App_Run(void);

/* Application de-initialization */
void App_Deinit(void);

#endif /* APPLICATION_H_ */
