shuzizhong.txt

来自「利用实验板上的最右边的LED数码管做显示」· 文本 代码 · 共 32 行

TXT
32
字号
#include "reg51.h"
unsigned char tab[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
void delay();
void delay()
{int a=5000;
while(a--);
}
void timer1() interrupt 3
{int i,j,k;
TH1=-50000/256;
TL1=-50000%256;
j++;
if(j==10)
{j=0;i++;P2=0xfe;P0=tab[i];delay();}
 if(i>9)
   {i=0;P2=0xfe;P0=tab[0];delay();
    if(k<=4)
      {P2=0xfd;k++;P0=tab[k];delay();}
    else
      {k=0;P2=0xfd;P0=tab[0]; delay();}
   }
}
main()
{TMOD=0x10;
TH1=-50000/256;
TL1=-50000%256;
EA=1;ET1=1;TR1=1;
P2=0xfe;P0=tab[0]; delay();
P2=0xfd;P0=tab[0]; delay();
do{}while(1);
}
利用实验板上的最右边两位LED数码管做显示,利用中断法编写定时程序,控制单片机定时器进行定时,所定时间为1S。刚开始LED数码管显示00,每过1S,最右边的一位数码管的显示值增加1,当显示到9时返回0,同时,前面一位加一,当显示到5时返回0,依此反复

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?