自己写了一个程序,但发现一旦进入延时程序就初步来了,调了好久也不见效果,最气人的是不能设置断点,来这请教原子哥与吧里的各位这是什么原因
#include"led.h"
#include"key.h"
#include"exti.h"
#include"sys.h"
#include"delay.h"
u8 x = 0;
int main(void)
{
NVIC_Configuration();//中断优先级分配
delay_init();
LED_Init();//led_0,led_1的初始化
KEY0_Init();//按键KEY0的初始化
EXTIX_Init();//外部中断线5的初始化
while(1)
{
LED_0 = 0;//点亮led_0
LED_1 = 0;//点亮led_1
if(x)
{
LED_0 = 1;//熄灭led_0
LED_1 = 1;//熄灭led_1
delay_ms(1000);//延时1秒
LED_0 = 0;//点亮led_0
LED_1 = 0;//点亮led_1
}
}
}
void EXTI9_5_IRQHandler(void)
{
if(EXTI_GetFlagStatus(EXTI_Line5)!=RESET)
{
x = 1;//如果发生中断x置1
}
EXTI_ClearFlag(EXTI_Line5);//清除中断标志位
}
|