您的位置 首页 5G

STM8S103 看门狗使用

/************STM8S103看门狗测试******//*芯片型号:STM8S103F3*//*功能描述:STM8S103看门狗测试*//*作者:ClimberWin*/…

/************ STM8S103 看门狗测验 ******/

/*芯片型号:STM8S103F3 */
/*功用描绘:STM8S103 看门狗测验 */
/*作者: ClimberWin */
/*编写时刻:2013.12.10 */
/*内部晶振 */
/**************************************************/

#include

#define uint unsigned int
#define uchar unsigned char
#define LED PC_ODR_ODR5 //输出LED操控口

void delayms(unsigned int count);//延时程序
void IO_config(void); //端口装备
/***************延时子程序start****************/
void delayms(unsigned int count)
{
unsigned int i,j;
for(i=0;ifor(j=0;j<120;j++);
}
/*************延时子程序end*****************/

void IO_config(void)
{
CLK_CKDIVR = 0x08; //内部8M
PC_DDR = 0x20; // PC5为输出,其它全为输入
PC_CR1 = 0xFF; // 设置PC5推挽输出,其它输入IO端口上拉使能
PC_CR2 = 0x00;
}

int main(void)

{
uchar i;

IO_config();//端口初始化

LED=0;
IWDG_KR = 0xCC; //当IWDG_KR被写入数值0xCC,独立看门狗被启动了

IWDG_KR = 0x55; //免除 PR 及 RLR 的写保护

IWDG_RLR = 0xff; //看门狗计数器重装载数值
IWDG_PR = 0x06; //分频系数为256,最长超时时刻为:1.02S

IWDG_KR = 0xAA; //康复 PR 及 RLR 的写保护状况

for(i=0;i<10;i++)
{
delayms(500);

IWDG_KR = 0xAA; //改写IWDG(喂狗)。每逢KEY_REFRESH的数值(0xAA)写入到IWDG_KR寄存器时,
//独立看门狗将用IWDG_RLR的数值改写计数器的内容,然后避免了发生看门狗的复位。
}

LED=1;
while(1); //假如没有喂狗,就复位

}

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/yingyong/5g/267167.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部