单片机 项目报告1交通灯

合集下载

单片机交通灯设计报告[1]

单片机交通灯设计报告[1]

单片机控制的交通灯控制系统设计所在学院:电气工程与自动化学院目1摘要2 系统总体方案及硬件设计 (1)设计要求 (1)设计任务 (1)总体设计 (1) (1)3 软件设计 (6)总体流程图 (7)子程序流程图 (8)循环控制思路 (8)4 Proteus软件仿真 (9) (9) (9)南北强制通行仿真 (10)东西强制通行仿真 (10)5 课程设计体会 (11)6 参考文献 (12)7 附录 (13) (19)摘要本设计是单片机控制的交通灯控制系统设计随着社会经济的发展,城市交通问题越来越引起人们的关注。

人、车、路三者关系的协调,已成为交通管理部门需要解决的重要问题之一。

城市交通控制系统是用于城市交通数据监测、交通信号灯控制与交通疏导的电脑综合管理系统,它是现代城市交通监控指挥系统中最重要的组成部分。

所以,如何采用合适的控制方法,最大限度利用好消耗巨资修建的城市高速道路,缓解主干道与匝道、城区同周边地区的交通拥堵状况,越来越成为交通运输管理和城市规划部门亟待解决的主要问题。

当前,国内大多数城市正在采用“自动”红绿交通灯,它具有固定的“红灯—绿灯”转换间隔,并自动切换。

它们一般由“通行与禁止时间控制显示、红黄绿三色信号灯和方向指示灯”三部分组成。

现在我们利用“自动控制”控制交通灯的方法。

将事先编制好的程序输入单片机,利用单片机的定时、查询、中断功能;能够根据十字路口两个方向上车辆动态状况,采用查询的方式,根据具体情况,自动给予时间通行,其中利用中断方式来处理特殊情况。

这样既方便驾驶员、路人,同时还可以紧急处理一些紧急实况。

同样具有红、黄、绿灯的显示功能,为驾驶员、路人“照明”。

2系统总体方案及硬件设计设计要求:1〕南北方向〔主干道〕车道和东西方向〔支干道〕车道两条交叉道路上的车辆交替运行,主干道每次通行时间都设为30秒、支干道每次通行间为20秒;2〕在绿灯转为红灯时,要求黄灯先亮5秒钟,才能变换运行车道;3〕黄灯亮时,要求每秒闪亮一次。

基于51单片机设计的交通灯报告书

基于51单片机设计的交通灯报告书

报告书干路—支路口交通信号灯控制器项目目的:通过对模拟交通灯控制系统的操作,让我们掌握定时器和中断系统的综合应用,进一步熟练51单片机的应用.项目要求:本项目主要通过感应开关控制交通灯的切换显示,实现主干路与支路车辆的分流。

(1)在正常情况下,主干道交通灯绿灯一直亮着。

(2)当支路检测到有车辆,60秒后,主干道禁止通行,支路放行。

(3)支路放行30 秒后,恢复正常情况。

项目电路如图:按键S1、S2模拟支路的车辆检测,当S1、S2为高电平(不按下按键)时,表示正常情况。

当S1或S2为低电平(按下按键)时,表示支路上有车辆,将S1、S2接到P3.0、P3.1把信号送入到单片机。

程序设计:源程序代码:#include<reg51.h>#define uchar unsigned char#define uint unsigned intuchar time,second,n,m;sbit k1=P3^0;sbit k2=P3^1;Uchar code Tab[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x 80,0x90};//数码管显示0~9的段码表void delay(uint t){uchar i;while(t--)for(i=0;i<255;i++);}void shumaguan(uchar s){P2=0xfd;P0=Tab[s/10];delay(1);P2=0xfe;P0=Tab[s%10];delay(1);}void main(){IE=0x82;TMOD=0x01;TH0=(65536-50000)/16;TL0=(65536-50000)%16;while(1){ uchar j;P1=0xde;if(k1==0||k2==0){delay(500);if(k1==0||k2==0){time=40;TR0=1;for(second=60;second>0;)shumaguan(second);TR0=0;P2=0x00;P1=0xf3;delay(3000);for(j=0;j<2;j++){P1=0xfb;delay(200);P1=0xf3;delay(200);}P1=0xeb;delay(500);}}}}void ld() interrupt 1{TR0=0;time--;if(time==0){time=40;second--;if(second==5)P1=0xdf;if(second==4)P1=0xde;if(second==3)P1=0xdf;if(second==2)P1=0xdd;if(second==1)P1=0xdd;}TH0=(65536-50000)/16;TL0=(65536-50000)%16;TR0=1;}项目小结:本项目程序主要包括四部分:主函数、延时函数、数码管显示函数、中断函数。

单片机交通灯研究分析报告

单片机交通灯研究分析报告

