任务描述:
某企业承担了一个LED数码显示设计任务;要求单片机控制一个数码管显示0→1→2→3→4→5→6→7→8→9,每个状态停留1秒。请用单片机设计其控制系统并调试运行。
仿真视频
知乎视频www.zhihu.com硬件电路原理图
元件清单
数码管显示数的字形码(根据选用数码管的型号使用,共阳极与共阴极)
C语言程序
#include<reg51.h>
void delay1s();
unsigned char LED[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
void main()
{
unsigned char i;
TMOD=0X10;
while(1)
{
for(i=0;i<10;i++)
{
P1=LED[i];
delay1s();
}
}
}
void delay1s()
{
unsigned char i;
for(i=0;i<20;i++)
{
TH1=0X3C;
TL1=0xb0;
TR1=1;
while(!TF1);
TF1=0;
}
}