单片机控制数码管显示一个两位数

题目具体要求:web

数码管能够显示任意一个两位数。svg

仿真实验电路图:
仿真
实验代码:spa

#include <at89x51.h>
unsigned char duanma[]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F,0x77,0x7C,0x39,0x5E,0x79,0x71};
unsigned int shuzi;
sbit yi=P1^1;
sbit er=P1^0;
void delay();
void main()
{   
	shuzi=79;
	while(1)
		{  
			P2=0x00;//很重要,不然数码管极可能没法正常显示
			yi=0;
			er=1;
			P2=duanma[shuzi%10];
			delay();
			
			yi=1;
			er=0;
			P2=duanma[shuzi/10];
			delay();
		}
    
}


void delay()
{
	unsigned int i,j;
for(i=0;i<100;i++);
	for(j=0;j<10;j++);

}