一位数码管 ,一个按键,实现每秒计时+1 ,按键控制分别为 清零,开始计数,停止计数(秒用定时器实现),但是数码管仿真时显示数据输入到了数码管,但数码管不亮,请问是为什么?共阴极与共阳极的数码管都实验过,都是不亮,不是显示错误的数字,是一点都不亮。排阻也是试了试有排阻和没有排阻的两种情况。
#include
#define uchar unsigned char
unsigned char code discode[]={0x3f,0x60,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};
uchar timer=0;
uchar second;
uchar key=0;
main()
{
TMOD=0x01;
ET0=1;
EA=1;
second=0;
P0=discode[second];
while(1)
{
if((P3&0x80)==0x00)
{
key++;
switch(key)
{
case 1:
TH0=0xee;
TL0=0x00;
TR0=1;
break;
case 2:
TR0=0;
break;
case 3:
key=0;
second=0;
P0=discode[second];
break;
}
while((P3&0x80)==0x00);
}
}
}
void int_T0() interrupt 1 using 0
{
TR0=0;
TH0=0xee;
TL0=0x00;
timer++;
if(timer==200)
{
timer=0;
second++;
P0=discode[second];
}
if(second==16)
{
TR0=0;
second=0;
key=2;
}
else
{
TR0=1;
}
}
-
数码管
+关注
关注
32文章
1874浏览量
90928
发布评论请先 登录
相关推荐
评论