cancel
Showing results for 
Search instead for 
Did you mean: 

HAL_SPI_TransmitReceive导致freertos死在osdelay中

along ma
Associate

1�?用STM32CUBEMX生�?的代�?,stm32f405+st25ru3993,使用freertos

​两个任务如下,一个闪�?LED,�?�一个测试�?�延时500ms

void StartDefaultTask(void *argument)

{

 /* USER CODE BEGIN StartDefaultTask */

 /* Infinite loop */

 for(;;)

 {

HAL_GPIO_TogglePin(SYS_LED_GPIO_Port,SYS_LED_Pin);

        osDelay(500);

 }

 /* USER CODE END StartDefaultTask */

}

*******************************

void StartTask02(void *argument)

{

 /* USER CODE BEGIN StartTask02 */

 /* Infinite loop */

 for(;;)

 {

inventoryGen2_fast();

    osDelay(500);

 }

 /* USER CODE END StartTask02 */

}

2�?�?�步调试时,�?�现�?行完inventoryGen2_fast()�?�,�?次�?行 osDelay(500)时,就永远�?�在prvCheckTasksWaitingTermination,�?也�?出�?�了,系统就挂了。

3�?当我�?蔽掉inventoryGen2_fast()中的HAL_SPI_TransmitReceive�?�,系统�?�以正常工作,如LED正常闪�?。

4�?现在怀疑执行HAL_SPI_TransmitReceive�?�,�?进入osDelay,就出问题了,感觉�?者影�?了�?�者,但是找�?到原因,求助求助

0 REPLIES 0