2026-03-20 21:19:04 +08:00
|
|
|
|
#include "../main/SystemInclude.h"
|
|
|
|
|
|
/*==========================================
|
|
|
|
|
|
IWDG
|
|
|
|
|
|
==========================================*/
|
2026-03-20 21:16:58 +08:00
|
|
|
|
|
2026-03-20 21:19:04 +08:00
|
|
|
|
//iwdg_cfg(IWDG_PRESCALER_t IWDG_PRESCALER,uint16_t Reload)
|
|
|
|
|
|
void iwdg_cfg(void)
|
2026-03-20 21:16:58 +08:00
|
|
|
|
{
|
|
|
|
|
|
// 1. IWDG<44>ϵ<EFBFBD><CFB5><EFBFBD>Ĭ<EFBFBD><C4AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬<D7B4><CCAC>ʱ<EFBFBD><CAB1>Դ32K LSI<53><49>Ĭ<EFBFBD>ϸ<EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>Լ20<32><30>
|
|
|
|
|
|
LHL_IWDG_Stop();
|
|
|
|
|
|
// 2. д<><D0B4>WDG<44><47><EFBFBD><EFBFBD><EFBFBD>Ƚ<EFBFBD><C8BD><EFBFBD><EFBFBD><EFBFBD>ע<EFBFBD><D7A2>WDGһ<47><D2BB>Reload<61><64><EFBFBD>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD>д<EFBFBD><D0B4><EFBFBD><EFBFBD>
|
|
|
|
|
|
LHL_IWDG_Unlock();
|
|
|
|
|
|
|
|
|
|
|
|
// 3. <20>趨LSI 32<33><32>Ƶ<EFBFBD><C6B5>Լ1KHz<48><7A><EFBFBD><EFBFBD>Ĭ<EFBFBD><C4AC>Ϊ256<35><36>Ƶ
|
|
|
|
|
|
LHL_IWDG_SetPrescaler(IWDG_PRESCALER_32, LHL_NRM_TIMEOUT);
|
|
|
|
|
|
|
|
|
|
|
|
// 4. IWDG<44><47>12bit<69>Ĵ<EFBFBD><C4B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ4095<39><35>Ĭ<EFBFBD><C4AC><EFBFBD><EFBFBD>װ<EFBFBD><D7B0>ֵ0x9C0<43><30>
|
|
|
|
|
|
LHL_IWDG_SetReload(4000, LHL_NRM_TIMEOUT);
|
|
|
|
|
|
|
|
|
|
|
|
// 5. <20>Զ<EFBFBD>װ<EFBFBD>ز<EFBFBD><D8B2><EFBFBD>ʼ<EFBFBD><CABC><EFBFBD>У<EFBFBD><D0A3><EFBFBD>Լ4000*1KHz=4S<34><53>λ
|
|
|
|
|
|
LHL_IWDG_Start();
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2026-03-20 21:19:04 +08:00
|
|
|
|
/*
|
2026-03-20 21:16:58 +08:00
|
|
|
|
//void LHL_IWDG_Reload(void);//д<><D0B4>0xAAAA<41><41>װ<EFBFBD><D7B0>IWDG
|
|
|
|
|
|
//LHL_StatusTypeDef LHL_IWDG_Stop(void); //<2F><>ͣ<EFBFBD><CDA3><EFBFBD><EFBFBD>IWDG
|
|
|
|
|
|
//LHL_StatusTypeDef LHL_IWDG_Resume(void);//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>IWDG
|
|
|
|
|
|
//LHL_StatusTypeDef LHL_IWDG_Start(void);//д<><D0B4>0xAAAA<41><41>װ<EFBFBD>ز<EFBFBD><D8B2><EFBFBD><EFBFBD><EFBFBD>IWDG
|
|
|
|
|
|
*/
|
2026-03-20 21:19:04 +08:00
|
|
|
|
void stop_WDT(void)
|
2026-03-20 21:16:58 +08:00
|
|
|
|
{
|
|
|
|
|
|
LHL_IWDG_Stop();
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2026-03-20 21:19:04 +08:00
|
|
|
|
void clear_WDT(void)
|
2026-03-20 21:16:58 +08:00
|
|
|
|
{
|
|
|
|
|
|
//LHL_IWDG_Reload();
|
|
|
|
|
|
}
|
|
|
|
|
|
|