代码:
int potpin=0; int ledpin_red=9; int ledpin_yellow=10; int ledpin_green=11; int val=0; void setup() { Serial.begin(9600);//设置波特率为9600 pinMode(ledpin_red,OUTPUT); pinMode(ledpin_yellow,OUTPUT); pinMode(ledpin_green,OUTPUT); //注意:模拟接口自动设置为输入 } void loop() { val=analogRead(potpin);// 读取传感器的模拟值并赋值给val Serial.println(val);//显示val 变量 //红灯 Serial.println("Red! STOP!!!!!"); analogWrite(ledpin_red,val/4);//红灯亮,绿灯和黄灯灭 analogWrite(ledpin_green,LOW); analogWrite(ledpin_yellow,LOW); delay(5000);//延时5秒 //黄灯变换 Serial.println("Notice!SLOW DOWN!!! Yellow!"); analogWrite(ledpin_yellow,val/4); delay(500); analogWrite(ledpin_yellow,LOW); delay(500); analogWrite(ledpin_yellow,val/4); delay(500); analogWrite(ledpin_yellow,LOW); delay(500); analogWrite(ledpin_yellow,val/4); delay(500);//黄灯闪烁三次,此时红灯仍是亮的 //绿灯 Serial.println("GREEN! GOGOGO!"); analogWrite(ledpin_green,val/4);analogWrite(ledpin_red,val/4);//绿灯亮,红灯和黄灯灭 analogWrite(ledpin_red,LOW); analogWrite(ledpin_yellow,LOW); delay(5000);//延时5秒 //变换,完全复制上面的 Serial.println("Notice! Yellow!"); analogWrite(ledpin_yellow,val/4); delay(500); analogWrite(ledpin_yellow,LOW); delay(500); analogWrite(ledpin_yellow,val/4); delay(500); analogWrite(ledpin_yellow,LOW); delay(500); analogWrite(ledpin_yellow,val/4); delay(500);//闪烁三次 }
效果:
