您的位置 首页 主动

STM8L探究套件学习笔记-独立看门狗IWDG(十六)

STM8L的独立看门狗由内部专门的38Khz低速时钟驱动,即使主时钟发生故障,它也仍然有效。这里需要注意独立看门狗的时钟并不是准确的

STM8L独立看门狗由内部专门的 38Khz 低速时钟驱动,即便主时钟产生毛病,它也依然有用。这儿需求留意独立看门狗的时钟并不是准确的 38Khz,仅仅咱们在预算的时分,以 38Khz 的频率来核算,看门狗对时刻的要求不是很准确,所以,时钟有些误差,都是能够承受的。依据分频体系和看门狗计数值能够设置独立看门狗的复位时刻,规模从0.1ms~1724.63ms

例程展现怎么重载IWDG计数值,IWDG的时刻设置为214.7ms。程序选用“Refresh”变量来使能IWDG重载计数值仿真IWDG复位,而且板上LED4翻转。当按键按下,模仿一次软件过错形成程序没有喂狗,然后产生复位。假如IWDG复位,体系启动后LED3会翻转8次,主代码如下:
void main(void)
{
uint8_t Index;
GPIO_Init(LED3_PORT,LED3_PIN,GPIO_Mode_Out_PP_Low_Fast);
//输出低电平-高速10M
GPIO_Init(LED4_PORT,LED4_PIN,GPIO_Mode_Out_PP_Low_Fast);
//输出低电平-高速10M
GPIO_Init(KEY_PORT,KEY_PIN,GPIO_Mode_In_FL_IT);
//输入浮空-中止
/* Set PC1 sensitivity to falling edge and low level 下降沿低电平触发*/
EXTI_SetPinSensitivity(EXTI_Pin_1, EXTI_Trigger_Falling_Low);
/* Check if the MCU has resumed from IWDG reset */
if (RST_GetFlagStatus(RST_FLAG_IWDGF) != RESET)
{
/* IWDGF flag set */
/* Toggle LED3 */
for (Index = 7; Index != 0; Index–)
{
GPIO_ToggleBits(LED3_PORT,LED3_PIN);
Delay(0x7FFF);
}
/* Clear IWDGF Flag */
RST_ClearFlag(RST_FLAG_IWDGF);
}
/* IWDG configuration: IWDG is clocked by LSI = 38KHz */
/* IWDG timeout equal to 214.7 ms (the timeout may varies due to LSI frequency dispersion) */
/* IWDG timeout = (RELOAD_VALUE + 1) * Prescaler / LSI = (254 + 1) * 32 / 38 000 = 214.7 ms */
/* Enable the IWDG */
IWDG_Enable();
/* Enable write access to IWDG_PR and IWDG_RLR registers */
IWDG_WriteAccessCmd(IWDG_WriteAccess_Enable);
/* Set IWDG timeout */
IWDG_SetPrescaler(IWDG_Prescaler_32);
IWDG_SetReload(RELOAD_VALUE);
/* Refresh IWDG */
IWDG_ReloadCounter();
/* enable interrupts by switching to level 0 */
enableInterrupts();
while (1)
{
/* As Refresh is equal to ENABLE no IWDG reset will occur. When Refresh is
equal to DISABLE, the IWDG counter isnt refreshed and IWDG reset will occur. */
if (Refresh != 0)
{
/* Reload IWDG counter */
IWDG_ReloadCounter();
}
/* Toggle LED4 */
GPIO_ToggleBits(LED4_PORT,LED4_PIN);
Delay(0x6FFF);
}
}

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/ziliao/zhudong/260273.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部