看门狗工作原理
在系统运行以后也就启动了看门狗的计数器,看门狗就开始自动计数,如果到了一定的时间还不去清看门狗(喂狗),那么看门狗计数器就会溢出从而引起看门狗中断,造成系统复位。
看门狗作用
看门狗的作用就是防止程序发生死循环或者卡死,或者说程序跑飞。
看门狗框图
S32K1xx Series Reference Manual 第23章给出了看门狗的框图:

看门狗配置
Components Library 中添加 wdog 组件,配置wdog:
- 时钟源默认
WDOG_LPO_CLOCK(默认128kHz,可到clock_manager中修改为32kHz或者1kHz)
- 勾选 预分频使能(鼠标悬停提示固定256分频,这样分频后的
clock cycles就变成了500Hz,128000 / 256 = 500 Hz) - 设置 Timeout Value 为1000,也就是2s( T = (1/500)*1000 = 2s )内喂狗就不会复位了,注意Window Value 和 Timeout Value 都是16位计数器,值必须在[1,65535],否则无效(回到之前的值)

串口配置
-
Components Library 中添加
lpuart组件,配置lpuart,选择LPUART2,波特率为115200:

-
双击工程名,点击Components目录下的
pin_mux:PinSettings,LPUART中选择PTA8/PTA9,并设置发送为Output:
<

本文详细介绍了基于S32K148单片机的看门狗(WDOG)工作原理、作用及配置方法。通过配置看门狗的时钟源、预分频、超时值,确保在2秒内喂狗避免系统复位。同时,文章还涵盖了串口配置和相关代码实现,通过实际操作验证了看门狗的正确设置和功能。
最低0.47元/天 解锁文章
2035

被折叠的 条评论
为什么被折叠?



