用51帮忙写个c语言程序,按键计数,按一下键显示数字加一,两个按键控制分别控制两个数码管的计数显示 5
展开全部
#include <reg51.h>
sbit k1=P3^0;
sbit k2=P3^1;
unsigned char shi,ge;
unsigned char code tab[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90}; //共阳极数码管
void delay(unsigned int z)
{
unsigned int x,y;
for(x=z;x>0;x--)
for(y=110;y>0;y--);
}
void display()
{
P2=0x01;
P0=tab[shi];
delay(10);
P2=0x02;
P0=tab[ge];
delay(10);
}
void keyscan()
{
if(k1==0)
{
delay(2);
if(k1==0)
{
while(!k1);
shi++;
if(shi==10)
shi=0;
}
}
if(k2==0)
{
delay(2);
if(k2==0)
{
while(!k2);
ge++;
if(ge==10)
{
ge=0;
shi++;
if(shi==10)
shi=0;
}
}
}
}
void main()
{
while(1)
{
display();
keyscan();
}
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询