0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

CC2530(zigbee)入门开发: 看门狗

DS小龙哥-嵌入式技术 来源:DS小龙哥-嵌入式技术 作者:DS小龙哥-嵌入式技 2022-05-28 13:28 次阅读

一、看门狗介绍

看门狗在正常设计的产品里都会用到,主要是解决程序跑飞、异常死机等,程序内部引起的问题情况下可以自动复位重启的功能。

看门狗本身就是个定时器,和普通的定时器差不多。 就是设置一个固定的超时时间,正常情况下,程序比如在看门狗的超时时间到达之前重置时间(这个就叫做喂狗);在程序正常运转的情况下,因为每次都会去喂狗,就不会有超时的现象。如果因为程序逻辑出现问题,程序在指定的时间内没办法去喂狗,就导致看门狗定时器超时,超时就会产生软件复位,程序重启,这样就可以避免产品宕机。 这种重启操作一般都可以解决这种偶然产生的一些程序BUG。 就像我们常用的电脑,卡死,或者出现一些奇怪问题,重启差不多都能解决。

下面就介绍CC2530的看门狗程序配置,具体的配置直接截图出来了。 在手册里起始介绍的起始已经很详细了,只要明白看门狗这个功能的作用、含义,就可以直接看第3章的代码去实操,分析代码的配置对着手册看一遍就差不多了。

二、看门狗配置

pYYBAGKRswuAK5PlAAWjPzjoXu4684.pngpoYBAGKRsw2AVp6AAAe1yrq8svc870.pngpYYBAGKRsw6AJNdzAAULIUxErSs743.pngimage.png

三、示例代码

#include 

#define uint unsigned int

#define RLED  P1_0
#define GLED  P1_1

void CC2530_InitLEDIO(void)
{
	P1DIR |= 0x03;  //P10、P11定义为输出
	RLED = 1;
	GLED = 1;
	//LED灯初始化为关   
}

void CC2530_Init_Watchdog(void)
{
	WDCTL = 0x00;
	//时间间隔一秒,看门狗模式
	WDCTL |= 0x08;
	//启动看门狗
}

void  CC2530_SET_MAIN_CLOCK(source) 
{                                  
	if(source) 
	{                            
		CLKCONCMD |= 0x40;          /*RC*/               
		while(!(CLKCONSTA &0X40));  /*待稳*/       
	}                                       
	else
	{                       
		CLKCONCMD &= ~0x47;        /*晶振*/             
		while((CLKCONSTA &0X40));  /*待稳*/  
	}                                       
}
void CC2530_FeetDog(void)
{
	WDCTL = 0xa0;
	WDCTL = 0x50;
}
void CC2530_Delay(uint n)
{
	uint i;
	for(i=0;i

审核编辑:汤梓红
;i++);>
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 看门狗
    +关注

    关注

    10

    文章

    540

    浏览量

    70251
  • 定时器
    +关注

    关注

    23

    文章

    3146

    浏览量

    112032
  • CC2530
    +关注

    关注

    19

    文章

    220

    浏览量

    57222
收藏 人收藏

    评论

    相关推荐

    zigbeecc2530

    `晒晒我的zigbeecc2530)模块`
    发表于 03-20 13:58

    CC2530 Zigbee开发——开发工作室教程

    `CC2530 Zigbee开发——开发工作室教程`
    发表于 03-08 10:33

    CC2530中打开看门狗后,设备一直重启,请问如何解决?

    Dears:在CC2530中打开看门狗后,设备一直重启,如何解决?#ifdef WDT_IN_PM1 /* If WDT is used, this is a good place to enable it. */ WatchDogEnable( WDTIMX );#en
    发表于 08-09 07:33

    请问CC2530进入睡眠状态时看门狗能起作用吗?

    CC2530使用睡眠定时器,在进入睡眠状态看门狗能起作用吗?会不会冲突?比如说系统睡眠5分钟,看门狗要怎么设置?在哪里喂狗?(新人,对看门狗不怎么了解)
    发表于 08-19 02:01

    请问一下cc2530看门狗程序的编程思路是怎样的

    请问一下cc2530看门狗程序的编程思路是怎样的?
    发表于 11-08 08:53

    CC2530的时钟配置概述

    二、CC2530的时钟配置概述CC2530同样也有两个时钟,一个是高频时钟信号给CPU使用,另一个低频时钟信号给看门狗,睡眠定时器等使用;相对应的高速时钟CC2530片内有一个16MH
    发表于 01-19 07:01

    如何实现CC2530喂狗的过程?

    CC2530看门狗的原理及应用是什么?如何实现CC2530喂狗的过程?
    发表于 01-25 07:38

    【技术精选】嵌入式STM32原创征文活动精选文章

    CC2530(zigbee)入门开发: 看门狗C2530(zigbee)
    发表于 07-27 18:26

    基于CC2530芯片_zigbee基础实验

    zigbee基础实验,基于CC2530芯片
    发表于 12-11 10:48 48次下载

    如何使用ZigBee TI ZStack CC2530 2.5搭建开发环境

    本文档的主要内容详细介绍的是如何使用ZigBee TI ZStack CC2530 2.5搭建开发环境。
    发表于 05-10 18:14 24次下载
    如何使用<b class='flag-5'>ZigBee</b> TI ZStack <b class='flag-5'>CC2530</b> 2.5搭建<b class='flag-5'>开发</b>环境

    微雪电子ZIGBEE开发CC2530 Eval Kit简介

    ZigBee CC2530 串口透传 开发套件 物联网套件 板载电池插槽 支持多种供电方式 引出所有IO 方便用户功能扩展 板载一个CP2102 方便调试下载 型号 CC2530 Ev
    的头像 发表于 01-09 11:05 1667次阅读
    微雪电子<b class='flag-5'>ZIGBEE</b><b class='flag-5'>开发</b>板 <b class='flag-5'>CC2530</b> Eval Kit简介

    CC2530授课笔记】(13)看门狗的原理及应用

    CC2530授课笔记】(13)看门狗的原理及应用
    发表于 11-30 09:21 1次下载
    【<b class='flag-5'>CC2530</b>授课笔记】(13)<b class='flag-5'>看门狗</b>的原理及应用

    基于CC2530ZigBee通信网的应用设计.pdf

    基于CC2530ZigBee通信网的应用设计.pdf
    发表于 12-15 18:17 21次下载

    CC2530(zigbee)入门开发: 点亮LED灯(输出)

    CC2530核心板上带有两颗晶振:第一颗频率为32MHZ,第二颗频率为32.768KHZ
    的头像 发表于 05-28 13:35 5787次阅读
    <b class='flag-5'>CC2530</b>(<b class='flag-5'>zigbee</b>)<b class='flag-5'>入门开发</b>: 点亮LED灯(输出)

    Zigbee(CC2530)传感器板

    电子发烧友网站提供《Zigbee(CC2530)传感器板.zip》资料免费下载
    发表于 07-04 14:49 8次下载
    <b class='flag-5'>Zigbee</b>(<b class='flag-5'>CC2530</b>)传感器板