1设计任务和性能指标11.1设计任务1 b5E2RGbCAP1.2性能指标1p1EanqFDPw2设计方案22.1任务分析22.2方案设计23系统硬件设计33.1单片机地最小系统33.2电源电路33.3数码管显示时间电路设计4DXDiTa9E3d 3.4信号灯控制电路设计44系统软件设计54.1主程序设计55调试及性能分析65.1调试分析65.1.1软件调试65.1.2硬件调试65.1.3系统功能调试66心得体会6参考文献8附录1系统原理图9附录2系统仿真图10附录3程序清单11摘要:交通信号灯在当今社会生活中起着非常重要地作用,随着时代地发展,单片机地应用正在不断深入•本系统采用MSC-51系列单片机ATSC51为中心器件来设计交通灯控制器实现了在紧急情况下可自动将绿灯变为红灯来使紧急车辆通过地功能•本系统实用性强、操作简单、扩展功能强设计任务和性能指标RTCrpUDGiT关键词:单片机交通灯控制紧急情况5PCzVD7HxA1设计任务和性能指标利用单片机完成交通信号灯控制器地设计,该交通信号灯控制器由一条主干道和一条支干道汇合成十字路口,在每个入口处设置红、绿、黄三色信号灯,红灯亮禁止通行,绿灯亮允许通行,黄灯亮则给行驶中地车辆有时间停在禁行线外•用红、绿、黄发光二极管作信号灯•如图上图所示•设东西向为主干道,南北为支干道.jLBHrnAlLg1.2性能指标(1)处于常允许通行地状态,支干道有车来时才允许通行.主干道亮绿灯时,支干道亮红灯;支干道亮绿灯时,主干道亮红灯.XHAQX74J0X(2)干道均有车时,两者交替允许通行,主干道每次放行60秒,支干道每次放行40秒,设立60秒、40秒计时、显示电路.LDAYtRyKfE(3)绿灯亮到红灯亮地转换过程中,要亮5秒黄灯作为过渡.黄灯亮时,原红灯按1Hz地频率闪烁.(4)支干道通行时间及黄灯亮地时间均可在0〜99秒内任意设置.2设计方案2.1任务分析模拟交通灯控制器就是使用单片机来控制一些LED和数码管,模拟真实交通灯地功能.红、黄、绿交替闪亮,利用数码管倒计数显示间隔等,用于管理十字路口地车辆及行人交通,计时牌显示路口通行转换剩余时间等Zzz6ZB2Ltk2.2方案设计根据设计地要求可知,系统地硬件原理框图如下图所示.系统硬件框图单片机可选用AT89C51它与8051系列单片机全兼容,但其内部带有4KB 地FLASH RO M设计时无需外接程序存储器,为设计和调试带来极大地方便.南北向和东西向各采用2个数码管计时,同时需要对该方向地指示灯地点亮时间进行倒计时.键盘系统可以根据系统地需要设置不同地键地个数,可以选择线式键盘或矩阵式键盘,若单片机地IO 口不够用时,可以考虑扩展8255或8155满足系统地要求.dvzfvkwMI13系统硬件设计3.1单片机地最小系统ATME公司生产地AT89C52单片机它是硬件电路地核心部分,时钟电路晶振使用12MHz复位电路采取按键复位方式.具体连接图3.1和图32 rqyn14ZNXIC111Cap1 SOpF I1 ---- Y14C212MGT N ED IIIIC?ap3OpF单片机系统地时钟电路单片机系统地复位电路3.2电源电路设计电源用5V直流变压器直接供电VCCVCCGNDGNDVCC3.3数码管显示电路显示电路采用8个共阴数码管,P1 口作为数码管地输入,P3.4、P3.5、P3.6 P3.7 分别作为东西南北四路数码管地位选端.EmxvxOtOco数码管显示电路3.4信号灯控制电路S4__________________________________________1GJSTD:LR4►Res Semi| IKVCC应急电路4系统软件设计4.1主程序设计系统程序流程图5调试及性能分析5.1 调试分析5.1.1软件调试软件调试主要是利用proteus仿真软件完成电路地搭建,运行以发现设计中地错误及时改正.5.1.2硬件调试试结果如下:(1)检查电源与地线是否全部连接上,用万用表对照电路原理图测试各导线是否完全连接,对未连接地进行修复.SixE2yXPq5(2)参硬件调试主要是检测硬件电路是否有短路、断路、虚焊等.具体步骤及测照原理图,检查各个器件之间地连接是否连接正确,是否存在虚焊,经测试, 各连接不存在问题.6ewMyirQFL(3)以上两项检查并修复完后,给该硬件电路上电,电源指示灯点亮.5.1.3系统功能调试通过软件仿真显示,系统基本能完成要求,由于设计思路出现问题,键盘没有正确地做出来,没有键盘电路,紧急情况也可以通过一个按钮来采取相关地动作.kavU42VRUs6心得体会这次单片机课程设计历时一个学期地时间,在这次设计过程里我们体验了从设计、画板、编程、焊板到调试地整个过程.y6v3ALoS89对于交通灯这个题目,由于以前学单片机这个课程时,做过类似相关地实验,觉得这个比较简单而且做出地东西也比较直观,在确定题目之后,查阅了大量地资料,初步完成了电路设计方案.M2ub6vSTnP接着就是用AD6这个软件来画电路板,这个软件地应用上学期也学过了,但是学地时候感觉很简单,但是到了具体设计地时候,问题不断地出来,比如有地器件库里面没有封装,要自己花封装,这时候就很容易出问题,比如焊盘地大小,有地器件上焊盘大小不一样,有个别大地是用来固定地,这个很容易被忽略.OYujCfmUCw 下来就是程序地设计了,虽然感觉交通灯程序没什么难地,就是数码管倒计时显示加几个闪烁地二极管就完事,但是也许是起初想地太简单,设计时到了细节处,也出了不少问题,而且很难被检查出来,但是最后经过我们地不断努力,还是写出来正确地代码.eUts8ZQVRd上周学校终于把板子给做回来了,怀着紧张地心情一个器件一个器件地完成板子地焊接,最后通过串口线把程序下载到板子上,但是板子却没有意料中地效果,而且没一点现象,用万用表检查单片机地电压差不多为零,查出了问题所在松了口气,后来在网上查资料知道原来变压器地接口那三个引脚,两个GN%须短接,要不就不能正常供电,本以为短接后就正常了,但是数码管还是没反应,二极管基本可以正常显示,这时候真是一种煎熬,差了很久找不到原因,后来对照着原理图一个个地检查,最后发现原来是数码管封装错了,板子上地数码管公共极是3、8两个引脚,但是原理图上封装地事1、6,当时也没有注意,以为只要是共阴管就没问题了,没想到软件本身就存在错误.sQsAEJkW5T通过这次课设,对以前学过地知识进行了巩固,加深了理解,提高了应用地能力,而且提高了我们地发现、分析、解决问题地能力.经历了从最初地设计到最后做出产品地开发过程,提高了对专业地认识及兴趣,对于我们工科来说,对以后就业有及其重大地影响.GMsIasNXkA参考文献[1]徐维祥.单片微型机原理及应用大连理工大学出版社,2006.12[2]胡汉才.单片机原理与接口技术[2].北京:清华大学大学出版社,2004.1-505.[3]闫胜利.Altium Designer 6. X中文版使用教程电子工业出版社2007.6附录1系统原理图Ih■Ui 3 ■Ifh Jk Id1&H1f 0 啤g-11II 如E ■II诵">|.^1llf fi-TIKB|1牀HBLn s ^負■&戏hl r-laIs-::3J JiE丄4:-B I•f c p fe H s nXTA1LH Mt k -BA1XM-dB AM i Y A ^EXl-Jt kg LI A m 2国 0> AS畀LAt注p El a s ;r= B k is u uh111ilk ffl;”平I M ki* 1羸Jfa2■J -i>iJi-L R IJ C BIIB 二附录2系统仿真图附录3程序清单;程序实现功能;西南北路口直行与转弯交替通行,数码管显示直行通行倒计时,红绿黄灯显示包括人行道在内地道路交通状态.;某一方向道路拥挤时,可以人工控制调节东西南北方向通行时间;紧急情况时,各路口交通灯显示红灯,数码管保持数据不变;工作寄存器及存储单元分配;i.工作寄存器;R2设置为定时器定时中断次数,R6、R7用于延时程序中地寄存器;2.片内存储单元;30H、31H作为两组数码管显示数据存储单元;32H、33H作为交通灯初始状态存储单元41H作为交通灯显示数据存储单元TlrRGchYzg;3.标志位;00H :南北通行标志位;01H :东西通行标志位;02H :紧急事件标志位SNF EQU 00HEWF EQU 01HURF EQU 02HORG 0000HLJMP MAINORG 000BHLJMP DSZDORG 0003HLJMP URZDORG 0030HMAIN: LCALL INITLOOP: LCALL DISAJMP LOOP;///////////初始化程序INIT: SETB SNFSETB EWFSETB URFMOV R2,#20MOV TMOD,#01HMOV TL0,#0B0HMOV TH0,#3CH SETB EA;40H、;;;南北通行标志位;;;东西通行标志位;;;紧急事件标志位;;;上电转主程序;;;定时中断入口;;;紧急中断入口;;;调用初始化子程序;;;循环执行显示子程序;;;定时器中断20次为1s ;;;初始化定时器;;;开定时中断与紧急中断SETB ET0 SETB TR0 SETB EX0SETB IT0;;;设置中断程控方式 MOV DPTR,#TAB;;;数值首地址放入 DPTR 中 MOV 40H,#40;;;东南西北通行时间设置 MOV 41H,#40MOV 30H,#40;;;通行时间初始化 MOV 31H,#60MOV P0,#4CH;;;初始化时南北通行并把交通灯状态分别放在 中 7EqZcWLZNXMOV 32H,#4CHMOV P2,#15HMOV 33H,#15HRET 32H 和 33H;////////////显示子程序 MOV P3,#0DFHMOV A,30HMOV B,#10DIV ABMOVC A,@A+DPTRMOV P1,ALCALL D1MSDIS: ;;;选中南北方向地十位数码管 ;;;把显示数据送人数码管显示 MOV P3,#0EFHMOV A,BMOVC A,@A+DPTRMOV P1,ALCALL D1MS;;;选中南北方向地个位数码管 ;;;送入数码管显示 MOV P3,#7FHMOV A,31HMOV B,#10DIV ABMOVC A,@A+DPTRMOV P1,ALCALL D1MSMOV P3,#0BFHMOV A,BMOVC A,@A+DPTRMOV P1,ALCALL D1MSSETB P3.0SETB P3.1JNB P3.0,DIS_S ;;;查询是否第一个按键按下 ;;;选中第东西方向地十位数码管 ;;;送入数码管显示 ;;;选中第东西方向地个位数码管JNB AJMP P3.1,DIS_EDIS_R;;;查询是否第二个按键按下;;;没有键按下则返回DIS_ _S:LCALL D5MS ;;;按键去抖JNB P3.0,DIS_SNAJMP DIS_RDIS_ SN:MOV 40H,#50;;;对通行时间从新分配,南北通行时间加长MOV 41H,#30AJMP DIS_RDIS_ _E:LCALL D5MS ;;;按键去抖JNB P3.1,DIS_EWAJMP DIS_RDIS_ EW:MOV 40H,#30 ;;;东西通行时间加长MOV 41H,#50DIS_R:RET;///////定时中断处理程序DS_C: LJMP DS_R ;;;接力跳转DSZD: PUSH ACC ;;;保护现场PUSH PSWCLR TR0 ;;;关疋时器及中断标志位并重新CLR TF0MOV TL0,#0B0HMOV TH0,#3CHDJNZ R2,DS_C ;;;判断1m时间是否到达MOV R2,#20 ;;;到达重新赋值DEC 30H ;;;南北方向通行时间减一MOV A,30H ;;;把减一后地时间送入显示存储单元;;;;;;;南北通行到达最后4秒时黄灯闪烁DS_10:CJNE A,#4,DS_11 ;;;如果通行时间剩余4秒JNB SNF,DS_11 ;;;判断是否是南北通行MOV P0,#8AHMOV 32H, #8AH ;;;把交通灯状态存入存储单兀(后面类似)DS_11:CJNE A,#3,DS_12 ;;;不是剩余3秒,返回JNB SNF,DS_12 ;;;不是南北通行时间,返回MOV P0,#88HMOV 32H, #88HDS_12:CJNE A,#2,DS_13JNB SNF,DS_13MOV P0,#8AHMOV 32H, #8AHDS_13:CJNE A,#1,DS_14JNB SNF,DS_14MOV P0,#88HMOV 32H, #88HDS_14:JNZ DS_NECPL SNFJNB SNF,DS_1MOV 30H,40HMOV P0,#4CHMOV 32H,#4CHMOV P2,#15HMOV 33H, #15H DS_NE:DEC 31HMOV A,31H;;;;;;;;东四万向通行时间DS_20:CJNE A,#4,DS_21JB EWF,DS_21MOV P0,#51HMOV 32H, #51H DS_21:CJNE A,#3,DS_22JB EWF,DS_22MOV P0,#41HMOV 32H, #41HDS_22:CJNE A,#2,DS_23JB EWF,DS_23MOV P0,#51HMOV 32H, #51H DS_23:CJNE A,#1,DS_24JB EWF,DS_24MOV P0,#41HMOV 32H, #41HDS_24:JNZ DS_RCPL EWFJNB EWF,DS_2MOV 31H,#80MOV P0,#89HMOV 32H, #89HMOV P2,#29HMOV 33H,#29HAJMP DS_RDS_1: MOV 30H,#80 lzq7IGfO2EMOV P0,#89HMOV 32H, #89HMOV P2,#26HMOV 33H, #26HDS NEAJMP;;;通行时间没有结束转向改变东西方向地数码管;;;如果通行时间结束则对标志位取反;;;判断是否南北通行;;;是,点亮相应地交通灯;;;存储交通灯状态;;;存储交通灯状态;;;东西方向通行时间减一;;;把通行剩余时间送入显示存储单元4秒钟黄灯闪烁(程序注释与南北方向类似略);;;东西方向时间没有结束,返回;;;对通行状态取反;;;东西方向通行时间到来,跳转;;;东西方向通行结束,重新显示时间;;;点亮相应地交通灯;;;南北通行时间结束,重新对显示存储单元赋值;;;执行转弯状态1;/////////////紧急中断处理程序URZD: PUSH ACCPUSH PSWCLR IE0CLR TR0CPL URFJB URF,UR_CONMOV P0,#49HMOV P2,#15HAJMP UR_RUR_CON:SETB TR0MOV A,32HMOV P0,AMOV A,33HMOV P2,AUR_R: POP PSWPOP ACC;;;保护现场 ;;;清除中断标志位 ;;;关定时器 ;;;紧急事件标志位 ;;;紧急结束;跳转 ;;;各路口灯全显示红灯亮 ;;;恢复正常交通 ;;;恢复现场RETI;//////////// 查表指令TAB: DB 3FH, DB 7DH, 07H, 7FH, 6FH;////////// 延时 5ms 与 1msD5MS: MOV R7,#5DIMS: MOV R7,#10MOV R6,#50L1: DJNZ R6,$DJNZ R7,L1RETEND DS_2: MOV 31H,41HMOV P0,#61HMOV 32H, #61HMOV P2,#15HMOV 33H, #15HDS_R: SETB TR0POP PSWPOP ACCRETI;;;东西方向开始通行,赋值予显示存储单元 ;;;点亮相应地交通灯 ;;;恢复现场 06H, 5BH, 4FH, 66H, 6DH版权申明本文部分内容,包括文字、图片、以及设计等在网上搜集整理个人收集整?…仅供参考学习_版权为个人所有This article in eludes someparts, in cludi ng text, pictures, and desig n. Copyright is pers onal own ership. zvpgeqJIhk 用户可将本文地内容或服务用于个人学习、研究或欣赏,以及其他非商业性或非盈利性用途,但同时应遵守著作权法及其他相关法律地规定,不得侵犯本网站及相关权利人地合法权利.除此以外,将本文任何内容或服务用于其他用途时,须征得本人及相关权利人地书面许可,并支付报酬.NrpoJac3v1Users may use the contents or services of this articlefor pers onal study, research or appreciati on, and other non-commercial or non-profit purposes, but at the same time, they shall abide by the provisi ons of copyright law and other releva nt laws, and shall n ot infringe upon the legitimate rights of this website and its releva nt obligees. In additi on, when any content or service of this article is used for other purposes, writte n permissi on and remun erati on shall be obta ined from the pers on concerned and the releva nt obligee. 1nowfTG4KI转载或引用本文内容必须是以新闻性或资料性公共免费信息为使用目地地合理、善意引用,不得对本文内容原意进行曲解、修改,并自负版权等法律责任.fjnFLDa5ZoReproducti on or quotatio n of the content of this articlemust be reas on able and good-faith citati on for the use of n ews or in formative public free in formatio n. It shall notmisinterpret or modify the original intention of the contentof this article, and shall bear legal liability such ascopyright. tfnNhnE6e5。

