课程设计基于AT89S52单片机的交通信号灯控制器的设计.doc

上传人:laozhun 文档编号:4145880 上传时间:2023-04-07 格式:DOC 页数:29 大小:340.50KB
返回 下载 相关 举报
课程设计基于AT89S52单片机的交通信号灯控制器的设计.doc_第1页
第1页 / 共29页
课程设计基于AT89S52单片机的交通信号灯控制器的设计.doc_第2页
第2页 / 共29页
课程设计基于AT89S52单片机的交通信号灯控制器的设计.doc_第3页
第3页 / 共29页
课程设计基于AT89S52单片机的交通信号灯控制器的设计.doc_第4页
第4页 / 共29页
课程设计基于AT89S52单片机的交通信号灯控制器的设计.doc_第5页
第5页 / 共29页
点击查看更多>>
资源描述

《课程设计基于AT89S52单片机的交通信号灯控制器的设计.doc》由会员分享,可在线阅读,更多相关《课程设计基于AT89S52单片机的交通信号灯控制器的设计.doc(29页珍藏版)》请在三一办公上搜索。

1、课程设计任务书学生姓名: 专业班级:电子科学与技术指导教师: 工作单位: 信息工程学院 题 目: 交通信号灯控制器的设计 初始条件:本设计既可以使用集成集成译码器、计数器、定时器、脉冲发生器和必要的门电路等。本设计也可以使用单片机系统构建交通信号灯控制器。用数码管显示时间计数值,用红、黄、绿LED作信号灯。要求完成的主要任务: (包括课程设计工作量及其技术要求,以及说明书撰写等具体要求)1、课程设计工作量:1周。2、技术要求: 要求甲车道和乙车道两条交叉道路上的车辆交替运行(以红绿灯指示),每次通行时间设为030秒(可预置);变更车道以前,黄灯先亮5秒钟,黄灯亮时,要求每秒钟闪亮一次;两个车道

2、均以减计数方式显示时间。其余部分可根据情况自行发挥。 确定设计方案,按功能模块的划分选择元、器件和集成电路,设计分电路,阐述基本原理。绘制总体电路原理图。3、查阅至少5篇参考文献。按武汉理工大学课程设计工作规范要求撰写设计报告书。全文用A4纸打印,图纸应符合绘图规范。时间安排:1、 2010 年 6 月 28日集中,作课设具体实施计划与课程设计报告格式的要求说明。2、 2010 年 6月 28 日,查阅相关资料,学习电路的工作原理。3、 2010 年 6月 28 日 至 2010 年 6 月 29日,方案选择和电路设计。4、 2010 年 6月 29 日 至 2010 年 7月 1日,电路调试

3、和设计说明书撰写。5、 2010 年 7 月 2 日上交课程设计成果及报告,同时进行答辩。课设答疑地点:鉴主14楼电子科学与技术实验室。指导教师签名: 年 月 日系主任(或责任教师)签名: 年 月 日目录摘要IAbstractII1 绪论12 设计内容及要求22.1设计的目的及主要任务22.1.1设计的目的22.1.2 设计任务及主要技术指标22.2设计思想23 设计原理及单元模块设计33.1 设计原理及方法33.2 单元模块设计43.2.1 AT89S52单片机43.2.2 晶振电路63.2.3复位电路63.2.4LED数码管显示模块73.2.5LED红绿灯显示模块73.2.6 软件设计84

4、 电路仿真95 调试106 心得体会11附录1 元件清单13附录2 源程序14摘要近年来随着科技的高速发展,单片机的应用正在不断深入,同时带动传统控制检测技术日益更新。在实时检测和自动控制的单片机应用系统中,单片机往往作为一个核心部件来使用,仅单片机方面知识还是不够的,还应根据具体硬件结构,软硬件结合,加以完善2。十字路口所以能保持秩序井然,靠的就是交通信号灯的自动指挥控制器。本系统采用AT89S52单片机,数码显示管及红、绿、黄LED灯模拟实现十字路口交通灯的各种状态显示以及倒计时时。本设计系统由单片机I/O口扩展系统、交通灯状态显示系统、LED数码显示系统、复位电路等几大部分组成。系统除基

