使能看门狗或屏蔽看门狗模块?看门狗时钟倍率?WDCR
时间: 2023-09-05 16:07:31 浏览: 49
我了解您的问题。看门狗是一种硬件计时器,用于防止系统在运行期间出现故障而导致死机。如果系统出现故障,看门狗计时器将在设定的时间内未收到清除信号时,会自动重启系统。在某些情况下,您可以通过使能或禁用看门狗模块来控制看门狗的行为。
在一些嵌入式系统中,看门狗时钟倍率可以设置。看门狗时钟倍率指的是看门狗计时器时钟频率与系统时钟频率的比值。通过设置看门狗时钟倍率,可以调整看门狗计时器超时时间。
WDCR是看门狗控制寄存器,用于控制看门狗的行为。WDCR包含了使能看门狗、设置看门狗时钟倍率、清除看门狗计数器等控制位。通过修改WDCR的值,可以控制看门狗的行为。
相关问题
F28335看门狗的喂狗周期
F28335看门狗的喂狗周期可以通过设置WDCR寄存器来实现。WDCR寄存器的位字段包括WDCHK、WDDIS、WDFLAG和WDPS。其中,WDCHK是一个8位的校验和值,用于防止误写寄存器;WDDIS用于禁用看门狗;WDFLAG用于指示看门狗定时器已经到达了喂狗周期;WDPS用于设置看门狗定时器的分频系数,从而设置喂狗周期。
具体来说,喂狗周期可以通过以下公式计算:
喂狗周期 = 2^(WDPS + 1) / (系统时钟频率)
其中,系统时钟频率可以通过设置PLL和SYSCLKDIV寄存器来调整。一般来说,喂狗周期应该设置为系统运行稳定的最大时间,以确保系统不会因为某些异常情况而崩溃。
dsp28335关闭看门狗怎么关闭、
关闭dsp28335看门狗的方式为在程序中写入WDCR的值为0x00即可关闭看门狗,代码示例如下:
```
#include "DSP2833x_Device.h"
#include "DSP2833x_Examples.h"
void main(void)
{
InitSysCtrl(); //初始化系统控制器
DisableDog(); //关闭看门狗
//其他代码
}
void DisableDog(void)
{
EALLOW;
SysCtrlRegs.WDCR= 0x0068; //禁用看门狗
EDIS;
}
```