交通灯实验报告——单片机

交通灯实验报告——单片机

二、用51单片机设计交通灯、彩灯控制器一、可实现功能:1)通过51单片机,在面包板上模拟交通红绿灯。

分为主干道和支干道,每条道上安装红、绿、黄三种颜色的灯,并用两位八段数码管显示主干道三种灯亮的时间,由程序控制自动循环,红灯40秒,绿灯35秒,黄灯5秒;2)用单片机的外部中断0的产生来控制六路彩灯,此处只设计了四种花型。

二、电路原理图:三、源程序如下:#include "reg51.h"#include <intrins.h>void display(unsigned int digital);void delay(unsigned int time);void colour();unsigned shu[10]={0xfc,0x60,0xda,0xf2,0x66,0xb6,0xbe,0xe0,0xfe,0xf6}; Unsignedled[41]={0xdf,0xef,0xf7,0xfb,0xfd,0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xff,0xdf,0xcf,0xc7,0xc3,0xc1,0xc0,0xc1,0xc3,0xc7,0xcf,0xdf,0xff, 0xf3,0xe1,0xc0,0xe1,0xf3,0xff,0xde,0xcc,0xc0,0xcc,0xdf,0xff, 0xdb,0xed,0xf6,0xed,0xdb,0xff,0xc0,0xff,0xc0,0xff,0xc0,0xff};sbit a=P2^6;sbit b=P2^7;sbit G=P2^0;sbit Y=P2^1;sbit R=P2^2;sbit g=P2^3;sbit y=P2^4;sbit r=P2^5;int flag=0;//全局变量,当它为1时显示彩灯,当它为0时,显示交通灯#define state_1 G=0;Y=1;R=1;g=1;y=1;r=0//主干道绿,支干道红#define state_2 G=1;Y=0;R=1;g=1;y=1;r=0//主干道黄,支干道红#define state_3 G=1;Y=1;R=0;g=0;y=1;r=1//主干道红,支干道绿#define state_4 G=1;Y=1;R=0;g=1;y=0;r=1//主干道红,支干道红void main(void){unsigned int i;EA=1; //首先开启总中断EX0=1; //开启外部中断 0IT0=1; //设置触发方式为下降沿触发while(1){while(flag==0){state_1;for(i=35;i>0;i--)delay(1);state_2;for(i=5;i>0;i--){delay(i);y1=~y1;}state_3;for(i=20;i>0;i--)delay(i);state_4;for(i=5;i>0;i--){delay(i);y2=~y2;}}while(flag==1) colour();}}//显示子程序,实现用两位数码管显示灯亮的时间void display(unsigned int digital){ unsigned int k;unsigned int ge=digital%10,shi=digital/10;//将十位与个位分离for(k=0;k<30000;k++){ a=1;b=0;P0=shu[ge];P0=0;a=0;b=1;P0=shu[shi];P0=0;}}//实现彩灯控制void colour(){ P1=0xff;P3=0x00;P2=0xff;while(1){ unsigned int j;for(j=0;j<41;j++)//循环程序演示四种花型{ P2=led[j];delay(1);} delay(5);}}//中断函数void key_scan() interrupt 0 //关键字"interrupt" ,这是C语言的中断函数表示法,,单片机有6个中断口,外部中断0的优先级最高,在程序里我们只用外部中断0 {flag++;if(flag==2) flag=0;}//延时程序void delay(unsigned int time) //参数time大小决定延时时间长短{ unsigned int j,k;time=time*5;for(j=0;j<time;j++)for(k=0;k<10000;k++);}四、源程序分析1、在电路设计时我用了共阴极八段数码管来显示时间:unsigned shu[10]={0xfc,0x60,0xda,0xf2,0x66,0xb6,0xbe,0xe0,0xfe,0xf6};数组中十个数分别表示0到9十个数;2、在设计彩灯时,我直接利用交通灯的主干道和支干道的六个灯设计彩灯:unsignedled[48]={0xdf,0xef,0xf7,0xfb,0xfd,0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xff,0xdf,0xcf,0xc7,0xc3,0xc1,0xc0,0xc1,0xc3,0xc7,0xcf,0xdf,0xff,0xf3,0xe1,0xc0,0xe1,0xf3,0xff,0xde,0xcc,0xc0,0xcc,0xdf,0xff,0xdb,0xed,0xf6,0xed,0xdb,0xff,0xc0,0xff,0xc0,0xff,0xc0,0xff};数组中的48个数共演示了四种花型3、void display(unsigned int digital){ unsigned int k;unsigned int ge=digital%10,shi=digital/10;//将十位与个位分离for(k=0;k<30000;k++){ a=1;b=0;P0=shu[ge];P0=0;a=0;b=1;P0=shu[shi];P0=0;}}显示子程序中将时间的十位与个位分离,用a、b来选择数码管将个位与十位分时输出。

