ImageVerifierCode 换一换
格式:DOCX , 页数:17 ,大小:179.83KB ,
资源ID:10612      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-10612.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(带时间显示的交通信号灯控制系统设计.docx)为本站会员(b****2)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

带时间显示的交通信号灯控制系统设计.docx

1、带时间显示的交通信号灯控制系统设计 带时间显示的交通信号灯控制系统设计系 别: 电气与信息工程系 专 业: 班 级: 学生姓名: 学 号: 指导教师: 时 间: 2011年11月24日 摘 要 3 一、设计任务与要求 4 二、硬件单元电路设计 4 1. LED数码显示模块 4 2. 发光二极管模拟信号灯电路 6 3. 时钟电路模块 6 4. 复位电路模块 7 5. 主控制系统模块 7 6. 设计完整的电路图 8三、流程框图 9 四、子程序编写 10 1、延时子程序10 2、显示子程序 10 五、总结 11 六、程序清单 12摘 要交通在人们的日常生活中占有重要的地位,随着人们社会活动的日益频繁

2、,这点更是体现的淋漓尽致。交通信号灯的出现,使交通得以有效管制,对于疏导交通流量、提高道路通行能力,减少交通事故有明显效果。近年来随着科技的飞速发展,单片机的应用正在不断深入,同时带动传统控制检测技术日益更新。在实时检测和自动控制的单片机应用系统中,单片机往往作为一个核心部件来使用,仅单片机方面知识是不够的,还应根据具体硬件结构软硬件结合,加以完善。本系统采用单片机AT89S52为中心器件来设计交通灯控制器,系统实用性强、操作简单、扩展性强。本设计就是采用单片机模拟十字路口交通灯的各种状态显示以及倒计时时间。本设计系统由单片机I/O口扩展系统、交通灯状态显示系统、LED数码显示系统、复位电路等

3、几大部分组成。系统除基本的交通灯功能外,还具有倒计时等功能,较好的模拟实现了十字路口可能出现的状况。软件上采用C51编程,主要编写了主程序,LED数码管显示程序,中断程序延时程序等。经过整机调试,实现了对十字路口交通灯的模拟。一、设计任务与要求1原理图设计。2南北方向:绿灯亮30S放行,黄灯亮4S警告,然后红灯亮54S禁止。3东西方向:绿灯亮50S放行,黄灯亮4S警告,然后红灯亮34S禁止。4南北方向红灯亮时,同时用2位LED进行54S递减时间显示。5东西方向红灯亮时,同时用2位LED进行34S递减时间显示。6单片机程序设计、调试。二、硬件单元电路设计 1、LED数码显示模块 静态显示方式:静

4、态显示方式是指当显示器显示某一字符时,发光二极管的位选始终被选中。在这种显示方式下,每一个LED数码管显示器都需要一个8位的输出口进行控制。由于单片机本身提供的I/O口有限,实际使用中,通常通过扩展I/O口的形式解决输出口数量不足的问题。 静态显示主要的优点是显示稳定,在发光二极管导通电流一定的情况下显示器的亮度大,系统运行过程中,在需要更新显示内容时,CPU才去执行显示更新子程序,这样既节约了CPU的时间,又提高了CPU的工作效率。其不足之处是占用硬件资源较多,每个LED数码管需要独占8条输出线。随着显示器位数的增加,需要的I/O口线也将增加。 (2)动态显示方式:动态显示方式是指一位一位地

5、轮流点亮每位显示器(称为扫描),即每个数码管的位选被轮流选中,多个数码管公用一组段选,段选数据仅对位选选中的数码管有效。对于每一位显示器来说,每隔一段时间点亮一次。显示器的亮度既与导通电流有关,也与点亮时间和间隔时间的比例有关。通过调整电流和时间参数,可以既保证亮度,又保证显示。若显示器的位数不大于8位,则显示器的公共端只需一个8位I/O口进行动态扫描(称为扫描口),控制每位显示器所显示的字形也需一个8位口(称为段码输出)。本设计采用动态显示法。2、发光二级管模拟信号灯电路 3、时钟电路模块时钟电路由一个晶体振荡器12MHZ和两个30pF的瓷片电容组成。时钟电路用于产生单片机工作所需要的时钟信

