一个开关,比如导通了1秒一个模式,3秒一个模式,5秒一个模式。
要么在一定时间内,检测开关导通的次数
我觉得应该弄的直观点,从51上接4个led做指示用,一个灯表示待运行,还有3个灯,亮一个表示模式1,亮两个表示模式2,亮3个表示模式3
开机的时候,待运行灯亮,等待设定模式,这时候开始按按键设定模式,同时待运行灯灭。模式灯随按键操作变化。
模式设定好了,停止按键操作,两秒后待运行灯亮,表示模式设定完毕。这时候长按按键,开始跑马灯。短按按键则返回模式设定。
当开始运行跑马灯的时候,可以设定运行一遍返回,也可以中断返回。
个人想法,不知行不行
用个存储单元,按下一次计1.按下第二次计2,按下第三次计3。然后判断这单元里的数,根据1、2或3分别转向三 种花样。
#include
void delay(unsigned int i);
main()
{
unsigned char a=0xff;
while(1)
{
P2 = a;
delay(1000);
a++;
while(0)
{
P2=a;
delay(1000);
a--;
}
}
}
void delay (unsigned int i)
{
unsigned char j;
for(i;i>0;i--)
for(j=500;j>0;j--);
}