Exynos_4412——WDT实验

目录

一、WDT简介

二、Exynos_4412下的WDT控制器

三、WDT的寄存器 

​四、WDT编程


一、WDT简介

Watch Dog Timer即看门狗定时器,其主要作用是当发生软件故障时可产生复位信号使SOC复位,其本质是一个计数器。

和32的看门狗一样,不喂狗就会复位

二、Exynos_4412下的WDT控制器

 

 中间的WTCNT是一个存放递减计数器值的寄存器,减到0产生两种信号中断信号或者复位信号

PCLK是一个100MHz的时钟。左面这东西看着眼熟吧,32时钟树的预分频器。8位预分频器就能设置0-255,降低1-256倍。之后是一个二级分频它只有四个选项,看门狗真正的频率是经过两层分频后的。

经过这个公式计算后得出频率,结果的倒数就是周期。

三、WDT的寄存器 

 

四、WDT编程

 

 

 由于访问开发板的方式是串口,所以我们不需要初始化串口,因为软件已经帮我们初始化了。

#include "exynos_4412.h"

WDT_Init(void)
{
    WDT.WTCNT = (3052 * 5);//5S
    WDT.WTCON = 0xFF39;//3052

}
void delay(unsigned int time)
{
    while(time --);
}
int main()
{
    WDT_Init();
    while(1)
    {
        printf("WTCNT = %d\n",WDT.WTCNT);
        delay(100000);
    }
	return 0;
}

 

#include "exynos_4412.h"

WDT_Init(void)
{
    WDT.WTCNT = (10000 * 5);//5S
    WDT.WTCON = 0x4D39;//10000

}
void delay(unsigned int time)
{
    while(time --);
}
int main()
{
    WDT_Init();
    while(1)
    {
        printf("WTCNT = %d\n",WDT.WTCNT);
        delay(100000);
    }
	return 0;
}

正常看门狗不是这样使用的,要在程序中不断的喂狗,直到程序跑飞喂不了狗了,才会复位。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

宇努力学习

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

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

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

打赏作者

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

抵扣说明:

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

余额充值