AC7801-聊聊例程-看门狗
本帖最后由 Gavin3389 于 2022-3-11 10:53 编辑官网的资料都保存好了,
一点点的开始跑各种例程,首先感受最舒畅的一点,官网的资料非常舒适,(例程+说明文档)
好了,今天来看看看门狗例程
例程路径
\ac7801xSampleCode20210720\watchdog
非常整齐和人性化,例程代码和应用笔记
看,内容也都是干货,不冗余
这么温馨的官网资料,突然给我弄不会了,节省了很多时间。
以WDG5STimeout例程为例
主函数非常简单整洁
乍一看,这也太简单了吧
*
* @param none
*
* @return none
*
* @brief 配置独立看门狗,超时周期为5S。
*/
int main(void)
{
InitDelay();
WDG_5s_Timerout();
}
InitDelay();
这还没深究,应该是时钟相关吧,
回头看看手册,做做算术题
/*!
* @brief Init Delay count factor, 1s = TICKS * (1/f)s;
*
* @paramnone
* @return none
*/
void InitDelay(void)
{
s_facus = __SYSTEM_CLOCK / 1000000;
s_facms = s_facus * 1000;
}
WDG_5s_Timerout();
实现看门狗的基础配置,测试
这里有些人可能会因为main函数中没有看到while循环而困惑
实则是为了测试功能,官方把while放在了这个函数里,
这样从功能上来说,形成了闭环。
/**
* WDG_5s_Timerout
*
* @paramnone
* @return none
*
* @brief配置看门狗超时时间为5S
*/
void WDG_5s_Timerout(void)
{
uint32_t tmpTimeoutValue = WDG_CLK(5); // (119999999+1)/24000000 = 5s(时钟为48M)
WDG_ConfigType WDGConfig;
memset(&WDGConfig,0,sizeof(WDGConfig));
WDGConfig.clockSource = WDG_CLOCK_APB; //0 is 24MHz clk source
WDGConfig.WDGEn = ENABLE;
WDGConfig.interruptEn = ENABLE; //使能中断,延迟128个总线时钟后复位,可在128总线时钟内执行中断例程
//若需要超时立即复位,禁能中断即可
WDGConfig.prescalerEn = DISABLE; //0:disable 256 pre, 1:enable 256 pre
WDGConfig.updateEn = ENABLE; //if update is 0,can't do any setting
WDGConfig.windowEn = DISABLE; //window mode watchdog
WDGConfig.timeoutValue = tmpTimeoutValue; //time = pre*timeout/clk source
WDGConfig.windowValue = NULL;
WDGConfig.callBack = WDGCallback; //设置中断回调
WDG_Init(&WDGConfig);
GPIO_SetDir(GPIOC,GPIO_PIN9,GPIO_OUT); //LED1,用于测试看门狗功能
GPIO_SetPinLevel(GPIOC,GPIO_PIN9,GPIO_LEVEL_HIGH);
WDG_Feed();
while (1)
{
mdelay(4000); //延时4S再喂狗,不会重启,若为验证看门狗有效性,可把时间改为6S
WDG_Feed(); //刷新看门狗
GPIO_SetPinLevel(GPIOC,GPIO_PIN9,GPIO_LEVEL_LOW);
}
}
实际效果
原例程
板子复位后,绿灯先点亮测试
后熄灭,说明正常喂狗
延长喂狗时间
绿灯常亮,喂狗超时
回过去,看看官网的说明文档
非常的nice!!
看门狗的例程和文档都很nice 七毛钱 发表于 2022-3-15 16:07
看门狗的例程和文档都很nice
每个例程都有配套的文档 芯片自带的看门狗吗 我一般不敢用看门狗 这是非常简单的案例了 一般来说看门狗可靠吗 看门狗可靠 但是不容易用好 是的用不好反而起反作用 AC7801性能怎么样 要是配置网络的时候,需要定时器喂狗了呢。 这个不都是定时喂狗吗 while循环不大适合这个。 tpgf 发表于 2022-4-2 16:30
芯片自带的看门狗吗
是的 jimmhu 发表于 2022-5-28 15:18
AC7801性能怎么样
稳定的很
页:
[1]