51单片机交通灯设计报告

51单片机交通灯设计报告

51单⽚机交通灯设计报告课程设计说明书课程名称:《单⽚机技术》设计题⽬:交通灯设计学院:电⼦信息与电⽓⼯程学院学⽣姓名:学号:专业班级:指导教师:课程设计任务书交通灯设计摘要:近年来随着科技的发展,单⽚机的应⽤正在不断深⼊,同时带动传统控制检测技术⽇益更新。

在实时检测和⾃动控制的单⽚机应⽤系统中,单⽚机往往作为⼀个核⼼部件来使⽤,仅单⽚机⽅⾯的知识是不够的,还应该根据具体硬件结构软硬结合,加以完善。

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

交通信号灯控制⽅式很多。

本系统采⽤51系列单⽚机ATMEL89C51为核⼼控制器件来设计交通信号灯控制器,实现亮绿灯通⾏,亮黄灯闪烁并发声警⽰,亮红灯禁⽌通⾏的功能,并显⽰通⾏或禁⽌通⾏倒计时,紧急按键信号灯加时和紧急按键南北、东西红绿灯跳变。

本系统使⽤性强,操作简单,容易实现,扩展功能强,可⾃⾏修改程序扩展⾃⼰想要实现的功能。

关键词:交通灯,单⽚机,复位电路⽬录1. 设计背景 (1)1.1设计原因 (1)1.2个⼈意义 (1)2.设计⽅案 (1)2.1总体⽅案提出 (1)2.2稳压电源⽅案设计与分析 (1)2.3复位电路⽅案设计与分析 (2)3. ⽅案实施 (2)3.1总体设计框图 (2)3.2硬件设计 (3)3.3软件设计 (6)3.4电路仿真 (10)3.5制板⼦与安装过程 (11)3.6软硬件调试 (11)4. 结果与结论 (12)5 收获与致谢 (12)6. 参考⽂献 (12)7. 附件 (13)7.1硬件电路图 (13)7.2元器件清单 (14)7.3作品实物图 (15)7.4源程序: (16)1. 设计背景1.1设计原因随着社会的进步,交通的⾼速发展,红绿灯已经成为了我们⽣活中不可或缺的⼀部分,如今,红绿灯已经安装在各个道路的交接⼝处,已经成为疏导交通车辆最常见和最有效的⼿段。

