51单片机控制2个数码管动态实现0到99(C语言)
3个回答
展开全部
#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--);
}
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--);
}
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
利用Proteus设计电路并完成仿真调试,实现上电后数码管显示00,按K1键,数码管每秒自动加1顺序显示00~99的功能。提供了一个类似的问题和答案,以及一些参考链接。展示了一个用汇编语言编写的程序,实现从00开始显示,显示数字每隔一段时间加1,一直到99,然后回到00的功能。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询