嵌入式成长轨迹59 【Zigbee项目】【CC2430基础实验】【喂狗】
2012-09-01 18:44
344 查看
本实验与上一个实验都以看门狗为学习目标,在实验二十一学会初始化看门狗,同时也知道了看门狗的作用,本实验着重学习复位看门狗。复位看门狗后小灯不会闪烁。
void FeetDog(void) ;
函数原型:
函数功能:复位看门狗,必须在看门狗时间间隔内调用本函数复位看门狗,否则系统会被强制复位。间隔之后再调用本函数无意义。
void FeetDog(void) ;
函数原型:
void FeetDog(void) { WDCTL = 0xa0; WDCTL = 0x50; }
函数功能:复位看门狗,必须在看门狗时间间隔内调用本函数复位看门狗,否则系统会被强制复位。间隔之后再调用本函数无意义。
//main.c # include <ioCC2430.h> #define uint unsigned int #define led1 P1_0 #define led2 P1_1 void Init_IO(void) { P1DIR = 0x03; led1 = 1; led2 = 1; } void Init_Watchdog(void) { WDCTL = 0x00; //时间间隔一秒,看门狗模式 WDCTL |= 0x08; //启动看门狗 } void Init_Clock(void) { CLKCON = 0X00; } void FeetDog(void) { WDCTL = 0xa0; WDCTL = 0x50; } void Delay(void) { uint n; for(n=50000;n>0;n--); for(n=50000;n>0;n--); for(n=50000;n>0;n--); for(n=50000;n>0;n--); for(n=50000;n>0;n--); for(n=50000;n>0;n--); for(n=50000;n>0;n--); } void main(void) { Init_Clock(); Init_IO(); Init_Watchdog(); led1=0; Delay(); led2=0; while(1) { FeetDog(); } //喂狗指令(加入后系统不复位,小灯不闪烁) }
相关文章推荐
- 嵌入式成长轨迹47 【Zigbee项目】【CC2430基础实验】【1/3AVDD】
- 嵌入式成长轨迹48 【Zigbee项目】【CC2430基础实验】【AVDD】
- 嵌入式成长轨迹49 【Zigbee项目】【CC2430基础实验】【DMA】
- 嵌入式成长轨迹37 【Zigbee项目】【CC2430基础实验】【自动闪烁】
- 嵌入式成长轨迹50 【Zigbee项目】【CC2430基础实验】【单片机串口发数】
- 嵌入式成长轨迹51 【Zigbee项目】【CC2430基础实验】【在PC用串口控制LED】
- 嵌入式成长轨迹38 【Zigbee项目】【CC2430基础实验】【按键控制开关】
- 嵌入式成长轨迹52 【Zigbee项目】【CC2430基础实验】【在PC用串口收数并发数】
- 嵌入式成长轨迹39 【Zigbee项目】【CC2430基础实验】【按键控制闪烁】
- 嵌入式成长轨迹53 【Zigbee项目】【CC2430基础实验】【串口时钟PC显示】
- 嵌入式成长轨迹40 【Zigbee项目】【CC2430基础实验】【T1的使用】
- 嵌入式成长轨迹54 【Zigbee项目】【CC2430基础实验】【系统睡眠工作状态】
- 嵌入式成长轨迹41 【Zigbee项目】【CC2430基础实验】【T2的使用】
- 嵌入式成长轨迹42 【Zigbee项目】【CC2430基础实验】【T3的使用】
- 嵌入式成长轨迹55 【Zigbee项目】【CC2430基础实验】【系统唤醒】
- 嵌入式成长轨迹56 【Zigbee项目】【CC2430基础实验】【睡眠定时器的使用】
- 嵌入式成长轨迹43 【Zigbee项目】【CC2430基础实验】【T4的使用】
- 嵌入式成长轨迹57 【Zigbee项目】【CC2430基础实验】【定时唤醒】
- 嵌入式成长轨迹44 【Zigbee项目】【CC2430基础实验】【定时器中断】
- 嵌入式成长轨迹58 【Zigbee项目】【CC2430基础实验】【看门狗模式】