单片机交通灯实验报告(二)2024

单片机交通灯实验报告(二)2024

单片机交通灯实验报告(二)引言概述本报告旨在介绍单片机交通灯实验的进一步研究。

通过对单片机交通灯实验的深入探讨,我们将了解交通信号灯电路的设计原理、控制逻辑以及实际应用的相关知识。

本文将分为五个大点进行阐述,包括:电路设计、控制逻辑编程、硬件连接、功能扩展和实验结果分析。

正文一、电路设计1. 确定交通信号灯的基本电路结构2. 选择适当的电子元件并进行电路布局3. 绘制电路原理图和PCB布局图4. 按照电路设计进行焊接和组装二、控制逻辑编程1. 理解交通信号灯的控制逻辑2. 学习并掌握单片机编程语言3. 根据控制逻辑编写程序代码4. 调试程序的运行,确保交通信号灯按照预期进行切换5. 优化控制逻辑,提高程序效率和稳定性三、硬件连接1. 连接交通信号灯的LED灯及其它电子元件2. 理解并实现灯光的正反相控制3. 使用适当的电阻进行电流限制4. 连接并配置单片机与电路的通信接口5. 建立单片机与计算机之间的连接,方便程序下载与调试四、功能扩展1. 添加电子组件以实现交通信号灯的更多功能2. 尝试不同的交通灯控制算法3. 增加人车辨别传感器以实现智能化控制4. 加入音效与声光提示功能,提高交通信号灯的可视性和可听性5. 设计并实现交通流量的实时监测和统计功能五、实验结果分析1. 对交通信号灯的各项功能进行实验验证2. 分析实验结果,评估系统的性能和稳定性3. 总结实验中遇到的问题和解决方案4. 提出改进交通信号灯设计的建议总结通过本文详细的阐述,我们了解了单片机交通灯实验的电路设计、控制逻辑编程、硬件连接、功能扩展以及实验结果分析等方面的知识。

