From 54d7911deb6fba14dc696ab7b50b0b9609d003d3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=8E=E6=98=82?= <645275593@qq.com> Date: Tue, 28 Dec 2021 09:07:46 +0000 Subject: [PATCH] update package/STM32G030Booter/stm32g0xx_it.c. --- package/STM32G030Booter/stm32g0xx_it.c | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/package/STM32G030Booter/stm32g0xx_it.c b/package/STM32G030Booter/stm32g0xx_it.c index 16c5709f4..c4b8b0af4 100644 --- a/package/STM32G030Booter/stm32g0xx_it.c +++ b/package/STM32G030Booter/stm32g0xx_it.c @@ -26,11 +26,23 @@ void SysTick_Handler(void) { STM32_Code_flashHandler(); } +volatile static uint8_t rx_char = 0; + +/* support pikaScript Shell */ +char __platform_getchar(){ + char res = 0; + while(rx_char == 0){ + }; + res = rx_char; + rx_char = 0; + return res; +} + __attribute__((weak)) void __PIKA_USART1_IRQHandler(char rx_char) {} void USART1_IRQHandler(void) { if (LL_USART_IsActiveFlag_RXNE(USART1)) { - uint8_t rx_char = LL_USART_ReceiveData8(USART1); + rx_char = LL_USART_ReceiveData8(USART1); __PIKA_USART1_IRQHandler(rx_char); /* clear buff when overflow */ if (UART1_RXBuff_offset >= RX_BUFF_LENGTH) {