本帖最后由 炼心斋 于 2012-11-6 14:24 编辑
借鉴二位的程序,我给综合了一下。用switch语句编程。实验是成功的。谈不上创新,只是熟悉一下switch语句。效果是一样的。可能还没有楼主的简洁。onlycheat 的程序没看懂,见笑!纯新手,首发。
#define BUTTON 2//定义按键接口
int LED[5]={5,7,9,11,13};//定义LED接口
int state=0;//存放状态标志
int val = 0;//存放按键值
int i;
void setup()
{
for( i=0;i<5;i++)
pinMode(LED,OUTPUT);
pinMode(BUTTON,INPUT);
}
void loop()
{
val = digitalRead(BUTTON);
if ( digitalRead(BUTTON)==HIGH) {
while(digitalRead(BUTTON) == HIGH);
for ( i= 0; i< 5; i++) {
digitalWrite(LED, LOW);
}
switch(state){
flag:
case 0: digitalWrite(LED[state],HIGH); state++;break;
case 1: digitalWrite(LED[state],HIGH); state++;break;
case 2: digitalWrite(LED[state],HIGH); state++;break;
case 3: digitalWrite(LED[state],HIGH); state++;break;
case 4: digitalWrite(LED[state],HIGH); state++;break;
case 5: digitalWrite(LED[state-5],HIGH); state=1;//完成case 0 的工作,并重新开始循环
}
}
}
|