美文网首页
(基础外围设备)WatchDog

(基础外围设备)WatchDog

作者: 昨天剩下的一杯冷茶 | 来源:发表于2018-08-31 11:52 被阅读4次

#include "watchdog.h"

void InitWatchDog(void)
{
  WDCTL = 0x00;
  WDCTL |= BV(3);
  WDCTL &= ~ ((BV(0)|BV(1)));
  
}



void FeetDog(void)
{
  WDCTL = 0xa0;
  WDCTL = 0x50;
  
}


//头文件===============================
#ifndef __WATCH_DOG_H__
#define __WATCH_DOG_H__

#include "all.h"

void InitWatchDog(void);
void FeetDog(void);

#endif

//例子=================================

#include "all.h" 
#include "uart.h"
#include "watchdog.h"

typedef unsigned char uint8;
typedef unsigned short int  uint16;

void DelayMS(uint16 msec)
{ 
    uint16 i,j;
    
    for (i=0; i<msec; i++)
        for (j=0; j<536; j++);
}
void main(void)
{   
  char p_buf[]="hello world\r\n\r\n";

  CLKCONCMD &= ~0x40;               //设置系统时钟源为32MHZ晶振
  while(CLKCONSTA & 0x40);          //等待晶振稳定
  CLKCONCMD &= ~0x47;               //设置系统主时钟频率为32MHZ   

  InitLed();
  InitKey();
  Uart_Init(UART_BAUDRATE_115200);
  Uart_String(p_buf);
  SemEmpty();
  InitWatchDog();
  FeetDog();
  Uart_String("InitWatchDog\r\n");
  DelayMS(500);
  
  FeetDog();
  Uart_String("FeetDog\r\n");
  DelayMS(500);
  
  FeetDog();
  Uart_String("FeetDog\r\n");
  DelayMS(500);
  while(1)                     //死循环
  {
  
  }

      
}






TICC2541喂狗时间最长只能设置为1S,喂狗有点平凡。

相关文章

网友评论

      本文标题:(基础外围设备)WatchDog

      本文链接:https://www.haomeiwen.com/subject/mdjswftx.html