基于单片机的交通信号灯系统设计开题报告_51单片机交通信号灯设计

基于单片机的交通信号灯系统设计开题报告_51单片机交通信号灯设计十字路口车辆穿梭,行人熙攘,车行车道,人行人道,有条不紊。那么靠什么来实现这井然秩序呢?靠的就是交通信号灯的自动指挥系统。设计功能描述:1、采用51单片机作为主控单元;2、采用74HC245芯片驱动数码管;3、采用数码管显示倒计时时间;4、东西和南北方向各有两个数码管,分别显示时间,东西和南北的时间是不一样的,相差黄灯的时间才是正确的;5、可分别设置主干道和支干道通行时间;6、具有紧急模式,特种车辆优先通行或交通事故应急处理。按键说明:K1:黄灯长亮…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

十字路口车辆穿梭,行人熙攘,车行车道,人行人道,有条不紊。那么靠什么来实现这井然秩序呢?靠的就是交通信号灯的自动指挥系统。

基于单片机的交通信号灯系统设计开题报告_51单片机交通信号灯设计

功能描述

1、采用51单片机作为主控单元;

2、采用74HC245芯片驱动数码管;

3、采用数码管显示倒计时时间;

4、东西和南北方向各有两个数码管,分别显示时间,东西和南北的时间是不一样的,相差黄灯的时间才是正确的;

5、可分别设置主干道和支干道通行时间;

6、具有紧急模式,特种车辆优先通行或交通事故应急处理。

按键说明

K1:黄灯长亮(深夜模式);K2:红灯长亮(禁行);

K3:东西通行;K4:南北通行;

K5:确定调时时间;K6:时间加;K7:时间减;

K8:切换调时方向(东西和南北可分别设置);

K9:复位按键;

整体方案

基于单片机的交通信号灯系统设计开题报告_51单片机交通信号灯设计

电路设计

采用Altium Designer作为电路设计工具。Altium Designer通过把原理图设计、PCB绘制编辑、拓扑逻辑自动布线、信号完整性分析和设计输出等技术的完美融合,为设计者提供了全新的设计解决方案,使设计者可以轻松进行设计,熟练使用这一软件必将使电路设计的质量和效率大大提高。

基于单片机的交通信号灯系统设计开题报告_51单片机交通信号灯设计

仿真设计

采用Proteus作为仿真设计工具。Proteus是一款著名的EDA工具(仿真软件),从原理图布图、代码调试到单片机与外围电路协同仿真,一键切换到PCB设计,真正实现了从概念到产品的完整设计

基于单片机的交通信号灯系统设计开题报告_51单片机交通信号灯设计

主程序设计

void main()
{
	TMOD=0X11;	   				//定时器设置
	TH1=0X3C;		
	TL1=0XB0;
	TH0=0X3C;					//定时器0置初值 0.05S
	TL0=0XB0;
	EA=1;						//开总中断
	ET0=1;						//定时器0中断开启
	ET1=1;					   //定时器1中断开启
	TR0=1;						//启动定时0
	TR1=0;						 	//关闭定时1
	EX0=1;						//开外部中断0
	EX1=1;						//开外部中断1
    logo();						//开机初始化
	P2=0Xc3;					// 开始默认状态,东西绿灯,南北黄灯   
    sec_nb=sec_dx+5; 			//默认南北通行时间比东西多5秒
	while(1)					  //主循环
	{	 
		key(); 					//调用按键扫描程序
		display(); 				//调用显示程序
	}	
}

源文件获取

关注公众号【电子开发圈】,首页发送 “交通灯” 获取;

基于单片机的交通信号灯系统设计开题报告_51单片机交通信号灯设计 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/193155.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 爬虫最终杀手锏 — PhantomJS 详解(附案例)

    爬虫最终杀手锏 — PhantomJS 详解(附案例)一.认识Phantomjs1.Phantomjs:无界面的浏览器Selenium: 可以根据我们的指令,让浏览器自动加载页面,获取需要的数据,甚至页面截屏,或者判断网站上某些动作是否

    2022年7月1日
    28
  • linux .vimrc设置 tab设置

    linux .vimrc设置 tab设置一.仅设置当前用户的Tab键宽度输入命令:vim~/.vimrc然后:settabstop=4 //我这里将Tab键的宽度设置为4保存:ctrl+z+z(或:wq!)OK!二.设置所有用户的Tab键宽度输入命令:vim/etc/vimrc在vimrc文件的最后添加:settabstop=4保存:ctrl+z+z(或:wq!)OK!这样不管是哪个用…

    2022年5月3日
    63
  • CreateProcess和WinExec

    CreateProcess和WinExecCreateProcess非阻塞运行,而WinExec为阻塞运行,它非要等到返回时才继续执行。在两个进程共享同一个端口时,为了能让一个退出另一个申请,必须用函数CreateProcess,等到我的端口资源释放后,在运行另一个进程进行申请

    2022年7月11日
    41
  • 创建数组的两种方式

    创建数组的两种方式1.通过构造函数创建数组1.1let变量名称=newArray(size)//创建一个指定大小的数组1.2let变量名称=newArray()//创建一个空的数组1.3let变量名称=newArray(data1,data2,…)//创建一个带数据的数组2.通过字面量创建数组2.1 let变量名称=[]创建一个空数组…

    2022年5月31日
    45
  • 查看idea激活码(最新序列号破解)

    查看idea激活码(最新序列号破解),https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月19日
    104
  • 列文伯格算法_最短路径matlab程序

    列文伯格算法_最短路径matlab程序  本系列文章主要介绍基于A*算法的路径规划的实现,并使用MATLAB进行仿真演示。  一、A*算法简介    A*(A-Star)算法是一种静态路网中求解最短路径最有效的直接搜索方法,也是解决许多搜索问题的有效算法。算法中的距离估算值与实际值越接近,最终搜索速度越快。    公式表示为:f(n)=g(n)+h(n),其中,f(n)是从初始状态经由状态n到目标状态的代价估计,g(n)是在状态空间中从初始状态到状态n的实际代价,h(n)是从状态n到目标状态的最佳路径的估计代价。

    2022年10月7日
    4

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号