5、本的交通灯功能外,还具有倒计时等功能,较好的模拟实现了十字路口可能出现的状况。关键词:单片机 交通信号灯 AT89S52 数码显示管 LED灯Abstract In recent years along with technical high speed development, monolithic integrated circuits application unceasingly thorough, simultaneously leads the traditional control examination technology to renew day by day. In th

6、e real-time examination and in automatic controls monolithic integrated circuit application system, the monolithic integrated circuit often takes a core part to use, only the monolithic integrated circuit aspect knowledge is insufficient, but should also act according to the concrete hardware archit

7、ecture, the software and hardware union, consummates. Therefore the intersection can maintain orderly, depending on is street-traffic control lights automatic direction controller. This system uses at89C52 monolithic integrated circuit, the digital display tube and red, green, the yellow LED lamp si

8、mulation realizes time the intersection traffic lights each condition demonstration as well as the countdown.This design system by the monolithic integrated circuit I/O mouth expansion system, the traffic light condition display system, the LED numerical code display system, the reset circuit and so

9、 on several major parts is composed. System besides basic traffic light function, but also has functions and so on countdown, the good simulation has realized the condition which the intersection possibly appears.Key words: Monolithic integrated circuit street-traffic control lights AT89C52 digital

10、display tube LED lamp1 绪论当今,红绿灯安装在各个道口上,已经成为疏导交通车辆最常见和最有效的手段。但这一技术在19世纪就已出现了。1858年,在英国伦敦主要街头安装了以燃煤气为光源的红,蓝两色的机械扳手式信号灯,用以指挥马车通行。这是世界上最早的交通信号灯。1868年,英国机械工程师纳伊特在伦敦威斯敏斯特区的议会大厦前的广场上,安装了世界上最早的煤气红绿灯。它由红绿两以旋转式方形玻璃提灯组成,红色表示“停止”,绿色表示“注意”。1869年1月2日,煤气灯爆炸,使警察受伤,遂被取消。电气启动的红绿灯出现在美国,这种红绿灯由红绿黄三色圆形的投光器组成,1914年始安装于纽约

11、市5号大街的一座高塔上。红灯亮表示“停止”,绿灯亮表示“通行”。1918年,又出现了带控制的红绿灯和红外线红绿灯。带控制的红绿灯,一种是把压力探测器安在地下,车辆一接近红灯便变为绿灯;另一种是用扩音器来启动红绿灯,司机遇红灯时按一下嗽叭,就使红灯变为绿灯。红外线红绿灯当行人踏上对压力敏感的路面时,它就能察觉到有人要过马路。红外光束能把信号灯的红灯延长一段时间,推迟汽车放行,以免发生交通事故。信号灯的出现,使交通得以有效管制,对于疏导交通流量、提高道路通行能力,减少交通事故有明显效果。1968年,联合国道路交通和道路标志信号协定对各种信号灯的含义作了规定。绿灯是通行信号,面对绿灯的车辆可以直行,

12、左转弯和右转弯,除非另一种标志禁止某一种转向。左右转弯车辆都必须让合法地正在路口内行驶的车辆和过人行横道的行人优先通行。红灯是禁行信号,面对红灯的车辆必须在交叉路口的停车线后停车。黄灯是警告信号,面对黄灯的车辆不能越过停车线,但车辆已十分接近停车线而不能安全停车时可以进入交叉路口3。2 设计内容及要求2.1设计的目的及主要任务2.1.1设计的目的(1)加强对单片机认识,充分掌握和理解设计各部分的工作原理、设计过程、选择芯片器件、模块化编程等多项知识。(2)用单片机模拟实现具体应用,使个人设计能够真正使用。(3)把理论知识与实践相结合,充分发挥个人能力,并在实践中锻炼。(4)提高利用已学知识分析

