mcu:
STM32G070RB,驱动库:hal版本1.6.1
目前会遇到串口2与外部芯片的通讯异常,
异常表现为串口2不能收发数据了
串口2的配置方式是CubeMX配置的
接收数据方法:HAL_UART_Receive_IT( huart2, Uart2RX_Data,1);//中断方式,1字节一次获取数据
发送数据方法:HAL_UART_Transmit_IT( huart2,u8_TxBuf,len);
我已经在中断代码中增加了if( HAL_UART_Receive_IT( huart2, Uart2RX_Data, 1) != HAL_OK),来判断是否开启中断完成,并且记录下来,再进行串口初始化(代码不在中断中),代码如下
huart2.Lock = HAL_UNLOCKED;
MX_USART2_UART_Init();//重新初始化串口
HAL_UART_Receive_IT( huart2, Uart2RX_Data,1);//继续接收数据
请教一下,
如何才能保证G0单片机的 串口卡死/无法收发的情况不出现或能够解决串口异常
串口崩溃快烦死了,一直解决不了,而且很难复现。