历史上的今天
今天是:2025年08月19日(星期二)
2019年08月19日 | ARM开发(7)基于STM32的独立看门狗
2019-08-19 来源:eefocus
一 独立看门狗原理:
1.1 本实验实现STM32的独立看门狗
1.2 实验思路:理解STM32独立看门狗原理,根据其原理写驱动。
1.3 开发环境 : MDK5 库函数版本开发 JLINK仿真
二 实验步骤:
2.1 wdg.h代码:
#ifndef __WDG_H
#define __WDG_H
#include "sys.h"
void IWDG_Init(u8 prer,u16 rlr); //独立看门狗初始化
void IWDG_Feed(void); //喂狗
#endif
2.2 wdg.c代码(独立看门狗初始化与喂狗):
#include "wdg.h"
/*初始化独立看门狗
prer:分频数:0~7(只有低3位有效!)
分频因子=4*2^prer.但最大值只能是256!
rlr:重装载寄存器值:低11位有效.
时间计算(大概):Tout=((4*2^prer)*rlr)/40 (ms).
*/
void IWDG_Init(u8 prer,u16 rlr)
{
IWDG_WriteAccessCmd(IWDG_WriteAccess_Enable); //使能对寄存器IWDG_PR和IWDG_RLR的写操作
IWDG_SetPrescaler(prer); //设置IWDG预分频值;
IWDG_SetReload(rlr); //设置IWDG重装载值
IWDG_ReloadCounter(); //按照IWDG重装载寄存器的值重装载IWDG计数器
IWDG_Enable(); //使能IWDG
}
//喂独立看门狗
void IWDG_Feed(void)
{
IWDG_ReloadCounter();//reload
}
2.2 main.c代码(实现独立看门狗,蜂鸣器检测效果):
#include "beep.h"
#include "delay.h"
#include "key.h"
#include "sys.h"
#include "usart.h"
#include "wdg.h"
int main(void)
{
delay_init(); // 延时
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2); //设置NVIC中断分组2
BEEP_Init();//蜂鸣器初始化
KEY_Init(); //按键初始化
delay_ms(500); //延时
IWDG_Init(4,625); // 读立看门狗设置
BEEP =1; //蜂鸣器响
while(1)
{
if(KEY_Scan()==8)
{
IWDG_Feed();//当矩阵键盘按键8时,不会产生复位
}
delay_ms(10);
};
}
三 接线测试:
3.1 与板子接线测试效果良好,独立看门狗效果良好。
史海拾趣
|
随着医疗影像系统日趋便携和小型化市场的需求,德州仪器 (TI)推出一款专为便携式超声波系统而设计的完整模拟信号链解决方案,首批集成的模拟前端 (AFE)产品是AFE5805 。 TI高性能模拟产品亚太市场业务拓展经理程伟健说,首款器件 AFE5805 能满 ...… 查看全部问答> |
|
开关电源因体积小、功率因数较大等优点,在通信、控制、计算机等领域应用广泛。但由于会产生电磁干扰,其进一步的应用受到一定程度上的限制。本文将分析开关电源电磁干扰的各种产生机理,并在其基础之上,提出开关电源的电磁兼容设计方法。 开关 ...… 查看全部问答> |
|
猜猜这桌子有什么不同?如果是一张普通的玻璃桌子怎么能上我们的创意站?这是一款LED桌子,玻璃桌面内嵌278个LED灯,具体有什么用处? … 查看全部问答> |
|
没找到在哪里设置啊。现在稍微跑大一点的程序,就vector 13 general protection.... 启动就直接启动起来了,没发现哪里有设置的?target server倒是能找到设置内存的地方。 我用的vxworks 2.0… 查看全部问答> |
|
各位大哥好,我在vc++2005下MFC开发程序,用Ras拨号上网,提示拨号成功,在程序里发我们自己架的服务器上的ftp可以,发送udp消息也可以,但是用ie访问网页时就提示,“语音通话正在进行,无法拨打数据电话,请在语音通话结束后重试”请问这是什么原 ...… 查看全部问答> |
|
转载时请注明出处和作者联系方式 文章出处:http://www.limodev.cn/blog 作者联系方式:李先静 <xianjimli@gmail.com>用XML来描述界面,C/C++写内部逻辑,用脚本语言来胶合界面和内部逻辑。FTK 正是基于这种思想来设计的,所以它自然会提供 ...… 查看全部问答> |
|
我用CC430F5137调软件的WOR。发送端按一下按键连续发送1.2s,每一帧9个字节(算上前导码、同步字、RSSI、CRC)波特率90K,一帧时间大概0.8ms。接收端sleep 1s,醒来接收5ms。接收成功率很低,提高到8ms还可以。理论上两个帧的时间加上唤醒时间就够 ...… 查看全部问答> |
|
用STM32在做一个小设计时;把SPI全用光了,然后就用了USART的同步模式; 现在问题是这样,主机可以发送数据,从机可以反应并且在总线上发出数据。但是STM32RXNE始终为0 接收不到数据;有搞过的可以分析一下什么问题啊? 谢谢! 付调试波 ...… 查看全部问答> |