13、和解决问题的能力。(5)提高实践动手能力。2.1.2 设计任务及主要技术指标(1)单片机采用用AT89S52芯片,使用发光二极管(红,黄,绿)代表各个路口的交通灯,用8段数码管对转换时间进行倒时(东西路口30秒,南北路口30秒,黄灯时间5秒)(2)设计并绘制硬件电路图(3)焊接好元器件(4)编写程序并将调试好的程序固化到单片机2.2设计思想通过分析,可以用单片机P3和P0口、锁存芯片和显示译码芯片的配合来实现控制LED灯和数码管。通过锁存芯片实现单片机口的分时复用,简单易行,且编程简单,能实现数据的快速交换以及单片机的资源的充分利用。采用分模块设计的思想,程序设计实现的基本思想是一个计数器,选

14、择一个单片机,其内部为一个计数,是十六进制计数器,模块化后,通过设置或程序清除来实现状态的转换,对不同的状态输入要产生相应状态的下一个状态的预置数,控制数码管的数字显示,并通过LED灯模拟交通灯的状态变化6。3 设计原理及单元模块设计3.1 设计原理及方法整个设计以AT89C52单片机为核心,由数码管显示,LED数码管显示,复位电路组成1。硬件模块如图3-1-1。AT89S52单片机数码管显示LED数码管显示晶振电路复位电路 3-1-1硬件模块图东西、南北两干道交于一个十字路口,各干道有一组红、黄、绿三色的指示灯,指挥车辆和行人安全通行。红灯亮禁止通行,绿灯亮允许通行。黄灯亮提示人们注意红、绿

15、灯的状态即将切换,且黄灯燃亮时间为东西、南北两干道的公共停车时间。指示灯燃亮的方案如表所示。25S5S25S5S东西道红灯亮红灯亮绿灯亮黄灯亮南北道绿灯亮黄灯亮红灯亮红灯亮说明: (1)当东西方向为红灯,此道车辆禁止通行,东西道行人可通过;南北道为绿灯,此道车辆通过,行人禁止通行。时间为25秒。(2)黄灯5秒,警示车辆和行人红、绿灯的状态即将切换。(3)当东西方向为绿灯,此道车辆通行;南北方向为红灯,南北道车辆禁止通过,行人通行。时间为25秒。 (4)这样如上表的时间和红、绿、黄出现的顺序依次出现这样行人和车辆就能安全畅通的通行。根据原理分析,初步设计出整体电路图(图3-1-2)。3-1-2

16、整体电路设计图3.2 单元模块设计3.2.1 AT89S52单片机其引DIP封装的脚图如下:3-2-1AT89S52引脚图主要性能 与MCS-51单片机产品兼容 、8K字节在系统可编程Flash存储器、 1000次擦写周期、 全静态操作:0Hz33Hz 、 三级加密程序存储器 、 32个可编程I/O口线 、三个16位定时器/计数器 八个中断源 、全双工UART串行通道、 低功耗空闲和掉电模式 、掉电后中断可唤醒 、看门狗定时器 、双数据指针 、掉电标识符 。功能特性描述 AT89S52 是一种低功耗、高性能CMOS8位微控制器,具有 8K 在系统可编程Flash 存储器。使用Atmel 公司高

17、密度非 易失性存储器技术制造,与工业80C51 产品指令和引脚完 全兼容。片上Flash允许程序存储器在系统可编程,亦适于 常规编程器。在单芯片上,拥有灵巧的8 位CPU 和在系统 可编程Flash,使得AT89S52为众多嵌入式控制应用系统提 供高灵活、超有效的解决方案。 AT89S52具有以下标准功能: 8k字节Flash,256字节RAM, 32 位I/O 口线,看门狗定时器,2 个数据指针,三个16 位 定时器/计数器,一个6向量2级中断结构,全双工串行口, 片内晶振及时钟电路。另外,AT89S52 可降至0Hz 静态逻 辑操作,支持2种软件可选择节电模式。空闲模式下,CPU 停止工作

