Parcourir la source

fix uart ore-flag clear bug

guochuangjian il y a 7 ans
Parent
commit
63a13906cc
2 fichiers modifiés avec 3 ajouts et 3 suppressions
  1. 2 2
      bsp/stm32f107/drivers/usart.c
  2. 1 1
      bsp/stm32f40x/drivers/usart.c

+ 2 - 2
bsp/stm32f107/drivers/usart.c

@@ -184,7 +184,7 @@ void USART1_IRQHandler(void)
     }
     if (USART_GetFlagStatus(uart->uart_device, USART_FLAG_ORE) == SET)
     {
-        stm32_getc(&serial1);
+        USART_ReceiveData(uart->uart_device);
     }
     /* leave interrupt */
     rt_interrupt_leave();
@@ -221,7 +221,7 @@ void USART2_IRQHandler(void)
     }
     if (USART_GetFlagStatus(uart->uart_device, USART_FLAG_ORE) == SET)
     {
-        stm32_getc(&serial2);
+        USART_ReceiveData(uart->uart_device);
     }
 
     /* leave interrupt */

+ 1 - 1
bsp/stm32f40x/drivers/usart.c

@@ -310,7 +310,7 @@ static void uart_isr(struct rt_serial_device *serial)
     }
     if (USART_GetFlagStatus(uart->uart_device, USART_FLAG_ORE) == SET)
     {
-        stm32_getc(serial);
+        USART_ReceiveData(uart->uart_device);
     }
 }