本帖最后由 戒指环 于 2012-6-30 00:20 编辑
现有二极管*6只(并排插在一起,左边第一个默认为1号), 开关*6
期望:当按下开关1时,6只二极管从1号到6号依次亮起,延时500ms后在按6号到1号依次灭掉。
当按下开关2时,6只二极管从6号到1号依次亮起,延时500ms后在按1号到6号依次灭掉。
请问如下图的链接方法对吗?
这里是代码 - void setup ()
- {
- pinMode(13,INPUT);
- pinMode(12,INPUT);
- for (int i=2; i<=7; i++)
- {
- pinMode(i,OUTPUT);
- }
- }
-
- void loop()
- {
- int n =digitalRead(13);
- int m =digitalRead(12);
- if (n==HIGH)
- {
- digitalWrite(2,HIGH);
- delay(300);
- digitalWrite(3,HIGH);
- delay(300);
- digitalWrite(4,HIGH);
- delay(300);
- digitalWrite(5,HIGH);
- delay(300);
- digitalWrite(6,HIGH);
- delay(300);
- digitalWrite(7,HIGH);
- delay(300);
- digitalWrite(7,LOW);
- delay(300);
- digitalWrite(6,LOW);
- delay(300);
- digitalWrite(5,LOW);
- delay(300);
- digitalWrite(4,LOW);
- delay(300);
- digitalWrite(3,LOW);
- delay(300);
- digitalWrite(2,LOW);
- delay(500);
- if (m==HIGH)
- {
- digitalWrite(7,HIGH);
- delay(300);
- digitalWrite(6,HIGH);
- delay(300);
- digitalWrite(5,HIGH);
- delay(300);
- digitalWrite(4,HIGH);
- delay(300);
- digitalWrite(3,HIGH);
- delay(300);
- digitalWrite(2,HIGH);
- delay(300);
- digitalWrite(2,LOW);
- delay(300);
- digitalWrite(3,LOW);
- delay(300);
- digitalWrite(4,LOW);
- delay(300);
- digitalWrite(5,LOW);
- delay(300);
- digitalWrite(6,LOW);
- delay(300);
- digitalWrite(7,LOW);
- delay(500);
- }
- }
- }
复制代码 |