硬汉嵌入式论坛

 找回密码
 立即注册
查看: 994|回复: 9
收起左侧

[技术讨论] 遇到了一个很奇怪的问题

[复制链接]

4

主题

23

回帖

35

积分

新手上路

积分
35
发表于 2025-8-12 09:23:02 | 显示全部楼层 |阅读模式
佬们,最近遇到了一个很奇怪的问题,在使用STM32F401RCT6调试新功能,之前工程板打样比较慢就用的开发板(最小系统)自己搭了电路测试,代码也写完了,现在工程板打样回来后,将代码烧录debug发现单片机跑飞了,单步调试发现是在执行完HAL_RCC_ClockConfig()->SystemCoreClock = HAL_RCC_GetSysClockFreq() >> AHBPrescTable[(RCC->CFGR & RCC_CFGR_HPRE)>>RCC_CFGR_HPRE_Pos]; 在执行HAL_RCC_GetSysClockFreq()中的pllvco = (uint32_t)((((uint64_t)HSE_VALUE*((uint64_t)((RCC->PLLCFGR & RCC_PLLCFGR_PLLN) >> RCC_PLLCFGR_PLLN_Pos)))) / (uint64_t)pllm);后单片机访问了异常的地址如0xaa8001a26,随后卡死,一开始怀疑是代码有被修改过了,但是将代码重新烧录至开发板上,运行就正常了,又怀疑工程板的晶振是不是没起振,示波器测量晶振波形也非常漂亮,检查了电源也没问题,后面也试了直接跳过电源部分直接给单片机供电,后面也将MCU,晶振,匹配电容都和开发板替换了一下,结果都是开发板能正常跑,工程板跑到这个地方就飞,又检查了BOOT,复位引脚的电平,都是正常的,将和MCU连接的外设全部拆掉,debug测试还是不行依旧在该处跑飞,到此完全想不到还有什么能够排查的方向了,恳请各位大佬指点一二!
回复

使用道具 举报

7

主题

165

回帖

186

积分

初级会员

积分
186
发表于 2025-8-12 11:01:12 | 显示全部楼层
肯定是排查不到位,很奇怪的问题背后有一个很蠢的错误,慢慢找。
检测 电源  复位 ,IO , 晶振是不是一样有些8M,有些25M的
回复

使用道具 举报

4

主题

23

回帖

35

积分

新手上路

积分
35
 楼主| 发表于 2025-8-12 13:44:46 | 显示全部楼层
mygod 发表于 2025-8-12 11:01
肯定是排查不到位,很奇怪的问题背后有一个很蠢的错误,慢慢找。
检测 电源  复位 ,IO , 晶振是不是一样 ...

现在就是想不到还有什么能够排查的地方了,电源也测过了,也试过直接跳过电源供电,IO部分,和MCU有连接的器件也全部拆掉了,晶振反复确认过了是25M,也替换过晶振
回复

使用道具 举报

1

主题

8

回帖

11

积分

新手上路

积分
11
发表于 2025-8-12 14:03:15 | 显示全部楼层
检查下VDDA供电呢,VDDA上有RC滤波的话R不能太大哟,不然PLL跑不起来
回复

使用道具 举报

4

主题

23

回帖

35

积分

新手上路

积分
35
 楼主| 发表于 2025-8-13 16:50:53 | 显示全部楼层
tomato233 发表于 2025-8-12 14:03
检查下VDDA供电呢,VDDA上有RC滤波的话R不能太大哟,不然PLL跑不起来

尝试了跳过板子上的电源部分对MCU进行供电,结果是一样的,MCU_VDD部分并未看到有RC滤波,倒是接了很多滤波电容
回复

使用道具 举报

5

主题

44

回帖

59

积分

初级会员

积分
59
发表于 2025-8-14 08:49:39 | 显示全部楼层
只用内部晶振能跑起来吗
回复

使用道具 举报

4

主题

23

回帖

35

积分

新手上路

积分
35
 楼主| 发表于 2025-8-14 08:57:22 | 显示全部楼层
p00equal1 发表于 2025-8-14 08:49
只用内部晶振能跑起来吗

可以的,最开始试的方法就是改HSI试了试,HSI能跑后就开始怀疑晶振部分是不是没起振一类的问题了
回复

使用道具 举报

5

主题

44

回帖

59

积分

初级会员

积分
59
发表于 2025-8-14 14:01:11 | 显示全部楼层
extero 发表于 2025-8-14 08:57
可以的,最开始试的方法就是改HSI试了试,HSI能跑后就开始怀疑晶振部分是不是没起振一类的问题了

401RC是不是支持USB DFU的,看下官方的BOOT能不能正常用,选项字节有没有检查过?
回复

使用道具 举报

4

主题

23

回帖

35

积分

新手上路

积分
35
 楼主| 发表于 2025-8-28 14:22:20 | 显示全部楼层
找到问题所在了,是硬件画板的时候漏了一个VCAP引脚,将其串一个2.2uf的电容接地就解决了,之前学习的时候没有接触过这个引脚,还以为是无关紧要的东西,就忽略了,没想到因为这个耽误了这么久
回复

使用道具 举报

0

主题

5

回帖

5

积分

新手上路

积分
5
发表于 2025-9-15 14:50:27 | 显示全部楼层
extero 发表于 2025-8-28 14:22
找到问题所在了,是硬件画板的时候漏了一个VCAP引脚,将其串一个2.2uf的电容接地就解决了,之前学习的时候 ...

这个是内部LDO输出的电容吧
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2025-9-27 16:22 , Processed in 0.111768 second(s), 24 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表