STM32从标准外设切换到HAL。 USB设备始终显示为"未知设备"在窗户

时间:2016-06-20 01:50:10

标签: usb stm32 hid

我有一个需要与STM32F1和STM32F4兼容的项目。我从一个可以使用GPIO的基本项目开始,我现在正试图获得USB HID支持。我有使用标准外设驱动程序和USB OTG的另一个项目在STM32F4上工作的USB HID,但我很难与HAL驱动程序一起工作。无论我尝试过什么,USB设备都会在Windows中不断显示为未知设备。哪里可以最好地开始调试此问题?使用SWD逐步执行代码使得看起来电路板似乎正常工作。据我所知,HID的端点和描述符是正确的。

1 个答案:

答案 0 :(得分:0)

使用STM32CubeMX为您设置USB。然后你需要改变堆大小,因为默认值不够大。出于某种原因,您无法从STM32CubeMX更改堆大小。要更改它,您需要编辑启动文件(startup_stm32f4 ..... s)并找到该行:

Heap_Size       EQU     0x00000200

并将值更改为更大的值,例如:

Heap_Size       EQU     0x00002000