打印
[国产单片机]

新手求助~51单片机数码管静态显示

[复制链接]
1066|10
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
zhmmok|  楼主 | 2014-10-11 21:59 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
用T0定时器可以正常显示,中断用T0定时器可以,T1就不行了,数码管停在0不动,只是把定时器T0换成T1就不行额,到底为什么?

#include <reg52.h>
#define uchar unsigned char
#define uint unsigned int
sbit dula=P2^6;
sbit wela=P2^7;
uchar code table[]={0x3f , 0x06 , 0x5b , 0x4f,
                                        0x66 , 0x6d , 0x7d , 0x07,
                                        0x7f , 0x6f , 0x77 , 0x7c,
                                         0x39 , 0x5e , 0x79 , 0x71 };
uchar num,a;
void main()
{
        wela=1;
        P0=0xc0;
        wela=0;
        dula=1;
        P0=table[num];
        dula=0;
        EA=1;
        ET1=1;
        TH1=(65536-45872)/256;
        TL1=(65536-45872)%256;
        TMOD=0x10;
        TR1=1;       
        while(1);       
}
void T1_time() interrupt 1
{       
       
        TH1=(65536-45872)/256;
        TL1=(65536-45872)%256;
        a++;
        if(a==20)
        {
                a=0;
                num++;
                P0=table[num];
                if(num==15)
                num=0;
        }
}

相关帖子

沙发
lyjian| | 2014-10-11 22:52 | 只看该作者
interrupt 1不是T1中断

使用特权

评论回复
板凳
zhmmok|  楼主 | 2014-10-11 23:43 | 只看该作者
lyjian 发表于 2014-10-11 22:52
interrupt 1不是T1中断

知道原因啦,感谢

使用特权

评论回复
地板
airwill| | 2014-10-11 23:48 | 只看该作者
呵呵,一个低级错误啦。
发现象这样的问题,还真的得请别人比较容易看出来。

使用特权

评论回复
5
wujh| | 2014-11-10 01:04 | 只看该作者
旁观者清

使用特权

评论回复
6
hw37395549| | 2014-11-14 08:40 | 只看该作者
是啊,LZ自己都说换为T1不行。是啊犯错也是一种成长。

使用特权

评论回复
7
huarana| | 2014-11-14 09:17 | 只看该作者
囧,这种问题 很容易失误。还是细心点好

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

2

帖子

0

粉丝