新手求助:有两种流水灯形式,想加两个按键切换流水灯模式,按键程序搞半天也没整明白,请高人指点,谢谢!按键1执行 void disp0()
按键2执行 void disp1()
请大佬们帮帮忙,万分感谢!
单片机源程序如下:
#include <REGX52.H>
#define uint unsigned int
#define uchar unsigned char
uchar code table0[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};//LED从低位往高位移
uchar code table1[]={0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe};//LED从高位往低位移
uchar i,j; //定义循环变量
uint tt=70; //定义时间指数
void delay(uint time) //延时函数
{
uint x,y;
for(x=time;x>0;x--)
for(y=110;y>0;y--);
}
void disp0() //状态1 LED顺时针转一圈
{
for(i=0;i<8;i++)
{
P2=table1[ i];
delay(100);
}
P2=0xff;
for(i=0;i<8;i++)
{
P0=table0[ i];
delay(100);
}
P0=0xff;
}
void disp1() //状态0 所有LED闪烁3次
{
for(i=0;i<3;i++)
{
P0=0x00; P2=0x00;
delay(300);
P0=0xff; P2=0xff;
delay(300);
}
}
void main()
{
while(1)
{
disp0(); //状态1 LED顺时针转一圈
disp1(); //状态0 所有LED闪烁3次
}
}
|