• 9 STM32标准库函数 之 独立看门狗(IWDG)所有函数的介绍及使用


    9 STM32标准库函数 之 独立看门狗(IWDG)所有函数的介绍及使用

    函数描述格式:

    函数名外设函数的名称
    函数原形原形声明
    功能描述简要解释函数是如何执行的
    输入参数{x}输入参数描述
    输出参数{x}输出参数描述
    返回值函数的返回值
    先决条件调用函数前应满足的要求
    被调用函数其他被该函数调用的库函数

    缩写定义

    缩写外设/单元
    ADC模数转换器
    BKP备份寄存器
    CAN控制器局域网模块
    DMA直接内存存取控制器
    EXTI外部中断事件控制器
    FLASH闪存存储器
    GPIO通用输入输出
    I2C内部集成电路
    IWDG独立看门狗
    NVIC嵌套中断向量列表控制器
    PWR电源/功耗控制
    RCC复位与时钟控制器
    RTC实时时钟
    SPI串行外设接口
    SysTick系统嘀嗒定时器
    TIM通用定时器
    TIM1高级控制定时器
    USART通用同步异步接收发射端
    WWDG窗口看门狗

    1. 图片有格式

    因为从OneNote复制到CSDN上只能是图片,粘贴不了文字,所以就显示图片,在该博客后半部分会补充上相关函数的文字。
    如果只是学习了解函数可以看图片,图片有格式,比较友好;需要使用某个函数,可以去博客后半部分copy使用。

    在这里插入图片描述

    九 库函数之独立看门狗(IWDG)所有函数的介绍及使用

    前言
    独立看门狗(IWDG)用来解决应软件或者硬件引起的处理器故障。它也可以在停止(Stop)模式和待命 (Standby)模式下工作。
    独立看门狗(Independent Watchdog,通常简称IWDG)是一种硬件定时器或监视器,通常用于微控制器和嵌入式系统中,用来监视系统的运行状态,并在系统出现故障或停滞时采取措施,以确保系统的可靠性和稳定性。以下是有关独立看门狗的一些关键信息:
    监视系统状态:IWDG的主要功能是监视系统的运行状态。它定期接收来自系统的“喂狗信号”或“喂狗踢”的指令,以确认系统正常运行。如果系统停滞、死锁或出现故障,未能及时给IWDG提供信号,IWDG会触发,执行预定义的操作。
    定时器功能:IWDG通常是一个可编程的硬件定时器,允许用户设置一个定时器周期。如果系统没有在规定的时间内喂狗,IWDG将会重置或触发系统,以防止系统停滞不动。
    独立性:IWDG通常是独立于主CPU的硬件模块,因此它不受主程序或操作系统的影响。这种独立性使其能够在系统崩溃或死锁的情况下仍能够正常工作。
    安全性:IWDG提高了系统的可靠性和安全性。在某些应用中,特别是对于那些需要长时间运行的系统,如嵌入式系统和工业控制系统,IWDG可以帮助防止不可恢复的故障。
    配置:用户可以根据系统的需求配置IWDG的定时器周期,以平衡系统的稳定性和性能。较短的周期将提供更高的安全性,但也可能增加系统复位的风险。
    使用范围:IWDG广泛用于嵌入式系统、微控制器、单片机、自动化系统、工业控制、无人机、汽车电子等领域,其中系统的可靠性和稳定性至关重要。

    函数描述格式:
    函数名 外设函数的名称
    函数原形 原形声明
    功能描述 简要解释函数是如何执行的
    输入参数{x} 输入参数描述
    输出参数{x} 输出参数描述
    返回值 函数的返回值
    先决条件 调用函数前应满足的要求
    被调用函数 其他被该函数调用的库函数
    一、图片预览,无格式(CSDN)

    二、IWDG库函数固件库函数预览
    函数名 描述
    IWDG_WriteAccessCmd 使能或者失能对寄存器 IWDG_PR 和 IWDG_RLR 的写操作
    IWDG_SetPrescaler 设置 IWDG 预分频值
    IWDG_SetReload 设置 IWDG 重装载值
    IWDG_ReloadCounter 按照 IWDG 重装载寄存器的值重装载 IWDG 计数器
    IWDG_Enable 使能 IWDG
    IWDG_GetFlagStatus 检查指定的 IWDG 标志位被设置与否

    2.1 函数IWDG_WriteAccessCmd
    __
    函数名 IWDG_WriteAccessCmd
    函数原形 void IWDG_WriteAccessCmd(u16 IWDG_WriteAccess)
    功能描述 使能或者失能对寄存器 IWDG_PR 和 IWDG_RLR 的写操作
    输入参数 IWDG_WriteAccess:对寄存器 IWDG_PR 和 IWDG_RLR 的写操作的新状态 参阅 Section:IWDG_WriteAccess 查阅更多该参数允许取值范围
    输出参数 无
    返回值 无
    先决条件 无
    被调用函数 无
    IWDG_WriteAccess
    _

    IWDG_WriteAccess 描述
    IWDG_WriteAccess_Enable 使能对寄存器 IWDG_PR 和 IWDG_RLR 的写操 作
    IWDG_WriteAccess_Disable 失能对寄存器 IWDG_PR 和 IWDG_RLR 的写操 作
    例:
    /* Enable write access to IWDG_PR and IWDG_RLR registers */
    IWDG_WriteAccessCmd(IWDG_WriteAccess_Enable);

    2.2 函数IWDG_SetPrescaler
    __
    函数名 IWDG_SetPrescaler
    函数原形 void IWDG_SetPrescaler(u8 IWDG_Prescaler)
    功能描述 设置 IWDG 预分频值
    输入参数 IWDG_Prescaler:IWDG 预分频值
    参阅 Section:IWDG_Prescaler 查阅更多该参数允许取值范围
    输出参数 无
    返回值 无
    先决条件 无
    被调用函数 无
    IWDG_Prescaler
    IWDG_Prescaler 描述
    IWDG_Prescaler_4 设置 IWDG 预分频值为 4
    IWDG_Prescaler_8 设置 IWDG 预分频值为 8
    IWDG_Prescaler_ 16 设置 IWDG 预分频值为 16
    IWDG_Prescaler_32 设置 IWDG 预分频值为 32
    IWDG_Prescaler_64 设置 IWDG 预分频值为 64
    IWDG_Prescaler_ 128 设置 IWDG 预分频值为 128
    IWDG_Prescaler_256 设置 IWDG 预分频值为 256
    例:
    /* Set IWDG prescaler to 8 /
    IWDG_SetPrescaler(IWDG_Prescaler_8);
    2.3 函数IWDG_SetReload
    __
    函数名 IWDG_ SetReload
    函数原形 void IWDG_SetReload(u16 Reload)
    功能描述 设置 IWDG 重装载值
    输入参数 IWDG_Reload:IWDG 重装载值
    该参数允许取值范围为 0 – 0x0FFF
    输出参数 无
    返回值 无
    先决条件 无
    被调用函数 无
    例:
    /
    Set IWDG reload value to 0xFFF */
    IWDG_SetReload(0xFFF);

    2.4 函数IWDG_ReloadCounter
    __
    函数名 IWDG_ReloadCounter
    函数原形 void IWDG_ReloadCounter(void)
    功能描述 按照 IWDG 重装载寄存器的值重装载 IWDG 计数器
    输入参数 无
    输出参数 无
    返回值 无
    先决条件 无
    被调用函数 无
    例:
    /* Reload IWDG counter /
    IWDG_ReloadCounter();
    2.5 函数IWDG_Enable
    __
    函数名 IWDG_Enable
    函数原形 void IWDG_Enable(void)
    功能描述 使能 IWDG
    输入参数 无
    输出参数 无
    返回值 无
    先决条件 无
    被调用函数 无
    例:
    /
    Enable IWDG */
    IWDG_Enable();
    2.6 函数IWDG_GetFlagStatus


    函数名 IWDG_GetFlagStatus
    函数原形 FlagStatus IWDG_GetFlagStatus(u16 IWDG_FLAG)
    功能描述 检查指定的 IWDG 标志位被设置与否
    输入参数 IWDG_FLAG:待检查的 I2C 标志位
    参阅 Section:IWDG_FLAG 查阅更多该参数允许取值范围
    输出参数 无
    返回值 IWDG_FLAG 的新状态(SET 或者 RESET)
    先决条件 无
    被调用函数 无
    IWDG_FLAG
    IWDG_FLAG 描述
    IWDG_FLAG_PVU 预分频值更新进行中
    IWDG_FLAG_RVU 重装载值更新进行中
    例:
    /* Test if a prescaler value update is on going */
    FlagStatus Status;
    Status = IWDG_GetFlagStatus(IWDG_FLAG_PVU);
    if(Status == RESET)
    {

    }
    else
    {

    该文档修改记录:

    修改时间修改说明
    2023年11月18日第一次发布,介绍了STM32标准库函数 之 独立看门狗(IWDG)所有函数的介绍及使用

    总结

    以上就是STM32标准库函数 之 独立看门狗(IWDG)所有函数的介绍及使用的内容,本文介绍了 STM32标准库函数 之 独立看门狗(IWDG)所有函数的介绍及使用。
    有不明白的地方欢迎留言;有建议欢迎留言,我后面编写文档好改进。
    创作不容,如果文档对您有帮助,记得给个赞。

  • 相关阅读:
    博客系统测试报告
    Java 线程池调度周期性任务“异常“探究
    测试用例颗粒度说明
    SpringBoot 刷新上下文7--执行BeanFactoryPostProcessor
    中国净初级生产力年度合成产品NPP(MYD17A3H.006)
    Python之第十章 IO及对象列化
    Linux系统零基础入门之基本操作
    cocos creator项目构建问题
    ThingsBoard教程(二八):详细讲解在tb平台下 mqtt协议下的 rpc 遥测,客户端rpc,服务的rpc的使用 ,与node-red联动
    windows任务栏卡死,重启也没用
  • 原文地址:https://blog.csdn.net/qq_50808730/article/details/134481211