18、,允许RAM、定时器/计数器、串口、中断继续工 作。掉电保护方式下,RAM内容被保存,振荡器被冻结, 单片机一切工作停止,直到下一个中断或硬件复位为止。8 位微控制器 8K 字节在系统可编程 Flash AT89S52 3.2.2 晶振电路晶振电路原理图如3-2-2:3-2-2晶振模块原理图晶振电路的作用晶振是给单片机提供工作信号脉冲的.这个脉冲就是单片机的工作速度.比如 12M晶振.单片机工作速度就是每秒 12M. 为了电路的稳定性起见,在晶振的两引脚处接入两个10pf-50pf的瓷片电容接地来削减谐波对减电路的稳定性的影响。3.2.3复位电路 3-2-3复位电路原理图复位方式有多种,本设计

19、采用按键复位。在设定的定时时间内,89S52必须在RST引脚产生一个由高到低的电平变化,以清内部定时器.3.2.4LED数码管显示模块LED数码管分共阳极与共阴极两种,本设计中采用2位共阴极八段数码管。共阴极数码管的8个发光二极管的阴极(二极管负端)连接在一起。通常,公共阴极接低电平(一般接地),其它管脚接段驱动电路输出端。当某段驱动电路的输出端为高电平时,则该端所连接的字段导通并点亮,根据发光字段的不同组合可显示出各种数字或字符。程序初始化状态1(S1)状态2 (S2)状态3(S3)状态4(S4)3-2-42位共阴极八段数码管引脚图3.2.5LED红绿灯显示模块 本实验有四种状态:状态1,

20、东西绿灯亮,南北红灯亮。状态2, 东西黄灯亮,南北红灯亮。状态3, 东西红灯亮,南北绿灯亮。状态4, 东西红灯亮,南北黄灯亮。再采用显示子程序与延时子程序可使LED显示灯按照要求点亮(如图3-2-5进入循环)。 3-2-5状态循环流程图3.2.6 软件设计软件设计应用单片机C语言编程,c语言是一种编译型设计语言.它兼顾了多种高级语言的特点,并具备汇编语言的功能.用c语言来编写目标系统软件,会大大缩短开发周期,且明显的增加软件的可读性,便于改进和扩充,以研制出规模更大,性能更完备的系统。而且采用c语言也不必对单片机和硬件接口的结构有很深入的了解,编译器可以自动完成变量的存储单元的分配.采用c语言

21、可以很容易地进行单片机的程序移植工作4。主程序流程图如图3-2-6所示。3-2-6主程序流程图4 电路仿真本次设计使用的仿真软件为Protues. Proteus ISIS是英国Labcenter公司开发的电路分析与实物仿真软件。它运行于Windows操作系统上,可以仿真、分析(SPICE)各种模拟器件和集成电路,该软件的特点是:实现了单片机仿真和SPICE电路仿真相结合。具有模拟电路仿真、数字电路仿真、单片机及其外围电路组成的系统的仿真、RS232动态仿真、I2C调试器、SPI调试器、键盘和LCD系统仿真的功能;有各种虚拟仪器,如示波器、逻辑分析仪、信号发生器等。支持主流单片机系统的仿真。目

22、前支持的单片机类型有:68000系列、8051系列、AVR系列、PIC12系列、PIC16系列、PIC18系列、Z80系列、HC11系列以及各种外围芯片。提供软件调试功能。在硬件仿真系统中具有全速、单步、设置断点等调试功能,同时可以观察各个变量、寄存器等的当前状态,因此在该软件仿真系统中,也必须具有这些功能;同时支持第三方的软件编译和调试环境,如Keil C51 uVision2等软件。具有强大的原理图绘制功能。总之,该软件是一款集单片机和SPICE分析于一身的仿真软件7。仿真电路图如图4-1。4-1Protues仿真电路图 5 调试调试分为硬件调试和软件调试1。硬件调试时将加工的印制板认真对

