你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

【实战经验】STM32F746ZG USB 驱动不正常

[复制链接]
zero99 发布时间:2016-7-15 05:57
STM32F746ZG USB 驱动不正常 0 x# y/ m/ W- P% a: v- t5 u
8 p7 n( Q* T2 H8 ?* N* d) A
前言
1 b( O/ a" }8 z3 o. d# c某客户的产品,需要评估NUCLEO-F746ZG板上的USB功能,使用cube Version 4.15.1 版本工具生成工程,但在win7和win10上遇到驱动不正确。
. R' x( v- V$ \$ {! I 1.png 1 u. d% `5 C1 n. p" }" T" J5 a
, B/ Y6 p; e2 X  F% Q9 c
使用32F411 或F407时枚举及驱动,都很正常" n, `1 l) N2 u; O2 F7 {
2.png
7 C! @: j# b2 p" F, ~+ D- z' d; o( u6 |
一、 测试
$ h' y* h) i2 E1.1. IDE 环境
: @0 e4 E* Y5 n) g3 h) ]* ?1 `Embeded workbench for ARM v7.30
7 v3 v0 N. Y9 J" v# f5 Z, }1.2. 修改堆栈大小+ w. u3 E( P: O6 J; H2 Y
原heap为0x200,调整到400时可正常使用,如下图:
$ f1 d9 u1 g+ |8 [2 d% r' L( X$ P 3.png
0 }# ~2 @. p+ H' c$ }
& N% Z/ v( g$ x5 TPC机上正常,如下图:, ]: i& M$ O6 A4 W  A5 b
4.png
' k$ ]9 ~1 a3 Z( F& m" G' g% I' K/ c! E1 C
1.3. 修改编译选项
! {! ~4 F5 |4 e7 b8 [. B! T9 O在IAR编译选项中,选择检查heap,如下图:
: Y/ N& {- M4 q0 _5 o5 C 5.png
5 P' M; \% w  @! a9 p
3 p/ r( q( A2 z5 |3 r编译执行中发现在USB_CDC.c 文件中第517行分配内存时超过0x200大小,如下图:! s$ {- r( L8 \; O/ m
6.png
7 f. w% [  u7 \& H( B5 V
( V. K# g& }8 ]. l二、 结论' t! D$ w7 |; ?# b! ^6 b! J
应该是驱动代码占用了堆空间不够导致的程序不正常。
5 y; l; I" W' H, q% U; i2 B) H) t. ]( h5 r

+ Z! l+ n0 g* `' I4 E$ }文档下载地址:  }( z5 E: D  p, M
https://www.stmcu.org.cn/document/list/index/category-1038
. W: d; i) d3 N; h5 u
& I: J, o5 j8 U( O* \实战经验汇总:
8 I/ k  Y# {  f. Q) {https://www.stmcu.org.cn/module/forum/thread-576401-1-1.html0 v3 Y: f0 F. q7 f6 e, t

& i0 U2 a% ~9 R" \' H5 Y3 }; i
赞 收藏 评论0 发布时间:2016-7-15 05:57

举报

0个回答

所属标签

相似技术帖

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
人形机器人运动控制、感知与智能配电
半导体创新技术与应用方向
EE架构与软件定义汽车
12V/48V 汽车智能配电(SPD)
区域控制单元(ZCU)与分区架构
关注我们
st-img 微信公众号
st-img 手机版