STM32
直播中

李红

7年用户 1205经验值
私信 关注
[问答]

STM32F030CCT6 UART4接收阻塞模式几分钟后无法收到数据是哪里的问题?

芯片:STM32F030CCT6
库版本:STM32Cube_FW_F0_V1.11.0

问题:UART4,接收阻塞模式几分钟后无法收到数据。

代码如下:

  • HAL_UART_Transmit( SENSOR_UART, SENSOR_TxBuf, sizeof(SENSOR_TxBuf), 50);
  • if(HAL_UART_Receive( SENSOR_UART, SENSOR_RxBuf, sizeof(SENSOR_RxBuf), 200) == HAL_OK)
  • {

  • }
  • else
  • {

  • }


目前解决方案:
在接收结束后,加上初始化函数。

  • MX_USART4_UART_Init();


竟然在签到界面看到自己帖子了。。。问题原因的确如板凳所说,标志位没清。如下图所示,ORE标志位未清除。


注:UART1用的是中断方式收发,没有问题。

回帖(1)

毕凯

2024-4-17 10:06:28
如果初始化就能正常的话,那就有可能是该清的状态没有清除。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分