我正在使用STM32F401RBT6
的嵌入式应用程序,试图与PC(Windows 10)建立连接,但系统无法识别该设备。我由STMCubeMX
生成并由Atollic
调试的代码不起作用。我看到并尝试重现了几个示例,但是一切正常。在代码中,我拥有我认为必要的所有库。
我有STMCubeMX
为CDC
通讯生成的存档,但是我是新手,我不知道我必须对USB代码进行什么修改才能被系统识别。有人可以帮我吗?
最佳答案
USBD_CDC_Init(..)函数内部有一个malloc函数,该函数在堆上分配大约540字节的内存。
生成代码时,CubeMX没有考虑到这一点。
因此,至少必须考虑这些额外的字节来定义堆大小,才能使USB CDC端口正常工作。
关于c - STM32F4的USB CDC设置和库出现问题,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/58341350/