基于51单片机的交通信号灯系统【程序+proteus仿真+参考论文+AD原理图等16个文件夹资料】

news2024/10/5 21:26:08

 一、项目功能简介

 整个设计系统由STC89C52单片机+数码管显示模块+LED指向灯模块+三线八线译码器模块+按键模块组成。

具体功能:

1、东西向、南北向依次进行周期通行,默认设置为:东西向直行(绿灯)时间30秒,左转(绿灯)时间15秒;南北向直行(绿灯)时间30秒,左转(绿灯)时间15秒。

2、每次直行(绿灯)变左转(绿灯)和左转(绿灯)变停车(红灯)前,黄灯需先闪烁3次,此3次时长包含在上述直行和左转时间内。

3、可通过控制台按键实现对十字路口进行交通管制的功能。

4、可通过控制台按键实现对十字路口各方向的通行时间进行设置的功能。

二、系统构成图


三、仿真

本次项目采用proteus8.11软件实现仿真设计。由于proteus软件版本原因,不能确保proteus其他版本软件能够正常运行,请安装好对应软件版本(版本一致或者高于这个版本都可以)

       

四、程序


/* 主函数 */
void main(void)
{
  DataPort0 = 0x40;        //显示"----"

  Delay_ms(100);          //延时大约1s 
  T0_Init();            //定时器初始化
  
  Time_SN = Straigh_Green ;        //赋值SN方向的绿灯时间
  Time_WE = Straigh_Green + Left_Green ;  //赋值WE方向的红灯时间(直行绿灯时间+左转绿灯时间)            
  SN_GREEN = 0;                           //SN方向直行绿灯开启
  SN_GREEN_LEFT = 1 ;                  //SN方向左转绿灯关闭
  SN_YELLOW = 1 ;              //SN方向黄灯关闭
  SN_RED = 1 ;              //SN方向红灯关闭
                      
  WE_GREEN = 1 ;                          //WE方向直行绿灯关闭
  WE_GREEN_LEFT = 1 ;                //WE方向左转绿灯关闭
  WE_YELLOW = 1 ;              //WE方向黄灯关闭
  WE_RED = 0 ;              //WE方向红灯开启
                      
  WE_SW_GREEN = 0 ;            //WE方向人行道绿灯开启
  WE_SW_RED = 1 ;              //WE方向人行道红灯关闭
  SN_SW_GREEN = 1 ;            //SN方向人行道绿灯关闭
  SN_SW_RED = 0 ;              //SN方向人行道红灯开启
                      
  SN_WE_FLAG = 0;              //进入SN方向直行状态
  
  dis_buf[4] = duan_ma[Straigh_Green/10] ;    //放入缓存
  dis_buf[5] = duan_ma[Straigh_Green%10] ;    //放入缓存  
  
  
  while(1)
  {  
    KeyNumber = Key();      //检测哪个按键被按下
    Key_Set();          //按键处理函数
    if(Busy_flag == 0)
    {
      TIME_CountDown();      //数码管处理函数
    }
    
    
    Delay(10);    
  }
}

五、原理图

本原理图利用AD17软件设计。

六、参考论文

总共有7.5k字的论文,都是自己收集资料纯手打的。

论文仅限于参考,内容跟项目对应。

七、全部资料


八、资料获取

关注公众号,后台回复:51交通灯

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1251393.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

案例精选|聚铭网络流量智能分析审计系统加强南京市溧水区人社局信息安全防护能力

一字排开的社保综合服务窗口、实时滚动的数“智”人社大屏、便捷快速的社保卡自助服务机……每位到溧水市民中心人社大厅进行业务办理的市民对高效的社保服务经办效率赞叹不已。 党的二十大报告提出,健全覆盖全民、统筹城乡、公平统一、安全规范、可持续的多层次社…

AI和人工智能与机器学习全景报告

今天分享的是AI系列深度研究报告:《AI和人工智能与机器学习全景报告》。 (报告出品方:appen) 报告共计:30页 获取 数据获取仍是AI应用构建团队的主要瓶颈。 原因各不相同。例如,特定用例的数据可能不足…

【数据结构】树与二叉树(廿三):树和森林的遍历——层次遍历(LevelOrder)

文章目录 5.3.1 树的存储结构5. 左儿子右兄弟链接结构 5.3.2 获取结点的算法5.3.3 树和森林的遍历1. 先根遍历(递归、非递归)2. 后根遍历(递归、非递归)3. 森林的遍历4. 层次遍历a. 算法LevelOrderb. 算法解读c. 时间复杂度d.代码…

试写一算法将两个递增有序的带头结点的单链表合并为一个递增有序的带头结点的单链表。(利用原表结点空间)

试写一算法将两个递增有序的带头结点的单链表合并为一个递增有序的带头结点的单链表。 (利用原表结点空间) 比如现在要将下面两个链表合并,这里是要求利用原表空间 我们先创建一个辅助的链表L3,用p和q分别标记L1和L2的数据元素&…

macOS unlocker 4.0.5 for VMware ESXi 7.0

