初级会员

- 积分
- 59
- 金钱
- 59
- 注册时间
- 2016-5-30
- 在线时间
- 14 小时
|
1金钱
在打窗口看门狗的时候,出现一个问题,不能进入中断,请大神帮我看一下怎么解决,不胜感激
main.c:
#include "sys.h"
#include "delay.h"
#include "usart.h"
#include "led.h"
#include "wdg.h"
#include "key.h"
int main(void)
{
delay_init();
NVIC_Configuration(); //éèÖÃNVICÖD¶Ï·Ö×é2:2λÇàÕ¼óÅÏè¼¶£¬2λÏìó|óÅÏè¼¶
//uart_init(9600);
LED_Init();
KEY_Init();
LED0 = 0;
delay_ms(300);
WWDG_Init(0x7f,0x5f,WWDG_Prescaler_8);
while(1)
{
LED0 = 1;
}
}
wdg.c:
#include "wdg.h"
#include "led.h"
// void IWDG_Init(u8 prer,u16 rlr)
// {
// IWDG_WriteAccessCmd(IWDG_WriteAccess_Enable);
// IWDG_SetPrescaler(prer);
// IWDG_SetReload(rlr);
// IWDG_ReloadCounter();
// IWDG_Enable();
// }
// void IWDG_Feed(void)
// {
// IWDG_ReloadCounter();
// }
u8 WWDG_CNT = 0x7f;
void WWDG_Init(u8 tr,u8 wr,u32 fprer)
{
RCC_APB1PeriphClockCmd(RCC_APB1Periph_WWDG,ENABLE);
WWDG_CNT = tr & WWDG_CNT;
WWDG_SetPrescaler(fprer);
WWDG_SetWindowValue(wr);
WWDG_Enable(WWDG_CNT);
WWDG_ClearFlag();
WWDG_NVIC_Init();
WWDG_EnableIT();
}
void WWDG_Set_Counter(u8 cnt)
{
WWDG_Enable(cnt);
}
void WWDG_NVIC_Init()
{
NVIC_InitTypeDef NVIC_InitStructure;
NVIC_InitStructure.NVIC_IRQChannel = WWDG_IRQn;
NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 2;
NVIC_InitStructure.NVIC_IRQChannelSubPriority = 3;
NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;
NVIC_Init(&NVIC_InitStructure);
}
void WWDG_IRQhandler(void)
{
WWDG_SetCounter(WWDG_CNT);
WWDG_ClearFlag();
LED1 = !LED1;
}
|
|