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

难道STM32G4芯片的主频才到80MHz?

[复制链接]
eefishing 发布时间:2020-6-23 18:38
最近有个STM32用户反映,他们目前在调试STM32G431CBU6这款芯片。使用ST官方的Cube库进行编程,发现时钟没法配置到技术手册上告知的170MHz。当然这个170MHz的频率要经过PLL倍频产生。不管选用内部时钟源还是外部晶振,只要配置成170MHz,芯片肯定会复位。
基于HSI时钟源的相关时钟配置代码大致如下:

11.jpg

他尝试做了各种软硬件调整排查,经过反复测试验证,发现设置PLL所产生的时钟只有在不高于80MHz时,芯片才能正常运行。可STM32芯片手册白纸黑字明明写着主频可以跑到170MHz啊!

22.jpg

由于死活找不出软件或硬件方面的原因,几近内心崩溃。甚至不直觉地开始怀疑该芯片是否真的支持170MHz的主频。所以他的问题简单直接,STM32G4到底支不支持170MHz的主频?
关于STM32G4系列的主频参数,是最基本而核心的一个参数,手册是不可能写错的。何况本人之前也使用STM32G4的开发板做过一些测试,都是基于170MHz进行的。
鉴于这种情况,我们首先可以检查一个参数,即CPU通过FLASH控制器取指时的那个延时等待参数,它配置得是否合适会影响MCU的正常工作。我们知道CPU的访问速率通常要比FLASH控制器的取指速率快得多,这个延时等待参数的配置需要跟CPU的主频匹配。各个STM32系列的参考手册里都有个对照表。下图是STM32G4系列的。

33.jpg

按照上面表格来看,如果内核时钟跑到170MHz,这个Latency参数应该设置为8。
经了解,他已经注意到这个参数了,并将这个参数做了正确配置。看来不是这方面的原因,再换个方向看看。
主频的提高往往意味着功耗的增大或噪声及干扰方面可能加剧。于是试图从系统供电能力、电源稳定度、时钟稳定性方面查找原因,依然没有发现明显问题。
建议他对STM32芯片所有电源或电源相关管脚逐个排查连接、焊接情况,当然也包括VDDA脚的连接情况。遇到类似这种没法一下子从软硬件上找出与异常症状之间明显的逻辑关系时,这样做往往是个简单而且比较有效的排错办法。
经针对相关管脚的逐个排查,很快发现芯片的VDDA脚虚焊了,重新处理后芯片于170MHz运行稳健。

44.jpg

问题终于得以解决。看到这里,相信很多人会认为该问题不复杂、也谈不上深奥,可这类问题原因往往容易被我们忽视掉,难就难在一会半会想不到可能的原因所在。

在我们的实际调试过程中可能很多类似的问题,虽谈不上多么复杂或深奥,但往往由于我们内心深处从头到尾存在对某些点的忽视或者想当然,导致一时半会找不到问题原因而耽误时间。比方一个大小端的选择、一个变量数据宽度的适时调整、一个虚焊的BOOT脚等,它们都很可能将我们困住好一阵子。

在此分享相关案例, 愿各位在MCU嵌入式开发过程中多些经验的积累,令开发过程尽量平坦而舒心些。


收藏 评论5 发布时间:2020-6-23 18:38

举报

5个回答
radio2radio 回答时间:2020-6-23 22:32:06
避免遇到这种硬件问题,作为软件工程师,和你老板事先说好了,手头需要两套以上的初样实验板,遇到问题对比测试。 两块板都在同一个焊点虚焊的机会非常低,避免浪费时间。
desk1983 回答时间:2020-6-24 08:47:58
挺齐全的资料,方便下载,谢谢挺齐全的资料,方便下载,谢谢挺齐全的资料,方便下载,谢谢
likang1202 回答时间:2020-6-24 09:04:52
顶一下,焊样板的时候最好能焊两块或者以上
bjflsk 回答时间:2020-6-24 09:33:47
赞一个!
jy04706985 回答时间:2020-6-24 18:20:01
支持。。。。。小问题往往困扰好久

所属标签

STM32团队

意法半导体微控制器和微处理器拥有广泛的产品线,包含低成本的8位单片机和基于ARM® Cortex®-M0、M0+、M3、M4、M33、M7及A7内核并具备丰富外设选择的32位微控制器及微处理器


最新内容

相似技术帖

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
微信公众号二维码 微信公众号
手机版二维码 手机版