NXP实战笔记(三):S32K3xx基于RTD-SDK在S32DS上配置WDT配置

目录

1、WDT概述

2、SWT配置

2.1、超时时间,复位方式的配置

2.2、中断形式


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++;

}

测试结果,不喂狗进中断

  • 8
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

剑从东方起

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值