Arduino 互动交通灯
1、准备实验需要用到的硬件,如图所示:

3、将下列程序复制到Arduino IDE中,如下图所示:int carRed = 12;int carYellow = 11;int carGreen = 10;i荏鱿胫协nt pedRed = 9;int pedGreen = 8;int button = 2;int crossTime = 5000;unsigned long changeTime;void setup() {pinMode(carRed, OUTPUT);pinMode(carYellow, OUTPUT);pinMode(carGreen, OUTPUT);pinMode(pedRed, OUTPUT);pinMode(pedGreen, OUTPUT);pinMode(button, INPUT);digitalWrite(carGreen, HIGH);digitalWrite(pedRed, HIGH);}void loop() {int state = digitalRead(button);if (state == HIGH && (millis() - changeTime) > 5000) {changeLights();}}void changeLights() {digitalWrite(carGreen, LOW);digitalWrite(carYellow, HIGH);delay(2000);digitalWrite(carYellow, LOW);digitalWrite(carRed, HIGH);delay(1000);digitalWrite(pedRed, LOW);digitalWrite(pedGreen, HIGH);delay(crossTime);for (int x=0; x<10; x++) {digitalWrite(pedGreen, HIGH);delay(250);digitalWrite(pedGreen, LOW);delay(250);}digitalWrite(pedRed, HIGH);delay(500);digitalWrite(carYellow, HIGH);digitalWrite(carRed, LOW);delay(1000);digitalWrite(carGreen, HIGH);digitalWrite(carYellow, LOW);changeTime = millis();}


6、按照下图中的电路,进行实验硬件的连接


9、为了方便大家实验,防止在复制代码的时候出现错误,特将代码和电路图Fritzing源文件上传至网盘供大家下载学习。下载地址:http://pan.baidu.com/s/1mhBm朐袁噙岿Igw,打开链接后,如图所示,点击下载即可
