找回密码
 立即注册
查看: 973|回复: 9

STC8H8K64U掉电唤醒后,为什么像上电重启一样执行初始化?

[复制链接]

该用户从未签到

1

主题

4

回帖

21

积分

新手上路

积分
21
发表于 2023-2-25 15:33:10 | 显示全部楼层 |阅读模式
请问各位老师,我用STC8H8K64U,因为要用RTC,电路板有3V电池,用P37检测电压,电压低进入掉电模式,掉电3秒后唤醒检测。电压低继续进入掉电模式,电压正常程序往下执行。我用仿真和可调电阻调电压测试,进入掉电模式和3秒唤醒后,电压正常,程序继续往下执行都是可以的。但是程序下载到电路板,断电,一段时间后,重新上电,单片机就会执行上电初始化。而不会从进入掉电模式语句的下一条语句开始执行。复位脚P54已经设为普通IO脚,低压复位也关了。看门狗没有开,电池电压是3V。请问还有什么会令单片机复位呢?
回复 送花

使用道具 举报

  • TA的每日心情
    开心
    昨天 07:58
  • 签到天数: 145 天

    [LV.7]常住居民III

    5

    主题

    29

    回帖

    706

    积分

    高级会员

    积分
    706
    发表于 2023-2-25 16:57:11 | 显示全部楼层
    查看一下复位标志寄存器RSTFLAG,应该可以知道是什么原因引起的复位。
  • TA的每日心情
    开心
    2024-6-6 12:20
  • 签到天数: 18 天

    [LV.4]偶尔看看III

    16

    主题

    730

    回帖

    2638

    积分

    超级版主

    积分
    2638
    发表于 2023-2-25 20:18:27 | 显示全部楼层
    时钟、复位相关代码均不支持仿真,主要包括如下
    和时钟相关:动态切换外部晶振为系统时钟、动态切换PLL时钟为系统时钟、软件动态设置CLKDIV
    和复位相关:STOP模式、IDLE模式、软件复位、看门狗复位、低压复位

    该用户从未签到

    46

    主题

    3174

    回帖

    7171

    积分

    超级版主

    积分
    7171
    发表于 2023-2-25 20:26:59 | 显示全部楼层
    MCU仿真时需要和PC通信的,所以不能进入掉电模式。

    该用户从未签到

    1

    主题

    4

    回帖

    21

    积分

    新手上路

    积分
    21
     楼主| 发表于 2023-2-27 16:47:49 | 显示全部楼层
    小白 发表于 2023-2-25 16:57
    查看一下复位标志寄存器RSTFLAG,应该可以知道是什么原因引起的复位。

    好的,谢谢!我看看能查一下试试。

    该用户从未签到

    1

    主题

    4

    回帖

    21

    积分

    新手上路

    积分
    21
     楼主| 发表于 2023-2-27 16:49:37 | 显示全部楼层
    zhp 发表于 2023-2-25 20:18
    时钟、复位相关代码均不支持仿真,主要包括如下
    和时钟相关:动态切换外部晶振为系统时钟、动态切换PLL时钟 ...

    不是仿真不行,是下载程序到电路板测试,不行。

    该用户从未签到

    1

    主题

    4

    回帖

    21

    积分

    新手上路

    积分
    21
     楼主| 发表于 2023-2-27 16:52:14 | 显示全部楼层
    梁工 发表于 2023-2-25 20:26
    MCU仿真时需要和PC通信的,所以不能进入掉电模式。

    仿真时,我还真试过可以进入掉电模式。只要用可调电阻,将检测电压调低就行。然后时间够了,还能唤醒。我现在不是仿真不行,是下载程序到电路板。重新上电不行。
  • TA的每日心情
    奋斗
    昨天 08:57
  • 签到天数: 163 天

    [LV.7]常住居民III

    27

    主题

    1439

    回帖

    4492

    积分

    论坛元老

    积分
    4492
    发表于 2023-2-27 18:53:16 | 显示全部楼层
    掉电模式是 Power down mode,不是断电 Power off。
    单片机断电一段时间后重新上电肯定是会复位的。
    掉电模式是执行 PCON = PD; 指令让芯片进入省电模式,而不是将芯片断电了。

    该用户从未签到

    1

    主题

    4

    回帖

    21

    积分

    新手上路

    积分
    21
     楼主| 发表于 2023-2-28 08:41:33 | 显示全部楼层
    乘风飞扬 发表于 2023-2-27 18:53
    掉电模式是 Power down mode,不是断电 Power off。
    单片机断电一段时间后重新上电肯定是会复位的。
    掉电模 ...

    断电重新上电复位是肯定的,我有电池供电,进入省电模式,3秒唤醒,检测到电压正常,即是重新上电。就应该会执行断电前的下一条指令吧?我看8H的参考手册是这样子说有。
  • TA的每日心情
    奋斗
    昨天 08:57
  • 签到天数: 163 天

    [LV.7]常住居民III

    27

    主题

    1439

    回帖

    4492

    积分

    论坛元老

    积分
    4492
    发表于 2023-3-1 18:37:09 | 显示全部楼层
    lidianzi 发表于 2023-2-28 08:41
    断电重新上电复位是肯定的,我有电池供电,进入省电模式,3秒唤醒,检测到电压正常,即是重新上电。就应 ...

    用示波器测量一下VCC电压,如果外部供电断开后转电池供电,VCC能一直保持正常工作电压范围内的话,
    用官网STC8H实验箱例程包里的例子"69-内部RTC时钟低功耗休眠唤醒-比较器检测电压程序"试试看。
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    QQ|手机版|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

    GMT+8, 2024-6-14 07:53 , Processed in 0.067251 second(s), 64 queries .

    Powered by Discuz! X3.5

    © 2001-2024 Discuz! Team.

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