单片机课程设计_交通灯控制系统(C51版)-副本_第1页
单片机课程设计_交通灯控制系统(C51版)-副本_第2页
单片机课程设计_交通灯控制系统(C51版)-副本_第3页
单片机课程设计_交通灯控制系统(C51版)-副本_第4页
单片机课程设计_交通灯控制系统(C51版)-副本_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、交通灯控制系统(C51版)湖南工业大学课 程 设 计资 料 袋 电气与信息工程 学院 3 学年第 1 学期 课程名称 单片机系统课程设计 指导教师 凌 云 职称 教 授 学生姓名 刘宝雨 专业班级 测控1002班 学号 10401600244 题 目 交通灯控制系统(C51版) 成 绩 起止日期 2012 年 12 月 10 日 2012 年 12 月 28 日目 录 清 单序号材 料 名 称资料数量备 注1课程设计任务书2课程设计说明书3课程设计图纸张4心得体会56湖南工业大学课程设计任务书2012 2013 学年第1 学期电气与信息工程 学院 测控技术与仪器 专业 102 班课程名称: 单

2、片机系统课程设计 设计题目: 交通灯控制系统(C51版) 完成期限:自 2012 年 12 月 17 日至 2012 年 12 月 28 日共 2 周内容及任务1.1 倒计时定时器设计1.1.1 20s倒计时定时器:倒计时由按钮启动,计时精度0.1s,在数码管中显示倒计时值。1.1.30分钟倒计时定时器:倒计时由按钮启动,计时精度1s,在数码管中显示倒计时值。1.2交通灯控制系统设计 4个方向的交通信号灯总数不少于24个,不同路口的交通控制方案(包括信号灯数量、各方向的通行顺序与通行时间)通过修改数据表改变(不允许改程序),每个方向用2位数码管显示倒计时时间。1.3 在Proteus中仿真,分

3、析仿真结果 1.4 用C51语言编写单片机程序 1.5 撰写课程设计说明书(课程设计报告)进度安排起止日期工作内容2012.12.17-2012.12.21讲述设计内容及基本原理,进行系统的设计2012.12.24-2012.12.28完成系统调试,课程设计的验收主要参考资料1 欧伟明、何静.单片机原理与应用系统设计.电子工业出版社,2009年2 刘苗生、潘宗预. 单片机测控系统设计. 中国物质出版社,2006年16单片机系统课程设计说明书交通灯控制系统(C51版)起止日期: 2012 年 12 月 17 日 至 2012 年 12 月 28 日学生姓名 刘宝雨班级测控1002班学号10401

4、600244成绩湖南工业大学电气与信息工程学院2012年12 月10 日目录前言-2一、 总体设计要求-31. 硬件、框图- 32. 软件、模块及任务-3二、 硬件设计-41. 硬件原理图-42. 器件选择-43. 电路设计-6三、 软件设计-71. 程序流程图-72. 程序编写-8四、 仿真调试-14五、 实验总结-15六、 参考文献-16前言如今随着人们生活水平的提高,车辆越来越多,交通事故频繁发生。交通信号灯的出现,使交通得以有效管制,对于疏导交通流量,提高道路通行能力,减少交通事故有明显效果。交通灯在城市交通中起着重要的作用,它与人们日常生活密切相关,是人们出行的安全保障。因此提供一个

5、可靠、安全、便捷的多功能交通灯控制系统有着现实的必要性。为了解决这些问题,我们更应该提高交通控制和管理水平,合理使用现有交通设施,充分发挥其能力,提高交通效率,促进和谐交通的建立。 近年来随着科技的飞速发展,单片机的应用正在不断地走向深入,同时带动传统控制检测日新月益更新。在实时检测和自动控制的单片机应用系统中,单片机往往是作为一个核心部件来使用,仅单片机方面知识是不够的,还应根据具体硬件结构,以及针对具体应用对象特点的软件结合,加以完善。 本系统设计一个基于单片机的交通灯控制系统。通过对交通灯的设计仿真和模拟,来加强对单片机的应用的了解和学习,加强对课堂理论知识的学习,同时为以后的进一步深造

6、打下一个良好的基础。一、 总体设计要求.硬件方案根据设计的要求可知,系统的硬件原理框图如下图所示。单片机数码管显示红绿灯系统硬件框图单片机可选用AT89C51,它与8052系列单片机全兼容,但其内部带有4KB的FLASH ROM,设计时无需外接程序存储器,为设计和调试带来极大的方便。南北向和东西向各采用2个数码管计时,同时需要对该方向的指示灯的点亮时间进行倒计时。若单片机的IO口不够用时,可以考虑用扩展来满足系统的要求。2. 软件方案 根据设计要求,程序框图如图1所示。软件可由语言完成,也可由C语言完成。软件设计可以分为以下几个功能模块:主程序:初始化计时程序模块:为定时器的中断服务子程序,完

7、成0.1秒(或其他时间)和1秒的时间定时。 显示程序模块:完成个发光二极管和8个LED数码管的显示驱动。开始初始化判断当前状态调用正常运行子程序软件设计程序流程图3、硬件设计、原件选择芯片AT89C51是美国ATMEL公司生产的低电压,高性能CMOS 8位单片机,有40个引脚,32个外部双向输入/输出(I/O)端口,同时内含2个外中断口,3个16位可编程定时计数器,2个全双工串行通信口,2个读写口线,片内含8k bytes的可反复擦写的Flash只读程序存储器和256 bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,与标准MCS-51指令系统及8

