#include "usb.h"
#include "app.h"
+#include <string.h>
+
/* USER CODE END Includes */
/* Private variables ---------------------------------------------------------*/
/* USER CODE END PFP */
/* USER CODE BEGIN 0 */
+byte rx_display[8];
+volatile byte rx_display_ready;
/* USER CODE END 0 */
LL_TIM_EnableIT_UPDATE(TIM4);
LL_TIM_GenerateEvent_UPDATE(TIM4);
+ {
+ byte buf[5] = { 0xff, 0xff, 10, 0xff, 0xff };
+ display_buffer(buf);
+ }
+
/* USER CODE END 2 */
/* Infinite loop */
/* USER CODE BEGIN WHILE */
- int cnt = 0;
while (1)
{
- debug_printf("Counter = %d\n", cnt);
- display_counter(cnt);
- LL_mDelay(1000);
- cnt++;
+ __disable_irq();
+ if (rx_display_ready)
+ {
+ byte rx[8];
+ rx_display_ready = 0;
+ memcpy(rx, rx_display, 8);
+ __enable_irq();
+ display_buffer(rx);
+ }
+ else
+ __enable_irq();
+
+ // debug_printf("Counter = %d\n", cnt);
+ // display_counter(cnt);
+
+ static byte led_state;
+ if (led_state)
+ LL_GPIO_SetOutputPin(LED_GPIO_Port, LED_Pin);
+ else
+ LL_GPIO_ResetOutputPin(LED_GPIO_Port, LED_Pin);
+ led_state ^= 1;
+
+ __WFI();
/* USER CODE END WHILE */