STMCU小助手
发布时间:2022-2-14 21:22
|
前言 某客户的产品,需要评估 NUCLEO-F746ZG 板上的 USB 功能,使用 cube Version 4.15.1 版本工具生成工程,但在 win7 和 win10 上遇到驱动不正确。
使用 32F411 或 F407 时枚举及驱动,都很正常
一、 测试 1.1. IDE 环境 Embeded workbench for ARM v7.30 1.2. 修改堆栈大小 原 heap 为 0x200,调整到 400 时可正常使用,如下图:
PC 机上正常,如下图:
1.3. 修改编译选项 在 IAR 编译选项中,选择检查 heap,如下图:
编译执行中发现在 USB_CDC.c 文件中第 517 行分配内存时超过 0x200 大小,如下图:
二、 结论 应该是驱动代码占用了堆空间不够导致的程序不正常。 |
DMA 原理从 0 到 1:为什么它能解放 CPU?一文讲透 DMA 的工作流程
【福利三:逢7发帖赢大礼】8、基于STM32G070板子的Ymodem串口协议IAP Bootloader开发
【福利三:逢7发帖赢大礼】7、基于STM32G070板子TF卡的FATFS移植
【福利三:逢7发帖赢大礼】6、基于STM32G070板子spiflash的FATFS移植
【福利三:逢7发帖赢大礼】5、基于STM32G070板子IRDA红外遥控接收解码
【福利三:逢7发帖赢大礼】4、基于STM32G070板子SPI flash 移植SFUD库
【福利三:逢7发帖赢大礼】基于STM32G070板子的uart shell移植设计
【福利三:逢7发帖赢大礼】3、基于STM32G070板子的YModem串口协议通信
【福利三:逢7发帖赢大礼】2、基于STM32G070板子的OLED移植U8G2库
实战经验 | ClassB功能安全认证代码与应用代码分区的实现要点
微信公众号
手机版