8、051产品引脚兼容,片内置通用8位中央处理器(CPU)和Flash存储单元,可以按照常规方法对其进行编程,也可以在线编程。其将通用的微处理器和Flash存储器结合在一起,特别是可反复擦写的Flash存储器可有效地降低开发成本。 共阴极数码管共阴极数码管的管脚如图所示,其中标注共极的管脚接电源和地,标注字母的管脚分别接译码器的对应输出端;DP控制小数点的显示,若不需要显示,则该端口接电平或是悬空,若需要显示,则接高电平;共阴极数码管当输入高电平时显示。、电路设计ATMEL公司生产的AT89C52单片机它是硬件电路的核心部分,时钟电路晶振使用12MHz时钟电路设计如下图所示:单片机系统的时钟电路复

9、位电路如下图所示:GNDVCC单片机系统的复位电路电源电路设计 电源用5V直流变压器直接供电。 VCC 供电电路 显示电路采用8个共阴数码管,P1口作为数码管的输入,分别作为东西南北四路数码管的位选端。573口位选到数码管显示电路三、软件设计1、程序流程图T0响应N南北黄灯标志位为1N东西黄灯标志位为1Y0.5s到Y1s到南北黄灯位置反团里Y东西黄灯位置反团里Y返回倒计时减1,计数值置0NN开始南北直行通行东西禁止南北左拐通行东西禁止AT89C51初始化南北黄灯闪烁南北黄灯闪烁通行60秒YN闪烁5秒YN通行20秒YN闪烁5秒YN东西黄灯闪烁东西直行通行南北禁止东西左拐通行南北禁止东西黄灯闪烁通

10、行60秒YN闪烁5秒YN通行20秒YN闪烁5秒YN主程序流程图2、程序编写#include<reg51.h>#define uint unsigned int#define uchar unsigned charsbit dula=P20;sbit wela=P21;uchar code table=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71;uchar num,deng,dengl,shi,ge,lshi,lge;int shijian,shijianl;void

11、delay(uint z)uint x,y;for(x=z;x>0;x-)for(y=110;y>0;y-);void display(uchar shi,uchar ge)dula=1;P0=tableshi;dula=0;P0=0x00;wela=1;P0=0xfe;wela=0;P0=0x00;delay(5);dula=1;P0=tablege;dula=0;P0=0x00;wela=1;P0=0xfd;wela=0;P0=0x00;delay(5);void displayl(uchar lshi,uchar lge)dula=1;P0=tablelshi;dula=0;

12、P0=0x00;wela=1;P0=0xfb;wela=0;P0=0x00;delay(5);dula=1;P0=tablelge;dula=0;P0=0x00;wela=1;P0=0xf7;wela=0;P0=0x00;delay(5);void dx()if(shijian=0)switch(deng)case 0: shijian=20;/左转弯绿灯deng=1;break;case 1: shijian=5;/左转弯黄灯deng=2;break;case 2: shijian=30;/直走绿灯deng=3;break;case 3: shijian=5;/直走黄灯deng=4;brea

13、k;case 4: shijian=60;/禁止通行deng=0;break;if(shijianl=0)switch(dengl)case 0: shijianl=60;/禁止通行dengl=1;break;case 1: shijianl=20;/左转弯绿灯dengl=2;break;case 2: shijianl=5;/左转弯黄灯dengl=3;break;case 3: shijianl=30;/直行绿灯dengl=4;break;case 4: shijianl=5;/直行黄灯dengl=0;break;if(num=20)num=0;shijian-;shijianl-;lshi

14、=shijianl/10;lge=shijianl%10;displayl(lshi,lge);shi=shijian/10;ge=shijian%10;display(shi,ge);switch(deng)case 1: P3=0x21;/左转弯绿灯直行红灯break;case 2: if(shijian%2=0)/左转弯黄灯闪烁直行红灯P3=0x22;if(shijian%2=1)P3=0x20;break;case 3: P3=0x0c;/直行绿灯左转弯红灯break;case 4: if(shijian%2=0)/直行黄灯闪烁左转弯红灯P3=0x14;if(shijian%2=1)P

15、3=0x04;break;case 0: P3=0x24;/直行红灯左转弯红灯break;switch(dengl)case 1: P1=0x24;/直行红灯左转弯红灯break;case 2: P1=0x21;/左转弯绿灯直行红灯break;case 3: if(shijian%2=0)/左转弯黄灯闪烁直行红灯P1=0x22;if(shijian%2=1)P1=0x20;break;case 4: P1=0x0c;/直行绿灯左转弯红灯break;case 0: if(shijian%2=0)/直行黄灯闪烁左转弯红灯P1=0x14;if(shijian%2=1)P1=0x04;break;vo

16、id main()TMOD=0x01;TH0=(65536-50000)/256;TL0=(65536-50000)%256;EA=1;ET0=1;TR0=1;while(1)dx();void time() interrupt 1TH0=(65536-50000)/256;TL0=(65536-50000)%256;num+;四、仿真调试五、总结这是我第一次次做单片机课程设计,可想而知结果也很糟糕,虽然遇到了很多的困难与问题,但是在自己的自学和同学的帮助之下,圆满的完成任务。本设计采用的是软硬件结合的方案,所以对软件编程有一定的要求,而且这也是我第一次自己写C语言程序,刚开始思路很僵硬也不知道机械语言的那种很强的逻辑性,最后通过多看程序,多思考和改进终于实现软件功能。虽然硬件电路比较简单,但是首先要有比较好的布局,这关系到美观和走线的方便,再一个就是电路的排查方面,第一次设计出来的电路总是或多或少有一些问题这就需要细心与耐心的排查。通过这次课程设计使我得到了一次用专业知识、专业技能分析和解决问题全面系统

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论