23、照原理图,看两者是否一致。应特别注意电源系统检查,以防止电源短路和极性错误,并重点检查系统总线(地址总线、数据总线和控制总线)是否存在相互之间短路或与其它信号线路短路。必要时通电前,一定要检查电源电压的幅值和极性利用数字万用表的短路测试功能,可以缩短排错时间。确认各元器件可以正常工作。软件调试利用软件编程的方法来实现。51系列单片机的信号线大体分为读、写信号线、片选信号线、时钟信号线、外部程序存贮器读选通信号(PSEN)、地址锁存信号(ALE)、复位信号等几大类。这些信号大多属于脉冲信号,对于脉冲信号借助示波器(这里指通用示波器)用常规方法很难观测到,必须采取一定措施才能观测到。因此要使用一些

24、简单的调试程序来确定硬件的组装是否正确、功能是否完整。在调试过程中,出现数码管显示过暗的情况,通过查资料和咨询同学,得知出现此种情况是由于单片机驱动电流过低所致,可添加锁存器,使其有较大的驱动电流。而且设置锁存器可以使显示的数据稳定,不会由于周期性的清零信号而不断闪烁。6 心得体会通过这次课程设计,使我得到了一次用专业知识、专业技能分析和解决问题全面系统的锻炼。使我在单片机的基本原理、单片机应用系统开发过程,以及在常用编程设计思路技的掌握方面都能向前迈了一大步。本次课程设计的过程是艰辛的,不过收获却是很大的。综合课程设计让我把以前学习到的知识得到巩固和进一步的提高认识,对已有知识有了更进一步的

25、理解和认识。在此,由于自身能力有限,在课程设计中碰到了很多的问题,我通过查阅相关书籍、资料以及和周围同学交流使问题得到解决。通过这次单片机课程设计,我不仅加深了对单片机理论的理解,将理论很好地应用到实际当中去,而且我还学会了如何去培养我们的创新精神,从而不断地战胜自己,超越自己。创新可以是在原有的基础上进行改进,使之功能不断完善,成为自己的东西。由于使用的是单片机作为核心的控制元件,使得电路的可靠性比较高,功能也比较强大,而且可以随时的更新系统,进行不同状态的组合。当然,通过这次课程设计,我也发现了自身的很多不足之处,在以后的学习中,我会不断的完善自我。在此次课程设计中,同学给予了很大的帮助,

26、对其表示深深地感谢。参考文献 1何立民MCS51系列单片机应用系统计北京:北京航空航天大学出版社1999.6 2韩建,马静. 单片的原理及应用. 北京:中国计量出版社.2006.9 3 杨欣, 王玉凤 ,刘湘黔51单片机应用从零开始. 北京:清华大学出版社.2008.14 周坚单片机C语言轻松入门. 北京:北京航空航天大学出版社. 2006.15 于永 等51单片机C语言常用模块与综合系统设计实例精讲. 北京:电子工业出版社. 2007.46 楼然苗 李光飞单片机课程设计指导. 北京:北京航空航天大学出版社.2007.17 周润景, 张丽娜, 刘印群. PROTEUS入门实用教程. 北京: 机

27、械工业出版社.2007.9附录1 元件清单元件数量51型号单片机AT89S52174HC573N锁存器1瓷片电容33F2 电解电容10F电阻2.2K6 10K210K排阻112MHz晶振1LED灯6 (红2,黄2,绿2)共阴2位八段数码管2单片机底座1锁存器底座1按钮开关1排针若干附录2 源程序/*液晶引脚定义*/#define dis_data P0 / 数据总线定义#define dis_ctr P2/*键盘引脚定义*/sbit key1=P10;sbit key2=P11; sbit key3=P12;sbit key4=P13;/*蜂鸣器引脚定义*/#define led P3sbit

