0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

红绿灯的制作教程

454398 来源:wv 2019-10-15 10:45 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

步骤1:修复LED

修复红色LED如图所示,将其固定在面包板上,并用黄色LED固定在面包板上,然后将绿色LED固定在面包板上。

步骤2:固定电线和开关。

h2》

取两条线并将其切换并固定到面包板上。如图所示,将两根导线的一根导线固定到面包板的负极,另一根导线固定到面包板的正极。

第3步:将电线固定到ARDUINO

首先用LED的顶部接一根跳线来固定红色。将LED固定到ARDUINO的4号插脚,并用另一根导线将黄色LED固定到ARDUINO的3号插针,将绿色LED固定到ARDUINO的2号插针,将红色LED固定在ARDUINO的7号插针,将绿色的LED固定到ARDUINO的6号插针。 》

将LED的下部红色LED接至ARDUINO接脚号10,将黄色LED接至ARDUINO接脚号9,将绿色LED接至ARDUINO接脚号8,将小的红色LED接至ARDUINO接脚号13,将绿色LED接至ARDUINO接脚号12。

步骤4:固定ARDUINO

用一根导线将面包板正极固定到ARDUINO引脚接地。并用另一根线将ARDUINO 3.3V固定在面包板上,如图所示。

ARDUINO程序。

//交通信号灯

//Ben Hovinga http://ben.hovinga.me

/灯光{GREEN,黄色,红色,PEDGREEN,PEDRED}

诠释灯[2] [5] = {{2,3,4,6,7},{8,9,10,12,13}};

//按钮{light [0],light [1]}

int btn [] = {5,11};

//计时器

int tgreen = 30000;//30s

int tyellow = 3000;//3s

int tred = 3000;//3s

int tpedwarn = 5000;//5s(必须小于tgreen)

int tpedwarnint = 500;//0.5s(必须小于tpedwarn)

//其他Val。不要更改

int btnval = 0;

布尔pedwait [] = {false,false};

布尔pedactive [] = {false,false };

int direct = 0;

int stp = 1;

boolean stpset = false;

unsigned long now = 0 ;

unsigned long changeat = -1;

unsigned long changeatped = -1;

boolean pedredon = true;

//SETUP

void setup(){

//为(int x = 0; x 《2; x ++){

for(int y = 0; y 《5; y ++){

pinMode(light [x] [y],OUTPUT);

}

//开始所有停止的操作(红色)

digitalWrite(light [x] [2],HIGH);

digitalWrite(light [x] [4],HIGH);

}

//为(int x = 0; x 《2; x ++){

pinMode(btn)分配按钮

[x],INPUT);

}

}

//RUN

void loop(){

//更新时间

现在= millis();

//检查是否按下按钮

表示(int x = 0; x 《2; x ++){

btnval = digitalRead(btn [x]);

如果(btnval == HIGH){

pedwait [x] = true ;////我们有人在等待穿越

}

}

////进入

开关(stp){

//绿色

情况1:

//设置

if(stpset == false){

changeat =现在+ tgreen-tpedwarn;//设置计时器

//如果(pedwait [direct] == true){

//打开ped的灯光

digitalWrite(light [direct] [3],HIGH);

digitalWrite(light [direct] [4],LOW);

//设置一些变量/p》

pedwait [direct] =假;

pedactive [direct] =真;

pedredon =假;

}

//打开绿色

digitalWrite(light [direct] [0],HIGH);

//关闭红色

digitalWrite(light [direct] [2],LOW);

stpset = true;//我们已经设置

}

//运行

else {

if(现在》 changeat){//

if(pedactive [direct] == true){

//关闭Ped

digitalWrite(light [direct] [3],LOW);

digitalWrite(light [direct] [4],HIGH);

pedredon = true;

}

//下一步

stp ++;

stpset = false;

}

}

中断;

//警告ped(如果可能)

情况2:

//设置

if(stpset == false){

changeat = now + tpedwarn;

changeatped = now + tpedwarnint;

stpset = true;

}

//运行

else {

//如果(pedactive [direct] == true){

if(pedredon = = true && changeatped 《现在){

digitalWrite(light [direct] [4],LOW);

pedredon = false;

changeatped =现在+ tpedwarnint;

}

if(pedredon == false && changeat 《现在){

digitalWrite(light [direct] [4],HIGH);

pedredon = true;

changeatped = now + tpedwarnint;

}

}

if(now》 changeat){//计时

//关闭

digitalWrite(light [direct] [0],LOW);

digitalWrite(light [direct] [4],HIGH);

pedredon = true;

pedactive [direct] = false;

//下一步

stp ++;

stpset = false;

}

}