6、号,而时序所研究的是指令执行中各信号之间的相互关系。单片机本身就如一个复杂的同步时序电路,为了保证同步工作方式的实现,电路应在唯一的时钟信 号控制下严格地工作。 4、复位电路模块 复位电路是使单片机的CPU或系统中的其他部件处于某一确定的初始状态,并从这状态开始工作,除了进入系统的正常初始化之外,当由于程序运行出错或操作错误使系统处于死锁状态时,为摆脱困境,也需按复位电路以重新启动。本设计采用的是按键复位电路。其电路如下图所示:5、主控制系统模块主控制器采用AT89S52,是ATMEL公司生产的一款性能稳定的8位单片机。AT89S52具有1个8KB的FLASH程序存储器,1个512字节的RAM

7、,4个8位的双向可位寻址I/O端口,3个16位定时/计数器及1个串行口和6个向量二级中断结构。单片机的P3口分别用于控制南北及东西的通行灯,P0口和P2口用于2组4位LED计时器的控制。其主控电路如下图所示:6、设计完整的电路图 三、流程框图 N Y N N N Y四、子程序编写1、延时子程序一秒基准时间采用定时器0定时:void timer0(void) interrupt 1 using 0/定时器0方式1,50ms中断一次 TH0=0x3c; TL0=0xb0; TMOD = 0x11; mrp+; if(mrp=20) sec-; if(sec=0) TR0=0; mrp=0; /对计

8、数单元的清零 但显示子程序中的延时部分采用纯软件延时:/*延时子程序*/void DelayX1ms(uint count) uint j; while(count-!=0) for(j=0;j80;j+); 2、显示子程序/*显示函数*/void disp() char i,j=0xfe; char k=0; for(i=0;i8;i+) P2=j; k=find_codei; P0=dis_codek; DelayX1ms(2); j=_crol_(j,1); 五、总结通过这次课程设计,我得到了一次用专业知识、专业技能分析和解决问题全面系统的锻炼。使我在单片机的基本原理、单片机应用系统开发

9、过程,以及在常用编程设计思路技巧(特别是C语言)的掌握方面都能向前迈了一大步。本次课程设计的过程是艰辛的,不过收获却是很大的。在设计过程中,会出现了一些问题,但都是常见的小问题,如:代码中双引号的使用并不是在英语书写状态下,输入字母出错等,在调试时出现异常,不过这些都是经常性错误,经过调试修改都一一解决,程序顺利完成,并实现了其功能。综合课程设计让我把以前学习到的知识得到巩固和进一步的提高认识,对已有知识有了更进一步的理解和认识。在此,由于自身能力有限,在课程设计中碰到了很多的问题,我通过查阅相关书籍、资料以及和周围同学交流。由于使用的是单片机作为核心的控制元件,使得电路的可靠性比较高,功能也

10、比较强大,而且可以随时的更新系统,进行不同状态的组合。但是在我们设计和调试的过程中,也发现了一些问题,譬如红灯和绿灯的切换还不够迅速,红绿灯规则不效率还不是很高等等,这需要在实践中进一步完善。当然,通过这次课程设计,我也发现了自身的很多不足之处,在以后的学习中,我会不断的完善自我。六、程序清单 /* 带时间显示的交通信号灯控制系统设计 交通信号灯 电气0901 WangPeng*/#include#include#define uchar unsigned char#define uint unsigned intsbit dxg=P35;/东西绿灯sbit dxy=P36;/东西黄灯sbit

11、 dxr=P37;/东西红灯sbit nbg=P33;/南北绿灯sbit nby=P32;/南北黄灯sbit nbr=P31;/南北红灯uchar k_z;uchar mrp,sec;void DelayX1ms(uint count);/*P.显示代码序号*/ char data find_code8=11,11,11,11,11,11,11,10;/*共阳数码管字型码*/*0,1,2,3,4,5,6,7,8,9,p.,灭,-*/char code dis_code=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x0c,0xff; /*

12、/*显示函数*/void disp() char i,j=0xfe; char k=0; for(i=0;i8;i+) P2=j; k=find_codei; P0=dis_codek; DelayX1ms(2); j=_crol_(j,1); /*/*延时子程序*/void DelayX1ms(uint count) uint j; while(count-!=0) for(j=0;j4) nbg=0; /南北绿灯开 else nbg=1;nby=0; /南北绿关,黄灯亮4秒 if(sec=0) sec=54; P3=0xff; break; while(1) /南北红灯54秒 TR0=1; xsgx(); disp(); /显示时间 nbr=0; if(sec4) dxg=0; /东西绿灯开 else dxg=1;dxy=0; /东西绿灯关,黄灯亮4秒 if(sec=0) P3=0xff; break;

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2