圣源电子制作

标题: Ardunio 入门教程-实验九 模拟交通信号灯 [打印本页]

作者: sydz    时间: 2012-5-13 16:00
标题: Ardunio 入门教程-实验九 模拟交通信号灯
Ardunio 入门教程-实验九 模拟交通信号灯

实验用到的元件
(, 下载次数: 63)
实验用到的元件,红‘绿’黄 LED各一个 ,3个470欧姆的电阻,1个10K欧姆电阻,1个轻触,6根杜邦线,一块实验板。

原理图
(, 下载次数: 63)


连接图
(, 下载次数: 67)

  3个LED自由闪烁  当 按住轻触开关 停止闪烁。

实验演示视频:


代码:
  1. // Project 5

  2. int redPin = 2;
  3. int yellowPin = 3;
  4. int greenPin = 4;
  5. int buttonPin = 5;

  6. int state = 0;

  7. void setup()                    
  8. {
  9.   pinMode(redPin, OUTPUT);   
  10.   pinMode(yellowPin, OUTPUT);   
  11.   pinMode(greenPin, OUTPUT);     
  12.   pinMode(buttonPin, INPUT);
  13. }

  14. void loop()                    
  15. {
  16.   if (digitalRead(buttonPin))
  17.   {
  18.     if (state == 0)
  19.     {
  20.       setLights(HIGH, LOW, LOW);
  21.       state = 1;
  22.     }
  23.     else if (state == 1)
  24.     {
  25.       setLights(HIGH, HIGH, LOW);
  26.       state = 2;
  27.     }
  28.     else if (state == 2)
  29.     {
  30.       setLights(LOW, LOW, HIGH);
  31.       state = 3;
  32.     }
  33.     else if (state == 3)
  34.     {
  35.       setLights(LOW, HIGH, LOW);
  36.       state = 0;
  37.     }
  38.     delay(1000);
  39.   }
  40. }

  41. void setLights(int red, int yellow, int green)
  42. {
  43.   digitalWrite(redPin, red);
  44.   digitalWrite(yellowPin, yellow);
  45.   digitalWrite(greenPin, green);
  46. }  
  47.   
复制代码





欢迎光临 圣源电子制作 (http://bbs.syyyd.com/) Powered by Discuz! X3.4