求助两个按键控制显示加减
这个程序哪里有问题啊无法实现两个按键控制数码管的加减//一个按键控制多种灯模式
#include<reg51.h>
#include<math.h>
#include<intrins.h>
sbit S1=P1^0;//S1数码管加按键
sbit S2=P1^1;//S2数码管减按键
//函数名:delay
//函数功能:实现软件延时
//形式参数:整型变量i,控制循环次数
//返回值:无
void delay (unsigned int i)
{
unsigned int k;
for (k=0;k<i;k++);
}
void main( )
{
unsigned char i=0;
P0=0xff;
while (1)
{
if (S1==0)
{
delay(1200);
if(S1==0)
{
if(++i==12)
i=1;
}
}
if (S2==0)
{
delay(1200);
if(S2==0)
{
if(--i==1)
i=1;
}
}
switch(i)
{
case 1:P0=0Xc0;break;
case 2:P0=0Xf9;break;
case 3:P0=0Xa4;break;
case 4:P0=0Xb0;break;
case 5:P0=0X99;break;
case 6:P0=0X92;break;
case 7:P0=0X82;break;
case 8:P0=0Xf8;break;
case 9:P0=0X80;break;
case 10:P0=0X90;break;
case 11:P0=0Xff;break;
default:break;
}
while(!S1);
while(!S2);
delay(1200);
}
}
页:
[1]