1. 硬件原理图
这里使用了ADM706芯片,wdi喂狗引脚与CPUGPIO3相连。
wdo看门狗超时复位信号输出引脚,与/MR手动复位输入相连,也就是会产生一个RESET信号。
原理图如下所示:
2. uboot中添加watchdog喂狗功能
首先需要在include/configs/xxx.h文件中,添加一个宏定义:
#defineCONFIG_HW_WATCHDOG
启动HW_WATCHDOG功能。
因为在include/watchdog.h中有WATCHDOG宏定义如下:
#ifdefCONFIG_HW_WATCHDOG
#if defined(__ASSEMBLY__)
#define WATCHDOG_RESET blhw_watchdog_reset
#else
extern voidhw_watchdog_reset(void);
#define WATCHDOG_RESEThw_watchdog_reset
#endif /* __ASSEMBLY__ */
#else
/*
* Maybe a software watchdog?
*/
#if defined(CONFIG_WATCHDOG)
#if defined(__ASSEMBLY__)
#define WATCHDOG_RESETbl watchdog_reset
#