После генерации CubeMX с USB HOST , HAL и FreeRTOS получается код , в котором USB HOST представлен отдельным потоком USB_Queue.
Не выделяется память в команде USBH_malloc
Почему-то без FreeRTOS подключение нового устройства и прием данных с клавиатуры работает.
А под FreeRTOS подключение нового устройства проходит , но затык происходит в районе HOST_CHECK_CLASS.
А точнее при инициализации pData :
phost->pActiveClass->pData = (HID_HandleTypeDef *)USBH_malloc (sizeof(HID_HandleTypeDef));
Меняем USBH_malloc на pvPortMalloc
И проблема уходит!
Меняем USBH_free на vPortFree
//USBH_free (phost->pActiveClass->pData);
vPortFree (phost->pActiveClass->pData);
Файлы для скачивания
*
работает Ура!