
我用STM32CUBE 创建 一个 USBH FREERTOS 我缺省有3个线程 /* Create the thread(s) */ /* definition and creation of defaultTask */ osThreadDef(defaultTask, StartDefaultTask, osPriorityNormal, 0, 512); defaultTaskHandle = osThreadCreate(osThread(defaultTask), NULL); /* definition and creation of commTask */ osThreadDef(commTask, StartCommTask, osPriorityIdle, 0, 512); commTaskHandle = osThreadCreate(osThread(commTask), NULL); /* definition and creation of LedTask */ osThreadDef(LedTask, StartLedTask03, osPriorityIdle, 0, 512); LedTaskHandle = osThreadCreate(osThread(LedTask), NULL); 我看 STM32CUBE 是在 StartDefaultTask 新创建了一个 USBH 的线程 #if (USBH_USE_OS == 1U) #if (osCMSIS < 0x20000U) /* Create USB Host Queue */ osMessageQDef(USBH_Queue, MSGQUEUE_OBJECTS, uint16_t); phost->os_event = osMessageCreate(osMessageQ(USBH_Queue), NULL); /* Create USB Host Task */ #if defined (USBH_PROCESS_STACK_SIZE) osThreadDef(USBH_Thread, USBH_Process_OS, USBH_PROCESS_PRIO, 0U, USBH_PROCESS_STACK_SIZE); #else osThreadDef(USBH_Thread, USBH_Process_OS, USBH_PROCESS_PRIO, 0U, 8U * configMINIMAL_STACK_SIZE); #endif /* defined (USBH_PROCESS_STACK_SIZE) */ phost->thread = osThreadCreate(osThread(USBH_Thread), phost); #else /* Create USB Host Queue */ phost->os_event = osMessageQueueNew(MSGQUEUE_OBJECTS, sizeof(uint32_t), NULL); /* Create USB Host Task */ USBH_Thread_Atrr.name = "USBH_Queue"; #if defined (USBH_PROCESS_STACK_SIZE) USBH_Thread_Atrr.stack_size = USBH_PROCESS_STACK_SIZE; #else USBH_Thread_Atrr.stack_size = (8U * configMINIMAL_STACK_SIZE); #endif /* defined (USBH_PROCESS_STACK_SIZE) */ USBH_Thread_Atrr.priority = USBH_PROCESS_PRIO; phost->thread = osThreadNew(USBH_Process_OS, phost, &USBH_Thread_Atrr); #endif /* (osCMSIS < 0x20000U) */ #endif /* (USBH_USE_OS == 1U) */ 我单步执行过,创建都是成功的 但是 USBH_Process_OS 函数就是进不去 然后我用 osThreadList(ucD);函数检测 ,发现 是 USBH 这个线程 阻塞了 我尝试过把3个线程变成一个,这个线程里面为osDelay延时空循环,都不行 不知道哪位大侠能指点一二 |
这个论坛看来没人气,问个问题这么久连一个回答的都没有 |
This example describes how to configure the FMC controller to access the SDRAM memory in low power mode
STM32G474 BOOST电路双环PID的用法
STM32G474RET6移相问题
关于STM32Cubemx 6.15版本生成工程的文件编码的问题
如何解决用CubeMX生成代码时会将main.c文件中的汉字变成乱码的问题?
stm32cubemax
STM32CUBE MX无法安装,每次总是卡在最后一步
NUCLEO-F401RE板卡,连接USB,在KEIL下可以找到ST-LINK仿真器,也可以下载代码。在电脑上看不到NODE_F401RE的磁盘,有知道是什么原因?
STM32F103C8T6使用CubeIDE烧录运行报硬件错误,相同代码MDK烧录却可以正常运行
STM32F103C8T6 TIM1 CH2输入捕获触发DMA的问题