diff --git a/Core/Inc/ui.h b/Core/Inc/ui.h index 8be62c4..0dcffc9 100644 --- a/Core/Inc/ui.h +++ b/Core/Inc/ui.h @@ -9,8 +9,8 @@ extern "C" { #define NUM_BUTTONS 6 #define NUM_ENCS 2 -#define BUTTON_MIN_INTERVAL 50 // ms -#define ENC_MAX_PHASE 50 // ms +#define BUTTON_MIN_INTERVAL 50 // ms +#define ENC_MAX_PHASE 50 // ms typedef enum { UMK_BTN_PRESSED, UMK_ENC_CW, UMK_ENC_CCW } ButtonMessageKind; @@ -25,4 +25,4 @@ void ui_thread_entry(ULONG _); } #endif -#endif // __INC_ui_H +#endif // __INC_ui_H diff --git a/Core/Src/ui.c b/Core/Src/ui.c index 8ec1fe1..2314db9 100644 --- a/Core/Src/ui.c +++ b/Core/Src/ui.c @@ -1,14 +1,18 @@ #include "ui.h" +#include + +#include "hx8357d.h" +#include "main.h" #include "stm32h7a3xx.h" #include "stm32h7xx_hal.h" #include "stm32h7xx_hal_gpio.h" #include "tx_api.h" - -#include "hx8357d.h" -#include "main.h" #include "vehicle.h" -#include + +// TODO Remove for STW v2 +#define MOCK_NUM_BUTTONS 5 +uint8_t mock_button_counter = 0; void ui_thread_entry(ULONG _) { GPIO_TypeDef *button_ports[NUM_BUTTONS] = {BTN1_GPIO_Port, BTN2_GPIO_Port, @@ -43,9 +47,19 @@ void ui_thread_entry(ULONG _) { if (press_event == 1 && button_states[1]) { tx_event_flags_set(&gui_update_events, GUI_UPDATE_NEXT_SCREEN, TX_OR); } - vehicle_broadcast_buttons(button_states); + + // TODO restore this for STW24-v2 + // vehicle_broadcast_buttons(button_states); // Release so other threads can get scheduled - tx_thread_sleep(1); + // tx_thread_sleep(1); + + // TODO (STW24) Remove for STW24-v2 !! + GPIO_PinState mock_button_states[MOCK_NUM_BUTTONS] = {mock_button_states}; + mock_button_states[mock_button_counter] = GPIO_PIN_SET; + mock_button_counter++; + mock_button_counter %= MOCK_NUM_BUTTONS; + vehicle_broadcast_buttons(mock_button_states); + tx_thread_sleep(1000); } }