51单片机控制2个数码管动态实现0到99(C语言)

如题所述

第1个回答  2013-07-12
#include <reg51.h>

unsigned char code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};

void show(unsigned char n);
void delay();

void main()
{
unsigned char i;
int j;
while(1)
{
for(i=0;j=100,i<100;++i)
while(j--)
show(i);
}
}

void show(unsigned char n)
{
P0=table[n%10];
P2=~0x01;
delay();
P2=0xFF;
P0=table[n/10];
P2=~0x02;
delay();
P2=0xFF;
}

void delay()
{
int i=100;
while(i--);
}本回答被提问者和网友采纳
第2个回答  2023-03-10
利用Proteus设计电路并完成仿真调试,实现上电后数码管显示00,按K1键,数码管每秒自动加1顺序显示00~99的功能。提供了一个类似的问题和答案,以及一些参考链接。展示了一个用汇编语言编写的程序,实现从00开始显示,显示数字每隔一段时间加1,一直到99,然后回到00的功能。
第3个回答  2018-04-15
从99到0需要改什么地方
相似回答