如何使用Arduino Nano控制红绿灯

本文将介绍如何基于一个简单pcb洞洞板制作红绿灯,并通过arduino nano r3对它进行控制。
元器件清单
arduino nano r3
led发光二极管(红、绿、黄)
220欧姆电阻3个
按钮开关
洞洞板
单排母插针
烙铁
电路原理图
arduino nano制作红绿灯连接图
电路连接图,因为软件中没有找到nano的原型图,所以用uno代替了,但是两者间所示的接口都是一样的。三个按钮开关分别连接nano的gnd和10、11、12针;nano的4、5、6针分别通过三个220欧电阻连接led发光二极管的正极,负极接nano的gnd。
红绿灯焊接
基于arduino nano制作红绿灯
arduino nano制作红绿灯
采用洞洞板的目的,是可以将所有的原件焊接在一起,更利于后续的美化。同时使用单排母插针焊接在pcb洞洞板一侧,这样可以方便将arduino nano随时插入和取下来,所有分立元件焊接在另一侧,这样看上去会简洁很多。
控制代码
本项目的代码和电路一样非常简单,易于实现。完整代码如下:
const int led[3] = {4, 5, 6};
const int button[3] = {10, 12, 11};
int state[3] = {0, 0, 0};
int button_on[3] = {0, 0, 0};
long last_time[3] = {0, 0, 0};
long cur_time[3] = {0, 0, 0};
long debounce_delay = 500;
void setup() {
for (int i = 0; i < 3; i++) {
pinmode(led[i], output);
}
for (int i = 0; i < 3; i++) {
pinmode(button[i], input_pullup);
}
}
void loop() {
for (int i = 0; i debounce_delay) {
if (button_on[i]) {
state[i] = 1 - state[i];
last_time[i] = cur_time[i];
}
};
};
}

工信部:重点检查5G基站“1元中标”现象
MOS管简介:PART–0基础知识
物联网智能控制系统,助力传统农业信息化、智能化、无人化
地平线推出全新一代“天工开物”AI开发平台,让 AI 开发门槛“平民化”
香港的5G建设有望在2020年前后进入5G商用时代
如何使用Arduino Nano控制红绿灯
自适应转向大灯系统的简化设计
夏普为什么对三家企业一起提出诉讼
什么是抖动?什么叫抖动
AMD SAM显存智取技术可涨处理器性能16%
云计算中的核心技术都有哪些
动力电池市场竞争态势升级
谢文:3G口号距离实际依然遥远
工业传感器应用有哪些值得称道的成果和创新?
浅谈人工智能三要素,关键是数据优势
怎么才能写出高覆盖率的Verilog代码?
纵维立方发布会定档3月27日!多系列3D打印新品待发布
分析肖特基二管的优势与结构应用
同兴会:新能源是未来几十年间最好的成长性赛道
IO的底层原理介绍