正文共:555 字 6 图,预估阅读时间:1 分钟 我们前面在macOS上已经折腾了好久了,包括黑苹果的安装(老树发新芽,ACER TM4750G装黑苹果)、macOS的安装(VMware ESXI部署macOS&#xff08…

【React】打包体积分析 source-map-explorer

通过分析打包体积,才能知道项目中的哪部分内容体积过大,方便知道哪些包需要进一步优化。 使用步骤 安装分析打包体积的包:npm i source-map-explorer在 package.json 中的 scripts 标签中,添加分析打包体积的命令对项目打包&…

人工智能面面观

人工智能简介 人工智能(Artificial Intelligence,简称AI)是一门研究如何使计算机能够模拟和执行人类智能任务的科学和技术领域。它致力于开发能够感知、理解、学习、推理、决策和与人类进行交互的智能系统。人工智能的背景可以追溯到上世纪50…

2023最全的Web自动化测试介绍

做测试的同学们都了解,做Web自动化,我们主要用Selenium或者是QTP。 有的人可能就会说,我没这个Java基础,没有Selenium基础,能行吗?测试虽然属于计算机行业,但其实并不需要太深入的编程知识&…

Mindomo Desktop for Mac免费思维导图软件,助您高效整理思维

思维导图是一种强大的工具,可以帮助我们整理思维、提高记忆力、激发创造力。而Mindomo Desktop for Mac作为一款免费的思维导图软件,能够帮助我们更高效地进行思维整理和项目管理。在本文中,我们将介绍Mindomo Desktop for Mac的功能和优势&a…

数据结构与算法编程题24

中序遍历非递归算法 #define _CRT_SECURE_NO_WARNINGS#include <iostream> using namespace std;typedef char ElemType; #define ERROR 0 #define OK 1 #define Maxsize 100 #define STR_SIZE 1024typedef struct BiTNode {ElemType data;BiTNode* lchild, * rchild; }B…

pop链反序列化 [MRCTF2020]Ezpop1

打开题目 网站源码为 Welcome to index.php <?php //flag is in flag.php //WTF IS THIS? //Learn From https://ctf.ieki.xyz/library/php.html#%E5%8F%8D%E5%BA%8F%E5%88%97%E5%8C%96%E9%AD%94%E6%9C%AF%E6%96%B9%E6%B3%95 //And Crack It! class Modifier {protected …

IDEA中JDK21控制台打印的中文乱码

IDEA中&#xff0c;使用的JDK21&#xff0c;控制台打印中文乱码&#xff0c;解决办法是重装了一下JDK。 我之前安装的版本是“jdk-21_windows-x64_bin.exe”&#xff0c;我配置了多个JDK环境&#xff0c;所以使用的是安装文件进行安装的。这次解决乱码问题&#xff0c;我重新安…

如何获得微软MVP徽章

要成为微软MVP&#xff0c;需要在特定领域成为专家&#xff0c;并积极参与社区&#xff0c;为其他人提供帮助和支持。以下是一些步骤可以帮助你成为MVP&#xff1a; 在特定领域成为专家&#xff1a;要成为MVP&#xff0c;需要在某个领域具有专业知识和经验。这可以通过阅读相关…

多线程详解(未完结)

文章目录 ⭐️写在前面的话⭐️一、线程简介1.1 进程1.2 线程1.3 多线程和多进程的区别1.4 总结 二、继承实现2.1 继承Thread类例子&#xff1a;网图下载 2.2 实现Runnable接口 (推荐)案例&#xff1a;火车站买票问题案例&#xff1a;龟兔赛跑 2.3 实现Callable接口 (了解即可)…

ArkTs变量类型、数据类型

可以参考官网学习路径学习HarmonyOS第一课|应用开发视频教程学习|HarmonyOS应用开发官网 一、变量 1、ArkTS语言 ArkTS是华为自研的开发语言。它在TypeScript&#xff08;简称TS&#xff09;的基础上&#xff0c;匹配ArkUI框架&#xff0c;扩展了声明式UI、状态管理等相应的…

【数据分享】我国12.5米分辨率的坡度数据(免费获取)

地形数据&#xff0c;也叫DEM数据&#xff0c;是我们在各项研究中最常使用的数据之一。之前我们分享过源于NASA地球科学数据网站发布的12.5米分辨率DEM地形数据&#xff08;可查看之前的文章获悉详情&#xff09;&#xff0c;这个DEM数据的优点是精度高。 基于DEM地形数据&…

根据商品ID获取淘宝数据接口|淘宝商品详情接口|淘宝关键词搜索商品列表接口|淘宝到手价接口|淘宝API接口

淘宝API接口可以运用到多种业务场景中&#xff0c;以下列举了一些主要的场景&#xff1a; 商品信息展示&#xff1a;通过调用淘宝API详情接口&#xff0c;可以获取商品的详细信息&#xff0c;如商品标题、价格、库存、销量、评价等数据。这些信息可以用于在自己的网站或应用程…

cocos游戏引擎制作的滚动框地图防止误点操作的简单方法

本篇文章主要讲解&#xff0c;使用cocos creator 来解决在我们日常滚动框开发中&#xff0c;滚动和触摸存在冲突的情况&#xff0c;导致的误触行为的解决办法。 日期&#xff1a;2023年11月25日 具体事项 说明&#xff1a;在我们滚动滚动框时&#xff0c;会出现误点的情况&…

PPT 遇到问题总结(修改页码统计)

PPT常见问题 1. 修改页码自动计数 1. 修改页码自动计数 点击 视图——>幻灯片母版——>下翻找到计数页直接修改——>关闭母版视图