请问:中断函数不起作用,求助?

2020-01-30 14:02发布

本帖最后由 chenguor 于 2012-11-18 11:02 编辑

#include <reg52.h>
#include"anjian.h"
void delay()                               
{
        uint16 n = 1000;
        while(n--);
}
/*功能函数*/
led_1()
{   。。。。。。。。。}
led_2()
{。。。。。。。。。。}
led_3()
{。。。。。。。。。。}
       
/*
键盘
*/
void key_board()
{
        if(!KeyIn1)                 
        {
                delay();         
                if(!KeyIn1)  
                {
                        led_1();
                        while(!KeyIn1);          
            }
        }
        if(!KeyIn2)
        {
                delay();
                if(!KeyIn2);
                {
                        led_2();
                        while(!KeyIn2);
                }
        }
        if(!KeyIn3)
        {
                delay();
                if(!KeyIn3);
                {
                        led_3();
                        while(!KeyIn3);
                }
        }
}
void int_init()                    
{
        TMOD |= 0x10;                  
        TMOD &= 0xdf;                  
        TH1 = 0xFC;                            
        TL1 = 0x67;
        TR1 = 1;                            
        EA = 1;                                    
        ET1 = 1;                          
}
/*主函数*/
main()
{
        P0 = 0XFF;               
        KeyOut1 =0;        //按键初始化
        int_init();
        while(1);
}
void interrupt_timer1() interrupt 3                 
{
      TH1 = 0xFC;                                                          
      TL1 = 0x67;
      key_board();                                                                  
}
这个程序的我想要的功能是:按KeyIn1键,显示功能函数led_1()的效果;按KeyIn2键,显示功能函数led_2()的效果;按KeyIn3键,显示功能函数led_3()的效果;但是按KeyIn1键,显示功能函数led_1()的效果,如果按KeyIn2键,显示功能函数led_1()的效果,就是没进入中断?请问各位这是什么原因?谢谢
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
18条回答
chengtina
1楼-- · 2020-02-01 03:46
 精彩回答 2  元偷偷看……
bbssilverkey
2楼-- · 2020-02-01 08:15
因为楼主的程序进去了就再也回不来了,呵呵
浮云残雪
3楼-- · 2020-02-01 12:31
chenguor 发表于 2012-11-29 21:37
我已经发你了  ,麻烦你帮我看下 谢谢

我看了。并且仿真了一下,能够进入中断。附一张设置断点后仿真的示例
yaoxiaofeng
4楼-- · 2020-02-01 13:19
中断中尽量不要调用函数。
wsy2012
5楼-- · 2020-02-01 14:09
最好不要用中断
成就与价值
6楼-- · 2020-02-01 17:11
 精彩回答 2  元偷偷看……

一周热门 更多>