标签:esc 频率 看门狗 0ms access get 最大 clear scm
独立看门口配置
//main.c 中main函数前
static void IWDG_Config(void)
{
RCC_LSICmd(ENABLE);
/*!< Wait till LSI is ready */
while (RCC_GetFlagStatus(RCC_FLAG_LSIRDY) == RESET);
IWDG_WriteAccessCmd(IWDG_WriteAccess_Enable);
IWDG_SetPrescaler(IWDG_Prescaler_256);
//LSI频率为40K
IWDG_SetReload(1562); //定时10s , 781 = 10000ms * 40 / 256; 最大为0XFFF
IWDG_ReloadCounter();
IWDG_Enable();
}
//main函数开头中
if (RCC_GetFlagStatus(RCC_FLAG_IWDGRST) != RESET)
{
RCC_ClearFlag();
}
//main函数初始化部分中
Systick_Init();//systick中断中用于喂狗等 IWDG_Config();
//中断中写
void Systick_Init(void)
{
// if (SysTick_Config(SystemCoreClock / 1000))//1ms
if (SysTick_Config(SystemCoreClock / 100))//10ms
{
while (1);
}
}
void SysTick_Handler(void)
{
static u16 l_u16Tick = 0;
l_u16Tick ++;
if(!(l_u16Tick % 100))
{
g_u8Flg_1S = 1;
IWDG_ReloadCounter(); //喂狗
}
}
标签:esc 频率 看门狗 0ms access get 最大 clear scm
原文地址:http://www.cnblogs.com/ma77045728/p/7105566.html