如何在设备模式下作为HID(USB)运行的STM32f407发现板中从HOST PC接收OUT报告数据? 可能吗? 我正在考虑使用hidapi从主机发送数据。
答案 0 :(得分:1)
有一个官方的USB库。这并不容易,但您可以尝试运行示例并根据您的需求进行调整。 http://www.st.com/en/embedded-software/stsw-stm32046.html
小心时钟设置。我遇到了问题。以下是我在system_stm32f4.c中设置的值:
HSE = 8000000
PLL_M = 8
PLL_Q = 7
PLL_N = 336
PLL_P = 4
HSE是板上的水晶。它取代了MCU上的嵌入式时钟。其他设置与原始配置文件中的值略有不同。以下是不同时钟的计算:
PLL_VCO = (HSE_VALUE or HSI_VALUE / PLL_M) * PLL_N
= 8000000 / 8 * 336 = 336000000
USB OTG FS, SDIO and RNG Clock = PLL_VCO / PLLQ
= 336000000 / 7
= 48000000
SYSCLK = PLL_VCO / PLL_P
= 336000000 / 4
= 84000000
HCLK = SYSCLK / 1
= 84000000
PCLK2 = HCLK / 1
= 84000000
PCLK1 = HCLK / 2
= 84000000 / 2
= 42000000
如果使用USB FS,“USB OTG FS”时钟必须> = 48MHz。否则设备将无法识别。