|
人行交通灯制作
- int redLED=8;//定义红灯
- int yellowLED=9;//定义黄灯
- int greenLED=10;//定义绿灯
- int red=3;//人行红灯
- int green=2;//人行绿灯
- void setup() {
- // put your setup code here, to run once:
- pinMode(redLED,OUTPUT);
- pinMode(yellowLED,OUTPUT);//定义全部引脚模式为输出
- pinMode(greenLED,OUTPUT);
- pinMode(red,OUTPUT);
- pinMode(green,OUTPUT);
- }
- void loop() {
- // put your main code here, to run repeatedly:
- digitalWrite(redLED,HIGH);//红灯亮
- delay(500);//延迟绿灯亮的时间
- digitalWrite(green,HIGH);//行人绿灯亮
- delay(3500);//亮4秒
- blink(green,redLED);//红灯和行人绿灯一起开始闪
- blink(yellowLED);//黄灯闪
- digitalWrite(red,HIGH);//行人红灯亮
- delay(500);
- digitalWrite(greenLED,HIGH);//绿灯亮
- delay(3500);//亮4秒
- blink(red,greenLED);//绿灯和行人红灯一起开始闪
- }
- void blink(int led)//让灯闪烁的函数
- {
- for(int i=0;i<=2;i++)//闪烁重复5次
- {
- digitalWrite(led,HIGH);//灯亮
- delay(1000);//100纳秒
- digitalWrite(led,LOW);//灯灭
- delay(200);//200纳秒
- }
- digitalWrite(led,LOW);//关闭灯泡
- }
- void blink(int led1,int led2)//重载blink函数
- {
- for(int i=0;i<=2;i++)//闪烁重复3次
- {
- digitalWrite(led1,HIGH);//灯亮
- digitalWrite(led2,HIGH);//灯亮
- delay(1000);//100纳秒
- digitalWrite(led1,LOW);//灯灭
- digitalWrite(led2,LOW);//灯灭
- delay(200);//200纳秒
- }
- digitalWrite(led1,LOW);//关闭灯泡
- delay(200);
- digitalWrite(led2,LOW);
- }
复制代码
|
|