1.IWDG_SetPrescaler
函数原型:void IWDG_SetPrescaler(u8 IWDG_Prescaler)
功能:设置IWDG预分频值
参数:IWDG_Prescaler:IWDG预分频值
参数描述:IWDG_Prescaler
IWDG_Prescaler参数 | 描述 | IWDG_Prescaler参数 | 描述 |
IWDG_Prescaler_4 | 设置IWDG预分频值为4 | IWDG_Prescaler_64 | 设置IWDG预分频值为64 |
IWDG_Prescaler_8 | 设置IWDG预分频值为8 | IWDG_Prescaler_128 | 设置IWDG预分频值为128 |
IWDG_Prescaler_16 | 设置IWDG预分频值为16 | IWDG_Prescaler_256 | 设置IWDG预分频值为256 |
IWDG_Prescaler_32 | 设置IWDG预分频值为32 |
例子:IWDG_SetPrescaler(IWDG_Prescaler_8); //设置IWDG预分频值为8
2.IWDG_SetReload
函数原型:void IWDG_SetReload(u16 Reload)
功能:设置IWDG重装载值
参数:Reload:IWDG的重装载值。取值范围0~0x0FFF
例子:IWDG_SetReload(0xFFF); //设置IWDG的重装载值为0xFFF
3.IWDG_ReloadCounter
函数原型:void IWDG_ReloadCounter(void)
功能描述:将IWDG重装载寄存器的值装载至IWDG计数器
参数:无
例子:IWDG_ReloadCounter(); //重装IWDG的计数值
4.IWDG_Enable
函数原型:void IWDG_Enable(void)
功能:使能IWDG
参数:无
例子:IWDG_Enable(); //开启IWDG
5.IWDG_GetFlagStatus
函数原型:FlagStatus IWDG_GetFlagStatus(u16 IWDG_FLAG)
功能:检查指定的IWDG标志位
参数:IWDG_FLAG:待检查的IWDG标志位
返回值:IWDG_FLAG的新状态(SET或RESET)
参数描述:IWDG_FLAG,可以被函数IWDG_GetFlagStatus获取的标志位。
IWDG_FLAG参数 | 描述 |
IWDG_FLAG_PVU | 预分频值更新进行中标志 |
IWDG_FLAG_RVU | 重装载值更新进行中标志 |
例子:
//检测预分频值是否正在更新中
FlagStatus Status;
Status=IWDG_GetFlagStatus(IWDG_FLAG_PVU);
if(Status==RESET)
{...}
else
{...}
6.RCC_GetFlagStatus
函数原型:FlagStatus RCC_GetFlagStatus(u8 RCC_FLAG)
功能:检查指定的RCC标志位
参数:RCC_FLAG:待检查的RCC标志位
返回值:RCC_FLAG的新状态(SET或者RESET)
参数描述:RCC_FLAG,代表可以被函数RCC_GetFlagStatus检查的标志位
RCC_FLAG参数 | 描述 | RCC_FLAG参数 | 描述 |
RCC_FLAG_HSIRDY |
HSI晶振就绪 | RCC_FLAG_PORRST | POR/PDR复位 |
RCC_FLAG_HSERDY | HSE晶振就绪 | RCC_FLAG_SFTRST | 软件复位 |
RCC_FLAG_PLLRDY | PLL就绪 | RCC_FLAG_IWDGRST | IWDG复位 |
RCC_FLAG_LSERDY | LSE晶振就绪 | RCC_FLAG_WWDGRST | WWDG复位 |
RCC_FLAG_LSIRDY | LSI晶振就绪 | RCC_FLAG_LPWRRST | 低功耗复位 |
RCC_FLAG_PINRST | 引脚复位 |
例子:
//查询PLL输出时钟是否稳定
FlagStatus Status;
Status=RCC_GetFlagStatus(RCC_FLAG_PLLRDY);
if(Status==RESET)
{...}
else
{...}
7.RCC_ClearFlag
函数原型:void RCC_ClearFlag(void)
功能:清除RCC的复位标志位
参数:RCC_FLAG:待清除的RCC复位标志位。
例子:RCC_ClearFlag(); //清除一系列复位标志