NXP实战笔记(三):S32K3xx基于RTD-SDK在S32DS上配置WDT配置
2023-12-29 06:16:07
目录
1、WDT概述
SWT 编程模型只允许 32 位(字)访问。
以下任何尝试访问都是无效的:
?非32位访问
?写入只读寄存器
?启用SWT时,将不正确的值写入SR
?访问保留地址
?未经允许的主机访问
可以通过CR[RIA]控制SWT如何响应无效访问。
SWT的寄存器基地址如下
SWT_0 base address: 4027_0000h
SWT_1 base address: 4046_C000h
SWT_2 base address: 4047_0000h
SWT_3 base address: 4007_0000h
S32K3xx最多有2个SWT实例,每个CM7内核一个。它是一个32位倒数计时器,使系统能够从以下情况中恢复:
-软件陷入循环
-总线事务停止
功能点:
-选择定期或窗口服务
-在初始化时选择重置请求或中断
-选择固定或密钥服务序列
-主机访问保护
-硬件或软件配置锁存位
-SWT0可以用来作为STANDBY唤醒源
SWT 需要定期执行看门狗服务操作(重置计时器重置到指定的超时时间)。如果在定时器到期前在定时器到期前没有执行该服务操作、SWT 就会生成复位请求。
????????最重要的一个寄存器:CR- 包含用于配置和控制SWT的字段。如果启用了硬锁或软锁(hhk或SLK为1),则寄存器为只读。
2、SWT配置
2.1、超时时间,复位方式的配置
测试代码
非中断方式
Swt_Ip_Init(0, &Swt_Ip_Cfg0);
Swt_Ip_Service(0);
测试结果,非中断无法展示,不喂狗一直复位
2.2、中断形式
代码实现
Swt_Ip_Init(0, &Swt_Ip_Cfg0);
Swt_Ip_StartTimer(0);
void?Swt_CallbackNotification0(void)
{
????????SWTRunning++;
}
测试结果,不喂狗进中断
文章来源:https://blog.csdn.net/weixin_43580890/article/details/135274643
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!