fix: 通过关闭UART2的方式暂时修复从机复位时主机卡死问题

This commit is contained in:
2024-03-08 21:37:55 +08:00
parent 55cbf624a1
commit 28b591d7a7
2 changed files with 1 additions and 4 deletions

View File

@@ -14,7 +14,7 @@ uint8_t frame_buffer[100];
void by_frame_init(void) void by_frame_init(void)
{ {
uart_init(BY_FRAME_UART_INDEX, BY_FRAME_UART_BAUDRATE, BY_FRAME_UART_TX_PIN, BY_FRAME_UART_RX_PIN); uart_init(BY_FRAME_UART_INDEX, BY_FRAME_UART_BAUDRATE, BY_FRAME_UART_TX_PIN, BY_FRAME_UART_RX_PIN);
uart_rx_interrupt(BY_FRAME_UART_INDEX, ENABLE); // uart_rx_interrupt(BY_FRAME_UART_INDEX, ENABLE);
lwrb_init(&lwrb_struct, lwrb_buffer, 50); lwrb_init(&lwrb_struct, lwrb_buffer, 50);
} }

View File

@@ -86,21 +86,18 @@ void EXTI15_10_IRQHandler(void) __attribute__((interrupt()));
void USART1_IRQHandler(void) void USART1_IRQHandler(void)
{ {
if (USART_GetITStatus(USART1, USART_IT_RXNE) != RESET) { if (USART_GetITStatus(USART1, USART_IT_RXNE) != RESET) {
USART_ClearITPendingBit(USART1, USART_IT_RXNE); USART_ClearITPendingBit(USART1, USART_IT_RXNE);
} }
} }
void USART2_IRQHandler(void) void USART2_IRQHandler(void)
{ {
if (USART_GetITStatus(USART2, USART_IT_RXNE) != RESET) { if (USART_GetITStatus(USART2, USART_IT_RXNE) != RESET) {
uint8_t data_s = 0;
USART_ClearITPendingBit(USART2, USART_IT_RXNE); USART_ClearITPendingBit(USART2, USART_IT_RXNE);
} }
} }
void USART3_IRQHandler(void) void USART3_IRQHandler(void)
{ {
if (USART_GetITStatus(USART3, USART_IT_RXNE) != RESET) { if (USART_GetITStatus(USART3, USART_IT_RXNE) != RESET) {
uint8_t data_s = 0;
#if DEBUG_UART_USE_INTERRUPT // 如果开启 debug 串口中断 #if DEBUG_UART_USE_INTERRUPT // 如果开启 debug 串口中断
// debug_interrupr_handler(); // 调用 debug 串口接收处理函数 数据会被 debug 环形缓冲区读取 // debug_interrupr_handler(); // 调用 debug 串口接收处理函数 数据会被 debug 环形缓冲区读取
#endif // 如果修改了 DEBUG_UART_INDEX 那这段代码需要放到对应的串口中断去 #endif // 如果修改了 DEBUG_UART_INDEX 那这段代码需要放到对应的串口中断去