Arduino UNO 控制交通灯

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

Arduino UNO 控制交通灯实例


提示:以下是本篇文章正文内容,下面案例可供参考

一、Arduino 模拟控制交通灯

示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。

二、使用步骤

1.引入库

int a=7;
int b=6;
int c=4;
int d=2;
int e=1;
int f=9;
int g=10;
int dp=5;
int Green_LED=12;
int RED_LED=11;
int Yellow_LED=8;

void setup()
{
// put your setup code here, to run once:
for(int i=1;i<=12;i++)
{
pinMode(i,OUTPUT);

}

}

//No display
void No_display()
{
digitalWrite(dp,HIGH);
digitalWrite(g,HIGH);
digitalWrite(a,HIGH);
digitalWrite(b,HIGH);
digitalWrite(c,HIGH);
digitalWrite(d,HIGH);
digitalWrite(e,HIGH);
digitalWrite(f,HIGH);

}

//显示数字 0
void digital_0(void)
{
digitalWrite(dp,HIGH);
digitalWrite(g,HIGH);
digitalWrite(a,LOW);
digitalWrite(b,LOW);
digitalWrite(c,LOW);
digitalWrite(d,LOW);
digitalWrite(e,LOW);
digitalWrite(f,LOW);

}

//显示数字 1
void digital_1(void)
{
digitalWrite(dp,HIGH);
digitalWrite(a,HIGH);
digitalWrite(d,HIGH);
digitalWrite(e,HIGH);
digitalWrite(f,HIGH);
digitalWrite(g,HIGH);

digitalWrite(b,LOW);
digitalWrite(c,LOW);

}

//显示数字 2
void digital_2(void)
{
digitalWrite(dp,HIGH);
digitalWrite(c,HIGH);
digitalWrite(f,HIGH);

digitalWrite(a,LOW);
digitalWrite(b,LOW);
digitalWrite(d,LOW);
digitalWrite(e,LOW);
digitalWrite(g,LOW);

}

//显示数字 3
void digital_3(void)
{
digitalWrite(dp,HIGH);

digitalWrite(e,HIGH);
digitalWrite(f,HIGH);

digitalWrite(a,LOW);
digitalWrite(b,LOW);
digitalWrite(c,LOW);
digitalWrite(d,LOW);
digitalWrite(g,LOW);

}

//显示数字 4
void digital_4(void)
{
digitalWrite(dp,HIGH);
digitalWrite(a,HIGH);
digitalWrite(e,HIGH);
digitalWrite(d,HIGH);

digitalWrite(b,LOW);
digitalWrite(c,LOW);
digitalWrite(f,LOW);
digitalWrite(g,LOW);
}

//显示数字 5
void digital_5(void)
{
digitalWrite(dp,HIGH);
digitalWrite(b,HIGH);
digitalWrite(e,HIGH);

digitalWrite(a,LOW);
digitalWrite(c,LOW);
digitalWrite(d,LOW);
digitalWrite(f,LOW);
digitalWrite(g,LOW);

}

//显示数字 6
void digital_6(void)
{
digitalWrite(dp,HIGH);
digitalWrite(b,HIGH);

digitalWrite(a,LOW);
digitalWrite(c,LOW);
digitalWrite(d,LOW);
digitalWrite(e,LOW);
digitalWrite(f,LOW);
digitalWrite(g,LOW);
}

//显示数字 7
void digital_7(void)
{
digitalWrite(dp,HIGH);
digitalWrite(g,HIGH);
digitalWrite(e,HIGH);
digitalWrite(d,HIGH);

digitalWrite(a,LOW);
digitalWrite(b,LOW);
digitalWrite(c,LOW);
digitalWrite(f,LOW);

}

//显示数字 8
void digital_8(void)
{
digitalWrite(dp,HIGH);

digitalWrite(a,LOW);
digitalWrite(b,LOW);
digitalWrite(c,LOW);
digitalWrite(d,LOW);
digitalWrite(e,LOW);
digitalWrite(f,LOW);
digitalWrite(g,LOW);

}

//显示数字 9
void digital_9(void)
{
digitalWrite(e,HIGH);
digitalWrite(d,HIGH);
digitalWrite(dp,HIGH);

digitalWrite(a,LOW);
digitalWrite(b,LOW);
digitalWrite(c,LOW);
digitalWrite(f,LOW);
digitalWrite(g,LOW);

}

void Yellow_LED_ON(void)
{
digitalWrite(Yellow_LED,HIGH);
}

void Yellow_LED_OFF(void)
{
digitalWrite(Yellow_LED,LOW);
}