这些内容不仅对于我们更深入地了解交通信号灯的工作原理和应用具有重要意义,而且为我们开展相关实际项目提供了指导和启示。

希望本报告能够帮助读者更好地理解和应用单片机交通灯实验。

51单片机交通灯设计开题报告

51单片机交通灯设计开题报告开题报告:51单片机交通灯设计在当今社会,交通管理和交通安全一直是人们关注的焦点。

为了更好地管理交通流量和提高交通安全,交通灯的设计是至关重要的一环。

本文将以51单片机为基础,探讨交通灯设计的原理和实现方法,以期为实际交通管理提供有益的参考。

一、背景介绍51单片机作为一款广泛应用于嵌入式系统中的微控制器,具有成本低、性能稳定等优点。

通过合理的程序设计和电路连接,可以实现各种智能系统的控制和管理。

交通灯作为城市道路交通管理的基本设施之一,其设计和控制是交通管理的核心组成部分。

二、交通灯设计原理1. 交通信号灯的基本原理交通信号灯的基本工作原理是通过红、黄、绿三种颜色的灯光组合,来指示车辆和行人通行状态。

红灯表示停止,黄灯表示警示,绿灯表示通行。

通过这种灯光组合和闪烁方式,可以有效指导交通并降低交通事故的发生率。

