zhangxk99 发表于 2017-2-21 15:08:53

STM32F407ZET6上电启动时而快时而慢

你好!有哪位遇到过这样的情况,断电很久(约大于10秒)后再上电时芯片启动很慢,大约要等个5秒左右芯片才启动(状态指示灯闪烁),如果是断电1-2秒再上电,则启动很快(应该是ms级的,属于正常)。上电启动电路是10K电阻上拉、1u电容下拉。

zhangxk99 发表于 2017-2-21 16:14:04

谢谢各位!问题解决了,当RTC选择LSE时有此问题,选择LSI时正常了,在程序中有等待RTC时钟稳定的检测,看来是外部的32.768KHz晶体部分存在问题。

creep 发表于 2017-2-21 15:37:07

建议还是想办法debug下是那个部分的初始化占用了这么长的时间?外设初始化、系统时钟稳定。。。

wenyangzeng 发表于 2017-2-21 15:47:02

应该是你的系统初始化哪个外设所致。

xmshao 发表于 2017-2-21 16:44:08

关于HSE/LSE那块的配置 建议看看ST官方的一个手册AN2867.

如果HSE/LSE振荡不稳的话,往往带来些麻烦。

zhangxk99 发表于 2017-2-21 19:18:26

xmshao 发表于 2017-2-21 16:44
关于HSE/LSE那块的配置 建议看看ST官方的一个手册AN2867.

如果HSE/LSE振荡不稳的话,往往带来些麻烦。 ...

经过仔细的调试检测,发现问题在RTC的备份寄存器数据丢失,程序上电时检测RTC_BKP0R的值是否为定义值,如果不是,则执行初始化RTC,并设置RTC_BKP0R为定义值,如果是则跳转不执行初始化部分。
纽扣电池的电压在2.95V左右,为何数据会丢失呢?

xmshao 发表于 2017-2-21 21:01:04

本帖最后由 xmshao 于 2017-2-22 12:12 编辑

你的数据丢失跟你断电时间长短有直接关系,你好好检查下你电源电路。

既然数据丢失了 说明有可能有出现VDD和VBAT同时掉电的情形。

断电后不妨用示波器监测下VBAT电压。

creep 发表于 2017-2-21 22:27:06

zhangxk99 发表于 2017-2-21 19:18
经过仔细的调试检测,发现问题在RTC的备份寄存器数据丢失,程序上电时检测RTC_BKP0R的值是否为定义值,如 ...

说不定是没有保存成功或者读取失败。

zhangxk99 发表于 2017-2-22 08:24:11

xmshao 发表于 2017-2-21 21:01
你的数据丢失跟你断电时间长短有直接关系,你好好检查下你电源电路。

既然数据丢失了 说明既有可能有出现V ...

应该不存在此种情况,在VBAT脚只接了CR1220纽扣电池和一个0.1u的电容,应该是芯片内部控制在上电时切换到VDD供电。

zhangxk99 发表于 2017-2-22 08:26:04

creep 发表于 2017-2-21 22:27
说不定是没有保存成功或者读取失败。

现象是断电时间短再上电不会进入初始化程序,说明读取到的数值没有问题。
页: [1]
查看完整版本: STM32F407ZET6上电启动时而快时而慢