📄 test03.c
字号:
#include<reg52.h>
#define uchar unsigned char
#define ul unsigned long
sbit wela=P2^7;
sbit dula=P2^6;
sbit k2=P3^4;
sbit k3=P3^5;
sbit k4=P3^6;
uchar code tabledu[]={
0x3f,0x06,0x5b,0x4f,
0x66,0x6d,0x7d,0x07,
0x7f,0x6f,0x77,0x7c,
0x39,0x5e,0x79,0x71};
uchar code tablewe[]={
0x01,0x02,0x04,0x08,
0x10,0x20
};
uchar count;
ul sum;
void display(uchar,uchar,uchar);
void delay(uchar);
void main()
{
EA=1;
ET1=1;
TMOD=0X10;
TH1=(65536-10000)/256;
TL1=(65536-10000)%256;
while(1)
{
if(k2==0){count=0;TR1=0;}
if(k3==0) TR1=1;
if(k4==0){count=0;TR1=0;sum=0;}
if(count==1)
{
count=0;
if(sum!=999)
sum++;
else sum=0;
}
display(sum/100,sum%100/10,sum%10);
}
}
void display(uchar a,uchar b,uchar c)
{
P0=0x00;
wela=1;
wela=0;
P0=~tabledu[a];
dula=1;
dula=0;
P0=tablewe[0];
wela=1;
wela=0;
delay(5);
//------------------
P0=0x00;
wela=1;
wela=0;
P0=~tabledu[b];
dula=1;
dula=0;
P0=tablewe[1];
wela=1;
wela=0;
delay(5);
//------------------
P0=0x00;
wela=1;
wela=0;
P0=~tabledu[c];
dula=1;
dula=0;
P0=tablewe[2];
wela=1;
wela=0;
delay(5);
//------------------
}
void timer1() interrupt 3
{
TH1=(65536-10000)/256;
TL1=(65536-10000)%256;
count=1;
}
void delay(uchar n)
{
uchar a,b;
for(a=n;a>0;a--)
for(b=255;b>0;b--);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -