[技术问题解答] KL25看门狗和休眠问题

[复制链接]
 楼主| wxb18k 发表于 2014-11-18 10:32 | 显示全部楼层 |阅读模式
我需要4s的休眠,但是看门狗的益处时间最长是1s,也就是我休眠1s就会被复位,无法达到休眠效果,请问怎么解决这个问题
FSL_TICS_Jeremy 发表于 2014-11-18 11:01 | 显示全部楼层
你好,楼主!
你可以使用其他的唤醒源,我建议你可以考虑尝试LPTMR和RTC.
1.jpg
 楼主| wxb18k 发表于 2014-11-18 15:04 | 显示全部楼层
FSL_TICS_Jeremy 发表于 2014-11-18 11:01
你好,楼主!
你可以使用其他的唤醒源,我建议你可以考虑尝试LPTMR和RTC.

我的唤醒源本来就是RTC啊,只是要用到看门狗,因为我的程序出现了跑飞的现象
FSL_TICS_Jeremy 发表于 2014-11-18 15:18 | 显示全部楼层
wxb18k 发表于 2014-11-18 15:04
我的唤醒源本来就是RTC啊,只是要用到看门狗,因为我的程序出现了跑飞的现象 ...

你好,楼主!
说到这,我就有点疑惑啊,MCU进入休眠,代码就不执行啊,即肯定不会进行喂狗操作,而你的休眠时间又大于看门狗的溢出时间,那肯定会引起看门狗复位中断执行啊。
 楼主| wxb18k 发表于 2014-11-18 17:14 | 显示全部楼层
FSL_TICS_Jeremy 发表于 2014-11-18 15:18
你好,楼主!
说到这,我就有点疑惑啊,MCU进入休眠,代码就不执行啊,即肯定不会进行喂狗操作,而你的休 ...

首先,休眠时间4s是必须的,本来是不考虑用看门狗的,没想到程序跑飞了,这才考虑用看门狗的,只是看门狗的最长时间太短了,有办法补救不?
FSL_TICS_Jeremy 发表于 2014-11-18 17:24 | 显示全部楼层
wxb18k 发表于 2014-11-18 17:14
首先,休眠时间4s是必须的,本来是不考虑用看门狗的,没想到程序跑飞了,这才考虑用看门狗的,只是看门狗 ...

楼主!
我觉得第一步还是先确定程序跑飞是在那一段引起的,如果在休眠唤醒后,程序开始跑飞的话,那就没有必要在进入休眠模式之前就使能看门狗模块工作,不然的话,看门狗肯定会在4S的休眠期内,触发看门狗中断的。
 楼主| wxb18k 发表于 2014-11-18 17:28 | 显示全部楼层
FSL_TICS_Jeremy 发表于 2014-11-18 17:24
楼主!
我觉得第一步还是先确定程序跑飞是在那一段引起的,如果在休眠唤醒后,程序开始跑飞的话,那就没 ...

确实是在唤醒后跑飞的,至于系统是什么原因跑飞的我也不知道,所以才想到看门狗啊
 楼主| wxb18k 发表于 2014-11-18 17:30 | 显示全部楼层
FSL_TICS_Jeremy 发表于 2014-11-18 17:24
楼主!
我觉得第一步还是先确定程序跑飞是在那一段引起的,如果在休眠唤醒后,程序开始跑飞的话,那就没 ...

确实是在唤醒后跑飞得,但是我也不知道究竟什么原因跑飞,这才想到用看门狗
FSL_TICS_Jeremy 发表于 2014-11-19 09:23 | 显示全部楼层
wxb18k 发表于 2014-11-18 17:30
确实是在唤醒后跑飞得,但是我也不知道究竟什么原因跑飞,这才想到用看门狗 ...

你好,楼主!
如果是在唤醒后跑飞的,何不将看门狗使能开启放在唤醒后,这样就可以避免在睡眠中,由于看门狗中断而唤醒啊!
sgj245609615 发表于 2014-11-19 10:44 | 显示全部楼层
唤醒后开看门狗 休眠关掉看门狗呢
 楼主| wxb18k 发表于 2014-11-20 09:03 | 显示全部楼层
FSL_TICS_Jeremy 发表于 2014-11-19 09:23
你好,楼主!
如果是在唤醒后跑飞的,何不将看门狗使能开启放在唤醒后,这样就可以避免在睡眠中,由于看 ...

可是看门狗的使能和禁止寄存器只能被设置一次啊,之后就无效了
FSL_TICS_Jeremy 发表于 2014-11-20 09:21 | 显示全部楼层
wxb18k 发表于 2014-11-20 09:03
可是看门狗的使能和禁止寄存器只能被设置一次啊,之后就无效了

你好,楼主!
看门狗是是只能配置一次,但是你可以在唤醒后,执行看门狗使能,而不要在初始化过程中,进行看门狗配置。
 楼主| wxb18k 发表于 2014-11-20 09:24 | 显示全部楼层
%0P]C](DJP)ZE)$J9DH05FK.png 可以看到,在复位后可以开看门狗,但是在休眠之前切没办法关掉它
 楼主| wxb18k 发表于 2014-11-20 09:26 | 显示全部楼层
FSL_TICS_Jeremy 发表于 2014-11-20 09:21
你好,楼主!
看门狗是是只能配置一次,但是你可以在唤醒后,执行看门狗使能,而不要在初始化过程中,进 ...

怎么使能呢?
 楼主| wxb18k 发表于 2014-11-20 09:28 | 显示全部楼层
FSL_TICS_Jeremy 发表于 2014-11-20 09:21
你好,楼主!
看门狗是是只能配置一次,但是你可以在唤醒后,执行看门狗使能,而不要在初始化过程中,进 ...

使能后又怎么禁止呢?
FSL_TICS_Jeremy 发表于 2014-11-20 09:41 | 显示全部楼层
wxb18k 发表于 2014-11-20 09:24
可以看到,在复位后可以开看门狗,但是在休眠之前切没办法关掉它

你好,楼主!
前面我有个疏忽的地方,忘了问你,你所说的的睡眠具体指进入那个低功耗模式呢?

 楼主| wxb18k 发表于 2014-11-20 10:08 | 显示全部楼层
FSL_TICS_Jeremy 发表于 2014-11-20 09:41
你好,楼主!
前面我有个疏忽的地方,忘了问你,你所说的的睡眠具体指进入那个低功耗模式呢?

VLPS低功耗模式
 楼主| wxb18k 发表于 2014-11-20 10:48 | 显示全部楼层
FSL_TICS_Jeremy 发表于 2014-11-20 09:41
你好,楼主!
前面我有个疏忽的地方,忘了问你,你所说的的睡眠具体指进入那个低功耗模式呢?

大哥,怎么还没回我呢?
FSL_TICS_Jeremy 发表于 2014-11-20 11:09 | 显示全部楼层
wxb18k 发表于 2014-11-20 10:48
大哥,怎么还没回我呢?

你好,楼主!
VLPS唤醒后,不像VLLSx模式引起MCU复位重启,你应该可以将初始化中配置看门狗函数移动到唤醒后执行。
 楼主| wxb18k 发表于 2014-11-20 11:49 | 显示全部楼层
FSL_TICS_Jeremy 发表于 2014-11-20 11:09
你好,楼主!
VLPS唤醒后,不像VLLSx模式引起MCU复位重启,你应该可以将初始化中配置看门狗函数移动到唤 ...

我是通过RTC唤醒的,休眠时间为3.8s;比如我唤醒后配置看门狗,然后过了200ms后重新进入休眠,那么按照看门狗是不是休眠800s就会被看门狗复位?但是我需要的是休眠3.8s啊。怎么办?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

20

主题

140

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部