2. 51单片机在交通灯设计中的作用在交通灯的设计中,51单片机可以用来控制灯光的闪烁和切换。

通过编写相应的程序,实现不同方向交通灯的同步切换和定时控制。

51单片机还可以作为传感器和控制模块的接口,实现对外部环境的监测和响应。

三、交通灯设计实现方法1. 硬件设计在交通灯的硬件设计中,需要考虑到灯光的亮度、耐久性和节能性。

还需要考虑到外部环境的温度和湿度等因素。

通过合理选择LED灯和电路连接方式,可以有效实现交通灯的节能和稳定工作。

2. 软件设计在软件设计中,需要针对不同的交通场景编写相应的控制程序。

通过51单片机的编程,实现对交通灯的定时控制、信号切换和故障检测等功能。

还需要考虑到日常维护和远程监控的需求,编写相应的数据上传和通信程序。

四、个人观点与总结交通灯设计是一个综合性强、技术含量高的工程项目。

通过本次开题报告的研究,我对交通灯设计的原理和实现方法有了更深入的了解。

我也认识到了在实际工程中,需要考虑到各种实际因素的影响,才能设计出性能稳定、安全可靠的交通灯系统。

单片机实验报告 十字路口交通灯

单片机实验报告温度的测量与显示姓名:薛博璠学号:0703110129班级:电信1101(一)实验要求1.硬件电路的单片机芯片采用AT89C51芯片,进行数据处理。

2.温度测量范围为:0-100摄氏度,测量精度正负0.1摄氏度,数据采集部分的传感器采用DS18B20芯片数字温度传感器。

3.总线驱动使用ZLG7290B 芯片,用六位七段LED 数码显示器显示测量的温度值。

4.键盘按键S1实现测量控制,按下按键S1则刷新测量的温度值。

(二)芯片介绍硬件电路的单片机芯片采用A T89C51芯片,进行数据处理。

数据采集部分的传感器采用DS18B20芯片数字温度传感器。

总线驱动使用ZLG7290B 芯片,用六位七段LED 数码显示器显示测量的温度值,键盘按键S1实现测量控制,按下按键S1则刷新测量的温度值。

系统硬件总体框图:DS18B20芯片DS18B20是由美国DALLAS 公司生产的单线数字温度传感器芯片。

与传统的热敏电阻有所不同,DS18B20可直接将被测温度转化为串行数字信号,以供单片机处理,它还具有微型化、低功率、高性能、抗干扰能力强等优点。

通过编程,DS18B20可以实现9~12位的温度读数。

信息经过单线接口送入DS18B20或从DS18B20送出,因此从微处理器到DS18B20仅需连接一条信号线和地线。

读、写和执行温度变换所需的电源可以由数据线本身提供,而不需要外部电源。

DS18B20的引脚功能:DS18B20的引脚(图7-10),其功能如表7-8所示。

DS18B2ZLG7290BAT89C5键盘 LEDS18B20的主要特点:1.采用单线技术,与单片机通信只需一个引脚;2.通过识别芯片各自唯一的产品序列号从而实现单线多挂接,简化了分布式温度检测的应用;3.实际应用中不需要外部任何器件即可实现测温;4.可通过数据线供电,电压的范围在3~5.5V;5.不需要备份电源;6.测量范围为-55~+125℃,在-10~+85℃范围内误差为0.5℃;7.数字温度计的分辨率用户可以在9位到12位之间选择,可配置实现9~12位的温度读数;8.将12位的温度值转换为数字量所需时间不超过750ms;9.用户定义的,非易失性的温度告警设置,用用户可以自行设定告警的上下限温度。

51单片机综合实验交通灯设计报告

51单片机综合实验交通灯设计报告班级:学生姓名:学号:指导教师:一实验题目交通灯控制系统设计二实验目的1、学会用8051单片机开发简单的计算机控制系统;2、学会用汇编语言和C语言开发系统软件;3、学会8051单片机开发环境wave或Keil uVision3软件的使用;4、学会Proteus软件的使用方法,会用Proteus单片机系统进行仿真;5、学会Protel软件的使用方法,会用Protel绘制电气原理图和印制板图;6、熟悉七位数码管显示的使用方法;7、了解交通灯控制系统的基本组成。

三实验要求交通灯处在十字路口上。

它有红﹑黄﹑绿三种颜色的灯组成。

红灯亮时道路上的车辆停止运行;黄灯是一种过渡用的信号灯,当它亮时,表示道路上的红绿色信号灯即将进行转换。

下面拿东西南北四个方向来说明。

当东西方向允许行车(或者左转)的时候,南北方向就禁止行车,即此时东西方向的绿灯亮红灯灭,而南北方向的绿灯灭红灯亮。

反之当南北方向允许行车(或者左转)的时候,东西方向就禁止行车,即此时南北方向的绿灯亮红灯灭,而东西方向的绿灯灭红灯亮。

交通灯配置示意图如图1所示。

同时当有特殊的情况发生时,能手动控制各个方向的信号灯。

设计任务就是将这一电路用单片机来实现具体的控制。