void Yellow_LED_Blink(void)
{
for(int i=0;i<4;i++)
{
Yellow_LED_ON();
delay(500);
Yellow_LED_OFF();
delay(500);
}
}

void revert_9_1(void)
{
digital_9();
delay(1000);
digital_8();
delay(1000);
digital_7();
delay(1000);
digital_6();
delay(1000);
digital_5();
delay(1000);
digital_4();
delay(1000);
digital_3();
delay(1000);
digital_2();
delay(1000);
digital_1();
delay(1000);
}

void revert_3_1(void)
{
digital_3();
delay(1000);
digital_2();
delay(1000);
digital_1();
delay(1000);
}

void GreenLED_Section(void)
{
digitalWrite(Green_LED,HIGH); //Turn On Green LED
revert_9_1();
digitalWrite(Green_LED,LOW); //Turn off Green LED
}

void RedLED_Section(void)
{
digitalWrite(RED_LED,HIGH); //Turn On Green LED
revert_9_1();
digitalWrite(RED_LED,LOW); //Turn off Green LED
}

void YellowLED_Section(void)
{
//No_display();
//Yellow_LED_Blink();
digitalWrite(Yellow_LED,HIGH);
revert_3_1();
digitalWrite(Yellow_LED,LOW);

}

void loop() {
//put your main code here, to run repeatedly:
GreenLED_Section();
YellowLED_Section();
RedLED_Section();

}

2.读入数据

data = pd.read_csv(
    'https://labfile.oss.aliyuncs.com/courses/1283/adult.data.csv')
print(data.head())

该处使用的url网络请求的数据。


总结

提示:这里对文章进行总结:
例如:以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。

好的,以下是设计 Arduino 双向交通灯系统的步骤: 1. 确定所需材料:Arduino UNO 控制板、红绿黄三色 LED 灯各两个、面包板、杜邦线、电阻。 2. 将红绿黄三色 LED 灯插入面包板上,注意将三色 LED 灯的正极和负极分别连接到面包板上的不同列。 3. 将 Arduino UNO 控制板插入面包板上,连接电源和 USB 线。 4. 将杜邦线连接到 Arduino UNO 控制板上的数字引脚(D2、D3、D4、D5、D6、D7),再将另一端插入到面包板上的 LED 灯正极处。 5. 在面包板上将电阻连接到 LED 灯的负极处,再将其连接到 Arduino UNO 控制板的 GND 引脚。 6. 将代码上传到 Arduino UNO 控制板上,代码如下: ``` // 定义红绿黄三色 LED 灯的引脚 int red1 = 2; int yellow1 = 3; int green1 = 4; int red2 = 5; int yellow2 = 6; int green2 = 7; void setup() { // 设置引脚为输出模式 pinMode(red1, OUTPUT); pinMode(yellow1, OUTPUT); pinMode(green1, OUTPUT); pinMode(red2, OUTPUT); pinMode(yellow2, OUTPUT); pinMode(green2, OUTPUT); } void loop() { // 第一个交通灯为绿灯,第二个交通灯为红灯 digitalWrite(green1, HIGH); digitalWrite(yellow1, LOW); digitalWrite(red1, LOW); digitalWrite(green2, LOW); digitalWrite(yellow2, LOW); digitalWrite(red2, HIGH); delay(5000); // 等待5秒钟 // 第一个交通灯为黄灯,第二个交通灯为红灯 digitalWrite(green1, LOW); digitalWrite(yellow1, HIGH); digitalWrite(red1, LOW); digitalWrite(green2, LOW); digitalWrite(yellow2, LOW); digitalWrite(red2, HIGH); delay(2000); // 等待2秒钟 // 第一个交通灯为红灯,第二个交通灯为绿灯 digitalWrite(green1, LOW); digitalWrite(yellow1, LOW); digitalWrite(red1, HIGH); digitalWrite(green2, HIGH); digitalWrite(yellow2, LOW); digitalWrite(red2, LOW); delay(5000); // 等待5秒钟 // 第一个交通灯为红灯,第二个交通灯为黄灯 digitalWrite(green1, LOW); digitalWrite(yellow1, LOW); digitalWrite(red1, HIGH); digitalWrite(green2, LOW); digitalWrite(yellow2, HIGH); digitalWrite(red2, LOW); delay(2000); // 等待2秒钟 } ``` 7. 完成后,将电源插入 Arduino UNO 控制板,交通灯系统即可开始工作。 注意事项:在连接电路时,要确保正确连接电阻和 LED 灯。在上传代码时,要先将 Arduino 控制板与电脑连接,并选择正确的端口和板型。在使用交通灯系统时,要注意安全,避免交通事故的发生。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值