STM32
直播中

李燕

8年用户 1637经验值
私信 关注
[问答]

STM32F103RCT6 uart1中断方式接收后不返回主程序了,但新的中断还能进来是怎么回事?

uart1中断方式接收后不返回主程序了,但新的中断还能进来,芯片型号STM32F103RCT6

void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart)

        {

        uint8_t i;
        for(i=0;i<9;i=i+1)
        {
        tembuffer=rxbuffer;
        }
if(HAL_UART_Receive_IT( huart1, rxbuffer, 5)==HAL_OK )
        {Error_Handler();}


HAL_UART_Receive_IT( huart1, rxbuffer, 5);
//UNUSED(huart);
        }


回帖(2)

李亮

2024-3-22 15:02:52
if(HAL_UART_Receive_IT( huart1, rxbuffer, 5)==HAL_OK )成立时,就进入error_handler, 是不是有while(1),这样的话,就无法返回主程序
举报

张秀荣

2024-3-22 15:02:56
可以在仿真模式下打断点看一下程序支持的地方。中断能够正常进入,说明没有进入错误中断。也许和楼上说的一样是进入了错误处理的死循环。
举报

更多回帖

×
20
完善资料,
赚取积分