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

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条回答
浮云残雪
1楼-- · 2020-01-31 12:57
你把整个工程发给我,我看看
浮云残雪
2楼-- · 2020-01-31 12:59
 精彩回答 2  元偷偷看……
chenguor
3楼-- · 2020-01-31 17:22
浮云残雪 发表于 2012-11-27 09:57
void interrupt_timer1() interrupt 3                 
{
       TH1 = 0xFC;                           ...

我已经发你了  ,麻烦你帮我看下 谢谢
浮云残雪
4楼-- · 2020-01-31 18:12
chenguor 发表于 2012-11-29 21:37
我已经发你了  ,麻烦你帮我看下 谢谢

好的。刚刚收到。
龙折翼
5楼-- · 2020-01-31 20:34
程序上没有什么致命问题,能把你的电路图传上来看看吗?
浮云残雪
6楼-- · 2020-02-01 00:50
chenguor 发表于 2012-11-29 21:37
我已经发你了  ,麻烦你帮我看下 谢谢

QQ邮箱今天上不了。改天弄好发给你吧。

一周热门 更多>