1 十字路口交通灯配置示意图四设计内容与原理为了在后面的分析中便于说明,将南北方向允许直行命名为状态1,南北方向允许左转命名为状态2,南北方向行车到东西方向行车的转换阶段命名为状态3,将东西方向允许直行命名为状态4,东西方向允许左转命名为状态5,东西方向行车到南北方向方向行车的转换阶段命名为状态6。

假定直行绿灯点亮的时间为25s,左转绿灯点亮的时间为20s,黄灯点亮的时间为5s,则对方红灯的点亮时间为50秒。

黄灯每隔500ms亮一次,之后灭500ms (亮灭一次叫作闪烁一次),一共闪烁5次,持续5s。

各个状态之间的变换情况如下:具体显示周期如下:图2交通信号灯点亮时间图设计电路中每个路口的控制信号灯应有四个,即绿灯两个、黄灯、红灯各一个,同时需要七段数码管一个。

单片机单点交通灯实习报告

单片机交通灯实习报告一、前言随着我国经济的快速发展,汽车数量的猛增,城市交通压力越来越大。

为了提高交通效率和安全性,智能交通控制系统的需求日益迫切。

单片机交通灯控制系统作为一种智能交通管理手段,能够根据实时交通流量自动调整红绿灯的切换时间,实现交通信号的智能化管理。

本实习报告围绕单片机交通灯控制系统的设计与实现展开,详细介绍了系统的设计思路、硬件选型、软件编程及实验结果。

二、系统设计1. 设计目标本设计旨在通过单片机技术实现对交通灯的智能控制,提高交通路口的通行效率和安全性。

系统能够根据实时交通流量自动调整红绿灯的切换时间,实现交通信号的智能化管理。

2. 系统组成(1)单片机:作为系统的核心控制器,负责接收传感器信号、处理数据、输出控制指令。

(2)交通灯模块:包括红灯、黄灯和绿灯,用于指示车辆和行人的通行状态。

(3)传感器模块:可包括车辆检测传感器、行人检测传感器等,用于实时检测交通路口的车辆和行人流量。

(4)显示模块:可选配,用于显示当前交通状态、剩余时间等信息,方便驾驶员和行人了解交通情况。

(5)按键模块:用于设置和修改交通灯的工作模式和参数。

(6)电源模块:为整个系统提供稳定的电力供应。

3. 工作原理系统上电后,单片机进行初始化操作,包括设置初始参数、检测硬件连接状态等。

然后通过传感器模块实时检测交通路口的车辆和行人流量,将数据传输给单片机。

单片机根据接收到的交通流量数据,结合预设的算法和规则,计算出当前红绿灯的切换时间,并输出控制指令,控制交通灯模块的显示状态。

同时,显示模块可以显示当前交通状态和剩余时间,方便驾驶员和行人了解交通情况。

三、硬件设计1. 单片机选型本设计采用STC89C51单片机,该单片机具有丰富的外设资源、强大的功能和较低的成本,非常适合用于交通灯控制系统。

2. 交通灯模块交通灯模块包括红灯、黄灯和绿灯,通过继电器实现灯色的切换。

继电器驱动电路采用晶体管驱动,具有驱动能力强、响应速度快的特点。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《单片机控制系统开发训练》
Development of MCU control System
项 目 报 告
Training Item Report



Comment

教师评定成绩(80%) 成果报告成绩(20%)

成绩
Score
日期

Date

课程名称 Course Name 单片机控制系统开发训练 项目编号 Item No. 1 名称
Item
交通灯控制系统制作

姓 名 Name 张文格 学号 No. 20134136 班级 Class 工1303
项目报告
1.说明项目中所涉及的知识点及难点。
(1)单片机I/O口的使用;
(2)单片机并口扩展技术和使用;
(3)单片机开关量的输出和隔离及功率接口设计;
(4)中断程序和输出程序编程能力;

2.设计心得与体会。
电路原理图
测试程序
#include
unsigned int ms_50;
#define sn_green P0_5
#define ew_green P0_2
#define sn_red P0_3
#define ew_red P0_0
#define sn_yellow P0_4
#define ew_yellow P0_1
main(void)
{
TMOD=0x01;
EA=1;
ET0=1;
TL0=(65536-50000)%256;
TH0=(65536-50000)/256;
TR0=1;
while(1)
{
if(ms_50<=1200)
{
sn_red =0;
ew_green =0;
}
if(ms_50>1200&&ms_50<=1320)
{
sn_red =0;
ew_green=1;
if((ms_50>1200&&ms_50<=1220)||(ms_50>1240&&ms_50<=1260)||(ms_50>1280&&ms_50<=1300))
{
ew_yellow=0;
}
else
{
ew_yellow=1;
}
}
if(ms_50>1320&&ms_50<=2520)
{
sn_green=0;
sn_red=1;
ew_red=0;
}
if(ms_50>2520&&ms_50<=2640)
{
sn_green=1;
ew_red=0;
if((ms_50>2520&&ms_50<=2540)||(ms_50>2560&&ms_50<=2580)||(ms_50>2600&&ms_50<=2620))
{
sn_yellow=0;
}
else
{
sn_yellow=1;
}
}
if(ms_50>2640)
{
sn_red =0;
ew_green =0;
ew_red =1;
ms_50=0;
}
}
}
void T0_int(void) interrupt 1 using 0
{
ET0=0;
ms_50++;
TL0=(65536-50000)%256;
TH0=(65536-50000)/256;
ET0=1;
}

相关文档
最新文档