28、 red_a=P30;sbit red_b=P33;sbit green_a=P32;sbit green_b=P35;sbit yellow_a=P31;sbit yellow_b=P34;/*变量定义*/unsigned char dis_time,dis_time_a,dis_time_b; /定义时间存储变量unsigned char red_time_a,red_time_b,yellow_time; /定义时间存储变量unsigned int count;/定时器中断计数器bit flag_r,flag_g,frq; unsigned char set_in;/闹钟设置标志unsi

29、gned char code dis_code10= 0x3f, 0x06, 0x5b, 0x4f, 0x66, 0x6d, 0x7d, 0x07, 0x7f, 0x6f;#include #include void initial();void led_con();void check_key();void display(unsigned char n);void flash(unsigned char n);main() initial(); while(1) if(dis_time=5) flag_g=1;else flag_g=0; if(dis_time=0) if(flag_r=

30、1) dis_time=red_time_a;else dis_time=red_time_b;flag_r=flag_r; led_con(); check_key(); display(0); /*初始化函数*/void initial() led=0xff; /时间初始化 red_time_a=30; red_time_b=30; yellow_time=5; dis_time=30; red_a=0; green_b=0; flag_g=0; flag_r=1; set_in=0; /定时器初始化 TMOD=0x02; /使用定时器模式2 EA=1; /开启定时器中断 ET0=1; I

31、P=0x00; /中断优先级设置 TH0=56; /装载初值定时200us TL0=56; TR0=1; /开启定时器/*LED灯控制函数*/void led_con() if(flag_r) red_a=0;red_b=1;green_a=1;yellow_a=1;if(flag_g) if(count2500) yellow_b=0;else yellow_b=1; green_b=1; else yellow_b=1;green_b=0; else red_b=0;red_a=1;green_b=1;yellow_b=1;if(flag_g) if(count0;i-) display(

32、0); if(!(key1&key2&key3&key4) break; for(i=80;i0;i-) display(n); if(!(key1&key2&key3&key4) break;/*显示函数*/void delay();void display(unsigned char n) if(!set_in) dis_ctr=0xfe;dis_data=dis_codedis_time/10;delay();dis_data=0x00;dis_ctr=0xfd;dis_data=dis_codedis_time%10;delay();dis_data=0x00;dis_ctr=0xfb

33、;dis_data=dis_codedis_time/10;delay();dis_data=0x00;dis_ctr=0xf7;dis_data=dis_codedis_time%10;delay();dis_data=0x00; else if(n=0) dis_ctr=0xfe; dis_data=dis_codered_time_a/10; delay(); dis_data=0x00; dis_ctr=0xfd; dis_data=dis_codered_time_a%10; delay(); dis_data=0x00; dis_ctr=0xfb; dis_data=dis_cod

34、ered_time_b/10; delay(); dis_data=0x00; dis_ctr=0xf7; dis_data=dis_codered_time_b%10; delay(); dis_data=0x00; else if(n=1) dis_ctr=0xfe; dis_data=0x00; delay(); dis_ctr=0xfd; dis_data=0x00; delay(); dis_ctr=0xfb; dis_data=dis_codered_time_b/10; delay(); dis_data=0x00; dis_ctr=0xf7; dis_data=dis_code

35、red_time_b%10; delay(); dis_data=0x00; else dis_ctr=0xfe; dis_data=dis_codered_time_a/10; delay(); dis_data=0x00; dis_ctr=0xfd; dis_data=dis_codered_time_a%10; delay(); dis_data=0x00; dis_ctr=0xfb; dis_data=0x00; delay(); dis_ctr=0xf7; dis_data=0x00; delay(); void delay() unsigned char i,j; for(i=2;i0;i-) for(j=110;j0;j-); /*定时器中断程序*/void timer0()interrupt 1 count+; if(count=5000) count=0; dis_time-; 本科生课程设计成绩评定表姓 名刘变性 别 女专业、班级电子科学与技术0803班课程设计题目: 交通信号灯控制器的设计 课程设计答辩或质疑记录:成绩评定依据:最终评定成绩(以优、良、中、及格、不及格评定)指导教师签字: 年 月 日

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号