定时器中断实验中,定时中断控制的DS1灯正常闪烁,主函数里的DS0灯不闪烁,是什么原因
int main(void)
{
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//éèÖÃÏμí3ÖD¶ÏóÅÏ輶·Ö×é2
delay_init(168); //3õê¼»ˉÑóê±oˉêy
LED_Init(); //3õê¼»ˉLED¶Ë¿ú
TIM3_Int_Init(5000-1,8400-1); //¶¨ê±Æ÷ê±Öó84M£¬·ÖÆμÏμêy8400£¬ËùòÔ84M/8400=10KhzμļÆêyÆμÂ꣬¼Æêy5000′ÎÎa500ms
while(1)
{
LED0=!LED0;//DS0·-×a
delay_ms(200);//Ñóê±200ms
};
}
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
呵呵!你没有遇到过中断IO口执行错误的程序,在同一端口操作时主程序在执行IO操作时突然中断,当前程序堆栈,执行中断时又执行当前IO,你想那你执行后,在返回主程序是IO堆栈出栈,会把你中断程序可能被修改,这时程序就会乱。出现怪问题,你有可能想都想不到的问题,为什么操作系统在执行有些程序时必须先关中断原因,你反汇编看看就知道了,呵呵!
一周热门 更多>