SP706SE实现硬件看门狗

一、看门狗分硬件看门狗和软件看门狗。

硬件看门狗是利用一个定时器电路,其定时输出连接到电路的复位端,程序在一定时间范围内对定时器清零(俗称"喂狗"),因此程序正常工作时,定时器总不能溢出,也就不能产生复位信号。如果程序出现故障,不在定时周期内复位看门狗,就使得看门狗定时器溢出产生复位信号并重启系统。

软件看门狗原理上一样,只是将硬件电路上的定时器用处理器的内部定时器代替,这样可以简化硬件电路设计,但在可靠性方面不如硬件定时器,比如系统内部定时器自身发生故障就无法检测到。当然也有通过双定时器相互监视,这不仅加大系统开销,也不能解决全部问题,比如中断系统故障导致定时器中断失效。

看门狗目的是**对一些程序潜在错误和恶劣环境干扰等因素导致系统死机而在无人干预情况下自动恢复系统正常工作状态。**看门狗也不能完全避免故障造成的损失,毕竟从发现故障到系统复位恢复正常这段时间内怠工。同时一些系统也需要复位前保护现场数据,重启后恢复现场数据,这可能也需要一笔软硬件的开销。

二、SP706SE原理

硬件部分:两根信号线,MCU的I/0口连到SP706的WDI,信号发送PWM波;SP706的输出RST连到复位引脚。

SP706的工作原理:SP706上电工作之后,WDI引脚保持高电平或者低电平不变 ,则1.6S之后,SP706内部的看门狗定时器会溢出并使RST输出低电平使MCU复位,所以需要在MCU复位之前翻转WDI的状态

注意:如果WDI引脚处于浮空或高阻状态,则禁止看门狗功能;

三、代码

HardwareDog.c

cpp 复制代码
#include "hardwareDog.h"


void HardwareDogInit(void)
{
	/*WDI  PE9*/
	rcu_periph_clock_enable(RCU_GPIOE);

	gpio_mode_set(GPIOE, GPIO_MODE_OUTPUT, GPIO_PUPD_NONE,GPIO_PIN_9);
	gpio_output_options_set(GPIOE, GPIO_OTYPE_PP, GPIO_OSPEED_50MHZ,GPIO_PIN_9);
}

void EatHardwareDog(void)
{
	gpio_bit_toggle(GPIOE,GPIO_PIN_9);
}

HardwareDog.h

cpp 复制代码
#ifndef __HARDWAREDOG_H
#define __HARDWAREDOG_H


#include "head.h"
void HardwareDogInit(void);
void EatHardwareDog(void);

#endif

main.c

cpp 复制代码
    systick_config();//时钟配置
	gd_485_com_init(PCS_COM,9600);
	gd_485_com_en(1);//发送使能
	
	HardwareDogInit();
	printf("hello\r\n");
	
	while(1)
	{
		delay_1ms(1500);
		EatHardwareDog();
	}
相关推荐
Jason_zhao_MR1 小时前
Linux与实时控制如何兼得
linux·嵌入式硬件·机器人·工业控制
BSD_CGQ2 小时前
FSR传感器STM32 DMA高速采样工程实现(高精度、低CPU占用)
stm32·单片机·嵌入式硬件·压力传感器·源头工厂·柔性薄膜压力传感器·可变电阻压力传感器
芯岭技术郦5 小时前
32 位 ARM® Cortex®-M0+ 内核MCU普冉MS32C001-C
单片机·嵌入式硬件
骑着毛驴数星星5 小时前
STM32 CAN波特率与采样点计算,基于HAL库
stm32·单片机·嵌入式硬件
zhangrelay6 小时前
Arduino-MEGA-ESP单片机理论课笔记02-硬件-2026
笔记·单片机·嵌入式硬件
艾芯微科技6 小时前
钰泰 ETA5055V330DD1E|SOT-223 3.3V LDO,低压差、大电流线性稳压选型分享
网络·单片机·嵌入式硬件·集成测试·51单片机
新晨单片机设计7 小时前
S023A-基于STM32单片机智能插座【Proteus仿真+Keil程序+原理图】
stm32·单片机·proteus·单片机智能插座
威嵌神州8 小时前
恩智浦 T1022 性能怎么样?QorIQ 架构中端工业嵌入式优势解析
嵌入式硬件
weixin_690654748 小时前
龙迅#LT9611EX 现MIPI转HDMI1.4功能主推型号,分辨率高达4K30HZ,IC内置I2C无需外部12C控制。
嵌入式硬件·音视频·信号处理
EatFans8 小时前
全栈自造 Status Deck(四):硬件终于到了,从点亮屏幕到跑通第一个 Demo
单片机·物联网