单片机学习小组
直播中

打马过草原

9年用户 879经验值
擅长:可编程逻辑 电源/新能源
私信 关注

如何调试瑞萨RX130的片上IWDG?

如何调试瑞萨RX130的片上IWDG?

回帖(1)

李开心

2022-2-16 09:46:55
概述

瑞萨RX130的看门狗,配置后必须要喂狗一次,才能激活狗;否则狗就不工作。
过程

今天在调试瑞萨RX130的片上IWDG。使用CS+的Code Generator自动生成外设初始化部分,我仅配置了时钟和看门狗。
程序内容




  • 时钟:从HSE倍频到32MHz,并开启看门狗时钟(15KHz)。
  • 看门狗:复位周期是135ms。
  • 打了一个断点,指向main的用户初始化函数 R_MAIN_UserInit(),用以观测复位。
  • 为了测试狗的功能,main主循环里没有喂狗操作。
  • main主循环中存在一个自定义的累加变量,用其数值的清零来观测程序的复位。

不喂狗

程序下载后,发现:经过R_MAIN_UserInit()后,变量一直在累加。程序一直运行在主循环。说明看门狗没有工作。
喂狗一次

R_MAIN_UserInit()中加入喂狗函数。下载后,发现:经过R_MAIN_UserInit()后,变量累加到一定值后,程序回到断点位置,同时变量的值复位归零。程序发生看门狗复位。说明狗的功能可用。
连续喂狗

继续(2),在主循环中加入喂狗函数。经过R_MAIN_UserInit()后,变量一直在累加。程序一直运行在主循环,没有发生复位。说明喂狗成功。
总结

瑞萨RX130的看门狗,配置后必须要喂狗一次,才能激活狗;否则狗就不工作。
分析

这样的养狗方式也有优点:在第一次喂狗之前,你可以有很长的时间去让单片机去执行那些费时(如有限循环)的工作,而不必担心看门狗产生软件复位。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分