帮我注释一下以下的单片机程序

来源:百度知道 编辑:UC知道 时间:2024/06/08 16:52:42
include <AT89c51.H>
#define uchar unsigned char
#define uint unsigned int
sbit key0=P1^0;
sbit key1=P1^1;
sbit key2=P1^2;
sbit key3=P1^3;
sbit key4=P1^4;
sbit key5=P1^5;
sbit key6=P1^6;
sbit key7=P1^7;

uchar code table1[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,
0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e,
0xcf,0xff,0x76,0x79,0x38,0x3f,0};
uchar code table2[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};
void delay(uint x)
{ uint i,j;
for(i=x;i>0;i--)
for(j=100;j>0;j--);
}
main()
{
while(1)
{

if(key0==0)
{
P0=table2[0];
delay(10);
P3=table1[1];
delay(10);
while(1);
}
if(key1==0)
{
P0=table2[1];
delay(10);
P3=table1[2];
delay(10);
while(1);
}

include <AT89c51.H>
#define uchar unsigned char
#define uint unsigned int //定义
sbit key0=P1^0;
sbit key1=P1^1;
sbit key2=P1^2;
sbit key3=P1^3;
sbit key4=P1^4;
sbit key5=P1^5;
sbit key6=P1^6;
sbit key7=P1^7; //定义键盘口

uchar code table1[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,
0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e,
0xcf,0xff,0x76,0x79,0x38,0x3f,0}; //数码管段选0~f
uchar code table2[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f}; //位选1~7
void delay(uint x) //延时子函数
{ uint i,j;
for(i=x;i>0;i--)
for(j=100;j>0;j--);
}
main() //主函数
{
while(1)
{

if(key0==0) //第一个键被按下
{
P0=table2[0];
delay(10);
P3=table1[1]; //第一个数码管显示0
delay(10);
while(1);
}
if(key1==0) //第二个键被按下第二个数码管显示1
{
P0=table2[1];
delay(10);
P3=table1[2];
delay(10);
while(1);
} <