你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。
chrome
firefox
safari
ie8及以上
ST
意法半导体官网
STM32
中文官网
ST
全球论坛
登录/注册
首页
技术问答
话题
资源
创客秀
视频
标签
积分商城
每日签到
STM32如何实现看门狗复位不初始化RAM区
[复制链接]
fanyao-367090
提问时间:2014-2-28 16:10 /
大家好,我是做工业控制的,我想问一下STM32如何实现看门狗复位不初始化RAM区,因为是做控制的所以我们想实现CPU热复位后系统能接着原来的流程走,动作开出能不受看门狗复位的影响,即复位前开出的动作,看门狗复位后还是保持开出状态,网上说可以修改启动代码,请问如何实现?谢谢!
赞
0
收藏
1
评论
5
分享
发布时间:2014-2-28 16:10
举报
请先
登录
后回复
5个回答
fengye5340
回答时间:2014-2-28 16:30:40
a0a.1 0b0c
RE:STM32如何实现看门狗复位不初始化RAM区
不知道你RAM中需要保存的现场变量有多少个?如果是热复位的话,可以使用窗口看门狗,,在程序“PASS掉”之前,在中断中保存一下现场数据。MDK环境下,倒是有个选项可以选择不让RAM初始化,不过这个功能没用过。如果不初始化RAM,程序出现问题的可能性会不会更大呢
赞
0
评论
回复
支持
反对
废鱼
回答时间:2014-3-1 17:11:37
a0a.1 0b0c
RE:STM32如何实现看门狗复位不初始化RAM区
如果是RESET引脚复位不可能实现。
赞
0
评论
回复
支持
反对
wkuang
回答时间:2014-3-3 23:06:15
a0a.1 0b0c
RE:STM32如何实现看门狗复位不初始化RAM区
没法不复位RAM,复位后片内RAM都在上电时刻清空,你无法预置复位的时刻点,除非你检测看门狗,快要复位的时候,自动备份一把到FLASH里,但是备份需要的时间比较长。
赞
0
评论
回复
支持
反对
lockyer
回答时间:2016-8-25 08:59:45
a0a.1 0b0c
1、用窗口看门狗WWDG,开通中断,复位前会进入中断,中断中可以保存RAM数据写到FLASH中或者后备寄存器中。然后把其中一个写入特定的数字。复位后重启开始时判断是否看门狗复位,如果是,则把变量拷贝回RAM初始化变量,FALSH读出是一样的。如果不是看门狗复位,而是人为复位,则不考贝变量,直接初始化清零。
2、每一次操作后,改变了IO,或者改变了状态,都写到后备寄存器或FLASH中,不过这个寿命有限,最好外接EEPROM作为存储。FLASH的话,可以用一个字节指示写入次数,多于多少次就换下一页。这样寿命就很长了。重启复位时,判断是否看门狗复位,是的话,从FLASH读出上一次的状态就好了。
赞
0
评论
回复
支持
反对
gudujiangone_30
回答时间:2017-1-13 17:13:08
a0a.1 0b0c
请问你的解决没有。用的IAR还是Keil。这俩个方法是不一样的
赞
0
评论
回复
支持
反对
所属标签
相似问题
关于
意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
微信公众号
手机版
快速回复
返回顶部
返回列表
RE:STM32如何实现看门狗复位不初始化RAM区
RE:STM32如何实现看门狗复位不初始化RAM区
RE:STM32如何实现看门狗复位不初始化RAM区
2、每一次操作后,改变了IO,或者改变了状态,都写到后备寄存器或FLASH中,不过这个寿命有限,最好外接EEPROM作为存储。FLASH的话,可以用一个字节指示写入次数,多于多少次就换下一页。这样寿命就很长了。重启复位时,判断是否看门狗复位,是的话,从FLASH读出上一次的状态就好了。