中断;

//黄色

情况3:

//设置

if(stpset == false){

changeat = now + tyellow;

digitalWrite(light [direct] [1],HIGH);

stpset = true;

}

//运行

else {

if(现在》 changeat){//计时

//关闭

digitalWrite(light [direct] [1],LOW);

//下一步

stp ++;

stpset = false;

}

}

中断;

//红色

情况4:

//设置

if(stpset == false){

changeat = now + tred;

digitalWrite(light [direct] [2],HIGH);

stpset = true;

}

//运行

else {

如果(现在》 changeat) {//时间增加

//重新开始

stp = 1;

stpset = false;

//如果(direct == 1){

direct = 0;

}

else {

direct = 1;

}

}

}

中断;

}

}

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 红绿灯
    +关注

    关注

    2

    文章

    34

    浏览量

    12246
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    【EASY EAI Nano-TB(RV1126B)开发板试用】桌面系统功能测试-红绿灯按钮项目-Web控制

    )开发板试用】命令行功能测试-红绿灯按钮项目-Python实现简单的Web服务器 桌面系统可以用图形web等等控制系统, 环境准备 EASY EAI Nano-TB(RV1126B)开发板
    发表于 12-14 18:21

    【EASY EAI Nano-TB(RV1126B)开发板试用】命令行功能测试-红绿灯按钮项目性能优化-系统性能、网络配置、安全检及cpu温度采集

    接上文【EASY EAI Nano-TB(RV1126B)开发板试用】命令行功能测试-shell脚本进行IO控制-红绿灯按钮项目 一、实验名称 1、开发板板载资源系统性能、网络配置、安全检 2:温度
    发表于 11-05 13:48

    【EASY EAI Nano-TB(RV1126B)开发板试用】命令行功能测试-shell脚本进行IO控制-红绿灯项目-实现开机起动

    0接上文【EASY EAI Nano-TB(RV1126B)开发板试用】命令行功能测试-shell脚本进行IO控制-红绿灯项目 Linux 起动系统下 init 系统大多数 Linux 发行版
    发表于 11-03 17:25

    【EASY EAI Nano-TB(RV1126B)开发板试用】命令行功能测试-shell脚本进行IO控制-红绿灯按钮项目

    0接上文【EASY EAI Nano-TB(RV1126B)开发板试用】命令行功能测试-shell脚本进行IO控制-红绿灯项目-实现开机起动 EASYEAINano-TB(RV1126B)是一款专为
    发表于 11-03 10:00

    【EASY EAI Nano-TB(RV1126B)开发板试用】命令行功能测试-shell脚本进行IO控制-红绿灯项目

    接上文【EASY EAI Nano-TB(RV1126B)开发板试用】通过wifi连接,使用ssh登录EASY EAI Nano-TB(RV1126B)开发板 红绿灯项目 本项目基于EASY EAI
    发表于 11-02 18:34

    【EASY EAI Nano-TB(RV1126B)开发板试用】命令行功能测试-shell脚本进行IO控制-灯闪

    GPIO引脚连接到* 红绿灯板 :一个简单的外部设备,包含红、绿、黄三个LED灯上,以控制其色彩的变换效果。 红绿灯红绿灯板 3V3 接EASY EAI Nano-TB(RV1126B)开发板
    发表于 11-01 21:26

    海康威视全新推出大模型高阶智控信号机

    红绿灯变“聪明”的关键之一就在于信号机的“自适应控制”,它通过雷达、摄像机等传感器,实时“记录”车流变化,通过交通供需模型,自动调节红绿灯的周期和各个方向的绿灯时长。例如哪个方向路口的车量多,就延长该方向
    的头像 发表于 09-29 17:11 872次阅读

    易华录助力厦门交警打造智慧红绿灯

    交通信号灯是城市交通管理的重要基础设施,是服务于产业发展和市民出行的温度计。厦门市公安局交警支队携手易华录持续提升信号调控技术手段,创新道路交通管理模式,着力推进红绿灯“智控”能力建设应用,为城市缓堵保驾护航。
    的头像 发表于 09-28 09:31 477次阅读

    Momenta MNP记忆领航辅助驾驶系统轻松应对城市复杂路况

    城市通勤是无数司机每天的“必修课”。路口眼花缭乱的红绿灯、随处可见的临时停车、突然闯入视野的行人或车辆,以及夜晚有限的视线和各种意外状况……这些日常驾驶中的琐碎现象,总在不经意间消耗着驾驶者的精力。
    的头像 发表于 07-07 16:33 1107次阅读

    使用PLC实现红绿灯控制示例

    如图为一个红绿灯的控制时序图,启动信号导通后,红绿灯程序开始动作。
    的头像 发表于 05-29 09:45 1243次阅读
    使用PLC实现<b class='flag-5'>红绿灯</b>控制示例

    【ELF 2学习板试用】命令行功能测试-shell脚本进行IO控制-红绿灯项目-实现开机起动

    接上文【ELF 2学习板试用】命令行功能测试-shell脚本进行IO控制-红绿灯项目 Linux 系统下 init 系统 大多数 Linux 发行版的 init 系统是和 System V 相兼容
    发表于 02-11 11:24

    【ELF 2学习板试用】命令行功能测试-shell脚本进行IO控制-红绿灯按钮项目

    接上文[【ELF 2学习板试用】命令行功能测试-shell脚本进行IO控制-红绿灯项目(https://bbs.elecfans.com/jishu_2475305_1_1.html) 红绿灯按钮
    发表于 02-06 15:39

    【ELF 2学习板试用】命令行功能测试-shell脚本进行IO控制-红绿灯项目

    ) 红绿灯项目 硬件 ELF 2学习板 :一款用于嵌入式系统学习的开发板。 红绿灯板 :一个简单的外部设备,包含红、绿、黄三个LED灯。 连接1* ELF 2学习板 红绿灯板 连接2 红绿灯
    发表于 02-06 11:55

    高德地图与长城汽车共建出行联合创新LAB

    近日,高德地图与长城汽车在河北举行出行联合创新LAB揭牌仪式,双方将围绕导航出行领域展开深度合作,共创未来用户智慧出行新体验。与此同时,基于高德地图AutoSDK 810新增盲区会车预警、智慧停车、巡航红绿灯、语音播报智能模式等全新功能,近期也将在长城汽车实现首次量产搭载。
    的头像 发表于 01-07 10:03 813次阅读

    基于CNN和英特尔开发板的红绿灯控制系统设计

    随着中国经济的快速增长和城市化进程的加速,城市交通拥堵、交通事故频发以及环境污染等问题日益严重,尤其是在大城市中,这些问题表现得尤为突出。交通拥堵不仅影响了市民的日常出行效率,更是严重影响了紧急车辆的快速通行,延误了救援时间,增加了事故和伤亡风险。在高峰时段,城市中心区域和主要交通干道常常出现严重拥堵,这不仅降低了城市的运行效率,也对紧急服务的及时响应构成了障碍。面对这些挑战,中国交通管理亟需转型升级,利用现代科技手段提高智能化水平,以实现对交通流量的实时监控、智能分析和优化控制。
    的头像 发表于 12-20 10:47 2497次阅读
    基于CNN和英特尔开发板的<b class='flag-5'>红绿灯</b>控制系统设计