STM32之旅6——WWDG】的更多相关文章

WWDG是stm32f103的窗口看门狗,使用的时钟是APB1的时钟,在使用wwdg是被一个小问题困扰了很久--没有打开中断,无法喂狗,一直复位. 初始化完之后需要使能中断: __HAL_WWDG_ENABLE_IT(&hwwdg, WWDG_IT_EWI); 在中断回调函数中喂狗: void HAL_WWDG_EarlyWakeupCallback(WWDG_HandleTypeDef *hwwdg) { HAL_WWDG_Refresh(hwwdg); }…
STM32之旅5--IWDG stm32有两个看门狗,一个独立看门狗(IWDG).一个窗口看门狗(WWDG):独立看门狗是时钟源是内部的40kHz的低速时钟,即使主频出问题了,独立看门狗也不会受到影响. 下面是使用独立看门狗需要了解的一些内容. hal库使用很简单,就只提供了两个函数:一个初始化函数.一个喂狗函数 喂狗: HAL_IWDG_Refresh(&hiwdg);…
STM32之旅4--USART 串口也是用的比较多的,在STM32CubeMX中生成代码后,需要添加一些代码才可以用. drv_usart.h: #ifndef __DRV_USART_H #define __DRV_USART_H #define USART1_MAX_LEN 64 //接收区长度 #define USART1_BUFF_CACHE_LEN 1 //接收缓冲区长度 extern uint16_t g_usart1_sta; //接收状态[1:15],最高位为接收完成标志 ext…
STM32之旅3--时钟数 STM32F1是M3内核,它的时钟数很庞大,让一个初学者去看,估计会很吃力,和我们入门的8051单片机的时钟不同,这里又倍频.又分频,而且还分成好多个时钟,不同的外设时钟不一样. 总感觉不都明了,后来在STM32CubeMX中看到了时钟配置,这个看起来就明了多了…
STM32之旅2--按键     几乎每个项目都有用到按键,为了避免以后在做大项目的时候还在琢磨按键怎么写,现在写一个,方便以后使用.这里是最简单的独立按键驱动方法,和学习51单片机是的一样,更好的方法以后再慢慢补充. 按键驱动 drv_key.h: #ifndef __DRV_KEY_H #define __DRV_KEY_H #define RESET 0 #define SET 1 #define WK_UP_PIN GPIO_PIN_0 #define WK_UP_PORT GPIOA…
STM32之旅1--LED 学习了51单片机后,就要接触到更高级一点的单片机了,比如STM32,ST也有很多款单片机,现在用比较基础的学习--STM32F103RCT6. LED驱动 hal库的使用比较简单,可以直接在STM32CubeMX中分配好IO之后一键生成工程,为了提高程序的可读性,自己写一个头文件,在调用过程中会比较简单. drv_led.h: #ifndef __DRV_LED_H #define __DRV_LED_H #define LED1_PIN GPIO_PIN_8 #de…
窗口看门狗WWDG其实和独立看门狗类似,它是一个7位递减计数器不断的往下递减计数,当减到一个固定值0x40时还不喂狗的话,产生一个MCU复位,这个值叫窗口的下限,是固定的值,不能改变 窗口看门狗(WWDG)的时钟来自PCLK1,即挂接在APB1总线上,APB1时钟最大为36M 窗口值由配置寄存器WWDG_CFR的[6:0]位设置,所以最大值0x7F 当递减计数器递减到0x40的时候,还不会马上产生复位,如果使能了提前唤醒中断,则产生提前唤醒中断,提醒喂狗,随后将复位 WWDG配置步骤 1.使能W…
WWDG当前计数器的值以及激活位和WWDG_CR这个寄存器相关.如下图所示: 而STM32f10x的库函数提供了两种设置WWDG_CR[0:6]位的方式. WWDG_SetCounter方法 #define BIT_Mask = 0x7F/** * @brief Sets the WWDG counter value. * @param Counter: specifies the watchdog counter value. * This parameter must be a number…
一     前沿废语: 之前有很风靡的游戏,名字叫<看门狗>.该游戏用了很新的引擎技术,打造出了一个辽阔庞大的世界,内容是玩家Aiden·Pearce(主角)是一名精通黑客技术的高手,当时的世界是处于所有物品都被置了电子设备控制,整个城市都在依赖着他们,主人公决定利用自己的技术为这个世界惩奸除恶.   这个游戏以极高的自由度.出色的游戏质量与丰富的游戏内容被业界公认为开启次世代游戏的大门之作,该游戏被IGN评为年度最佳射击游戏(下载地址:http://down.ali213.net/pcgam…
一.独立看门狗 STM32 的独立看门狗由内部专门的 40Khz 低速时钟驱动,即使主时钟发生故障,它也仍然有效. 看门狗的原理:单片机系统在外界的干扰下会出现程序跑飞的现象导致出现死循环,看门狗电路就是为了避免这种情况的发生.看门狗的作用就是在一定时间内(通过定时计数器实现)没有接收喂狗信号(表示 MCU 已经挂了),便实现处理器的自动复位重启(发送复位信号) . 在键值寄存器(IWDG_KR)中写入 0xCCCC,开始启用独立看门狗:此时计数器开始从其复位值 0xFFF 递减计数.当计数器计…