交通灯51单片机课程设计.docx

上传人:b****5 文档编号:8842488 上传时间:2023-05-15 格式:DOCX 页数:20 大小:419.71KB
下载 相关 举报
交通灯51单片机课程设计.docx_第1页
第1页 / 共20页
交通灯51单片机课程设计.docx_第2页
第2页 / 共20页
交通灯51单片机课程设计.docx_第3页
第3页 / 共20页
交通灯51单片机课程设计.docx_第4页
第4页 / 共20页
交通灯51单片机课程设计.docx_第5页
第5页 / 共20页
交通灯51单片机课程设计.docx_第6页
第6页 / 共20页
交通灯51单片机课程设计.docx_第7页
第7页 / 共20页
交通灯51单片机课程设计.docx_第8页
第8页 / 共20页
交通灯51单片机课程设计.docx_第9页
第9页 / 共20页
交通灯51单片机课程设计.docx_第10页
第10页 / 共20页
交通灯51单片机课程设计.docx_第11页
第11页 / 共20页
交通灯51单片机课程设计.docx_第12页
第12页 / 共20页
交通灯51单片机课程设计.docx_第13页
第13页 / 共20页
交通灯51单片机课程设计.docx_第14页
第14页 / 共20页
交通灯51单片机课程设计.docx_第15页
第15页 / 共20页
交通灯51单片机课程设计.docx_第16页
第16页 / 共20页
交通灯51单片机课程设计.docx_第17页
第17页 / 共20页
交通灯51单片机课程设计.docx_第18页
第18页 / 共20页
交通灯51单片机课程设计.docx_第19页
第19页 / 共20页
交通灯51单片机课程设计.docx_第20页
第20页 / 共20页
亲,该文档总共20页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

交通灯51单片机课程设计.docx

《交通灯51单片机课程设计.docx》由会员分享,可在线阅读,更多相关《交通灯51单片机课程设计.docx(20页珍藏版)》请在冰点文库上搜索。

交通灯51单片机课程设计.docx

交通灯51单片机课程设计

 

课程设计说明书

 

课程设计名称:

微机原理与接口技术A课程设计

课程设计题目:

交通灯

学院名称:

信息工程学院

专业:

班级:

学号:

姓名:

教师:

评分:

2014年1月14日

摘要1

1.引言2

2.总体设计方案3

2.1.设计思路3

2.1.1.设计目的3

2.1.2.设计任务和内容3

2.1.3.方案比较、设计与论证4

2.1.4.芯片简介6

3.电路模块11

3.1.LED数码管显示模块12

3.2.LED红黄绿灯显示模块13

3.3.晶振电路13

4.小结14

5.参考文献15

6.附录16

6.1.附录1:

程序清单16

6.2.附录2:

电路设计总图19

6.3.附录3:

PCB图20

6.4附录4:

实物图20

摘要

随着社会经济的发展,城市问题越来越引起人们的关注。

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

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

十字路口车辆穿梭,行人熙攘,车行车道,人行人道,有条不紊。

那么靠什么来实现这井然秩序呢?

靠的就是交通信号灯的自动指挥系统。

交通灯的控制方式很多,本系统采用可编程并行I/O接口芯片8255A为中心器件来设计交通灯控制器,实现本系统的各种功能。

同时,本系统实用性强,操作简单。

本设计系统由单片机I/O口扩展系统、交通灯状态显示系统、LED数码显示系统、复位电路等几大部分组成。

系统除基本的交通灯功能外,还具有倒计时等功能,较好的模拟实现了十字路口可能出现的状况。

软件上采用C51编程,主要编写了主程序,LED指示灯,LED数码管显示程序等。

经过整机调试,实现了对十字路口交通灯的模拟。

关键字:

AT89S52交通灯LED数码管倒计时

1.引言

当今,红绿灯安装在各个道口上,已经成为疏导交通车辆最常见和最有效的手段。

但这一技术在19世纪就已出现了。

1858年,在英国伦敦主要街头安装了以燃煤气为光源的红,蓝两色的机械扳手式信号灯,用以指挥马车通行。

这是世界上最早的交通信号灯。

1868年,英国机械工程师纳伊特在伦敦威斯敏斯特区的议会大厦前的广场上,安装了世界上最早的煤气红绿灯。

它由红绿两以旋转式方形玻璃提灯组成,红色表示“停止”,绿色表示“注意”。

1869年1月2日,煤气灯爆炸,使警察受伤,遂被取消。

电气启动的红绿灯出现在美国,这种红绿灯由红绿黄三色圆形的投光器组成,1914年始安装于纽约市5号大街的一座高塔上。

红灯亮表示“停止”,绿灯亮表示“通行”。

1918年,又出现了带控制的红绿灯和红外线红绿灯。

带控制的红绿灯,一种是把压力探测器安在地下,车辆一接近红灯便变为绿灯;另一种是用扩音器来启动红绿灯,司机遇红灯时按一下嗽叭,就使红灯变为绿灯。

红外线红绿灯当行人踏上对压力敏感的路面时,它就能察觉到有人要过马路。

红外光束能把信号灯的红灯延长一段时间,推迟汽车放行,以免发生交通事故。

信号灯的出现,使交通得以有效管制,对于疏导交通流量、提高道路通行能力,减少交通事故有明显效果。

1968年,联合国《道路交通和道路标志信号协定》对各种信号灯的含义作了规定。

绿灯是通行信号,面对绿灯的车辆可以直行,左转弯和右转弯,除非另一种标志禁止某一种转向。

左右转弯车辆都必须让合法地正在路口内行驶的车辆和过人行横道的行人优先通行。

红灯是禁行信号,面对红灯的车辆必须在交叉路口的停车线后停车。

黄灯是警告信号,面对黄灯的车辆不能越过停车线,但车辆已十分接近停车线而不能安全停车时可以进入交叉路口。

2.总体设计方案

2.1.设计思路

2.1.1.设计目的

(1)加强对单片机和汇编语言的认识,充分掌握和理解设计各部分的工作原理、设计过程、选择芯片器件、模块化编程等多项知识。

(2)用单片机模拟实现具体应用,使个人设计能够真正使用。

(3)把理论知识与实践相结合,充分发挥个人能力,并在实践中锻炼。

(4)提高利用已学知识分析和解决问题的能力。

(5)提高实践动手能力。

2.1.2.设计任务和内容

2.1.2.1.设计任务

单片机采用用AT89S52芯片,使用发光二极管(红,黄,绿)代表各个路口的交通灯,用7段数码管对转换时间进行倒时(东西路口20秒,南北路口30秒,黄灯时间3秒)。

2.1.2.2.设计内容

(1)设计并绘制硬件电路图

(2)制作PCB并焊接好元器件

(3)编写程序并将调试好的程序固化到单片机中

2.1.3.方案比较、设计与论证

2.1.3.1.电源提供方案

为使模块稳定工作,须有可靠电源,采用单片机控制模块提供电源。

此方案的优点是系统简明扼要,节约成本;缺点是输出功率不高。

2.1.3.2.复位方案

复位方式有两种:

按键复位与软件复位。

由考虑到程序的简洁,避免冗长,本设计采用按键复位,在芯片的复位端口外接复位电路,通过按键对单片机输入一个高电平脉冲,达到复位的目的。

2.1.3.3.输入方案

方案一:

采用89S52扩展I/O口及键盘,显示等。

该方案的优点是:

使用灵活可编程,并且有RAM,及计数器。

若用该方案,可提供较多I/O口,但操作起来稍显复杂。

方案二:

直接在IO口线上接上按键开关。

因为设计时精简和优化了电路,所以剩余的口资源还比较多,我们使用2个按键,分别是K1、K2。

由于该系统对于交通灯及数码管的控制,只用单片机本身的I/O口就可实现,且本身的计数器及RAM已经够用,故选择方案二

2.1.3.4.显示界面方案

该系统要求完成倒计时、状态灯等功能。

基于上述原因,我们考虑了三种方案:

方案一:

完全采用数码管显示。

这种方案只显示有限的符号和数码字符,无法胜任题目要求。

方案二:

完全采用点阵式LED显示。

这种方案实现复杂,且须完成大量的软件工作;但功能强大,可方便的显示各种英文字符,汉字,图形等。

方案三:

采用数码管与点阵LED(点阵式和8段式LED)相结合的方法因为设计既要求倒计时数字输出,又要求有状态灯输出等,为方便观看并考虑到现实情况,用数码管与LED灯分别显示时间与提示信息。

这种方案既满足系统功能要求,又减少了系统实现的复杂度。

权衡利弊,第三种方案可互补一二方案的优缺,我们决定采用方案三以实现系统的显示功能。

设计方框图

整个设计以AT89S52单片机为核心,由数码管显示,LED数码管显示,复位电路组成。

2.1.4.芯片简介

1.AT89S52单片机简介

其引DIP封装的脚图如下:

  主要性能:

  与MCS-51单片机产品兼容、8K字节在系统可编程Flash存储器、1000次擦写周期、全静态操作:

0Hz~33Hz、三级加密程序存储器、32个可编程I/O口线、三个16位定时器/计数器八个中断源、全双工UART串行通道、低功耗空闲和掉电模式、掉电后中断可唤醒、看门狗定时器、双数据指针、掉电标识符。

  功能特性描述

  At89s52是一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程Flash存储器。

使用Atmel公司高密度非易失性存储器技术制造,与工业80C51产品指令和引脚完全兼容。

片上Flash允许程序存储器在系统可编程,亦适于常规编程器。

在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使得AT89S52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。

AT89S52具有以下标准功能:

8k字节Flash,256字节RAM,32位I/O口线,看门狗定时器,2个数据指针,三个16位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。

另外,AT89S52可降至0Hz静态逻辑操作,支持2种软件可选择节电模式。

空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。

掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。

8位微控制器8K字节在系统可编程FlashAT89S52

  P0口:

P0口是一个8位漏极开路的双向I/O口。

作为输出口,每位能驱动8个TTL逻

  辑电平。

对P0端口写“1”时,引脚用作高阻抗输入。

  当访问外部程序和数据存储器时,P0口也被作为低8位地址/数据复用。

在这种模式下,

  P0具有内部上拉电阻。

  在flash编程时,P0口也用来接收指令字节;在程序校验时,输出指令字节。

程序校验

  时,需要外部上拉电阻。

  P1口:

P1口是一个具有内部上拉电阻的8位双向I/O口,p1输出缓冲器能驱动4个

  TTL逻辑电平。

对P1端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入

  口使用。

作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。

  此外,P1.0和P1.2分别作定时器/计数器2的外部计数输入(P1.0/T2)和时器/计数器2

  的触发输入(P1.1/T2EX),具体如下表所示。

  在flash编程和校验时,P1口接收低8位地址字节。

  引脚号第二功能

  P1.0T2(定时器/计数器T2的外部计数输入),时钟输出

  P1.1T2EX(定时器/计数器T2的捕捉/重载触发信号和方向控制)

  P1.5MOSI(在系统编程用)

  P1.6MISO(在系统编程用)

  P1.7SCK(在系统编程用)

  P2口:

P2口是一个具有内部上拉电阻的8位双向I/O口,P2输出缓冲器能驱动4个

  TTL逻辑电平。

对P2端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入

  口使用。

作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。

  在访问外部程序存储器或用16位地址读取外部数据存储器(例如执行MOVX@DPTR)

  时,P2口送出高八位地址。

在这种应用中,P2口使用很强的内部上拉发送1。

在使用

  8位地址(如MOVX@RI)访问外部数据存储器时,P2口输出P2锁存器的内容。

  在flash编程和校验时,P2口也接收高8位地址字节和一些控制信号。

  P3口:

P3口是一个具有内部上拉电阻的8位双向I/O口,p2输出缓冲器能驱动4个

  TTL逻辑电平。

对P3端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入

  口使用。

作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。

  P3口亦作为AT89S52特殊功能(第二功能)使用,如下表所示。

  在flash编程和校验时,P3口也接收一些控制信号。

  端口引脚第二功能

  P3.0RXD(串行输入口)

  P3.1TXD(串行输出口)

  P3.2INTO(外中断0)

  P3.3INT1(外中断1)

  P3.4TO(定时/计数器0)

  P3.5T1(定时/计数器1)

  P3.6WR(外部数据存储器写选通)

  P3.7RD(外部数据存储器读选通)

  此外,P3口还接收一些用于FLASH闪存编程和程序校验的控制信号。

  RST——复位输入。

当振荡器工作时,RST引脚出现两个机器周期以上高电平将是单片机复位。

  ALE/PROG——当访问外部程存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8位字节。

一般情况下,ALE仍以时钟振荡频率的1/6输出固定的脉冲信号,因此它可对外输出时钟或用于定时目的。

要注意的是:

每当访问外部数据存储器时将跳过一个ALE脉冲。

  对FLASH存储器编程期间,该引脚还用于输入编程脉冲(PROG)。

  如有必要,可通过对特殊功能寄存器(SFR)区中的8EH单元的D0位置位,可禁止ALE操作。

该位置位后,只有一条MOVX和MOVC指令才能将ALE激活。

此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置ALE禁止位无效。

  PSEN——程序储存允许(PSEN)输出是外部程序存储器的读选通信号,当AT89C52由外部程序存储器取指令(或数据)时,每个机器周期两次PSEN有效,即输出两个脉冲,在此期间,当访问外部数据存储器,将跳过两次PSEN信号。

  EA/VPP——外部访问允许,欲使CPU仅访问外部程序存储器(地址为0000H-FFFFH),EA端必须保持低电平(接地)。

需注意的是:

如果加密位LB1被编程,复位时内部会锁存EA端状态。

  如EA端为高电平(接Vcc端),CPU则执行内部程序存储器的指令。

  FLASH存储器编程时,该引脚加上+12V的编程允许电源Vpp,当然这必须是该器件是使用12V编程电压Vpp。

3.电路模块

 

硬件模块入图:

 

3.1LED数码管显示模块

3.2LED红黄绿灯显示模块

3.3晶振(12M)电路

       

4.小结

通过这次课程设计,使我得到了一次用专业知识、专业技能分析和解决问题全面系统的锻炼。

使我在单片机的基本原理、单片机应用系统开发过程,以及在常用编程设计思路技巧(特别是汇编语言)的掌握方面都能向前迈了一大步。

本次课程设计的过程是艰辛的,不过收获却是很大的。

综合课程设计让我把以前学习到的知识得到巩固和进一步的提高认识,对已有知识有了更进一步的理解和认识。

在此,由于自身能力有限,在课程设计中碰到了很多的问题,我通过查阅相关书籍、资料以及和周围同学交流。

由于使用的是单片机作为核心的控制元件,使得电路的可靠性比较高,功能也比较强大,而且可以随时的更新系统,进行不同状态的组合。

但是在我们设计和调试的过程中,也发现了一些问题,譬如红灯和绿灯的切换还不够迅速,红绿灯规则不效率还不是很高等等,这需要在实践中进一步完善。

当然,通过这次课程设计,我也发现了自身的很多不足之处,在以后的学习中,我会不断的完善自我。

5.参考文献

[1].郑初华.汇编语言、微机原理及接口技术(第三版)

[2].李朝青.单片机原理及接口技术(第3版).2005年10月

[3].高洪志.MCS-51单片机原理及应用技术教程

[4].朱善军、孙新亚、吉永东.单片机接口技术与应用

[5].江太辉、石秀芳.MCS-51系列单片机原理与应用

 

6.附录

6.1附录1:

程序清单

;====================交通灯控制器==========================

JSEQU30H;东西路口计时寄存器

DXRBITP1.1;东西路口红灯

DXYBITP1.4;东西路口黄灯

DXGBITP1.7;东西路口绿灯

NBRBITP3.1;南北路口红灯

NBYBITP3.4;南北路口黄灯

NBGBITP3.7;南北路口绿灯

ORG0000H;START的起始地址

LJMPSTART

START:

MOVTMOD,#01H;置T0为工作方式1

MOVTH0,#3CH;置T0定时初值50ms

MOVTL0,#0B0H

CLRTF0

SETBTR0;启动T0

;**********************东西绿灯,南北红灯***********************

LOOP:

MOVR2,#20;置1s计数初值,50ms*20=1s

MOVR3,#10;灯亮10s

MOVJS,#13;东西路口计时显示初值13s

LCALLDISPLAY

SETBDXR;东西红灯灭---用于循环(WAIT4)后

SETBNBY;南北黄灯灭---用于循环(WAIT4)后

CLRDXG;东西路口绿灯亮

CLRNBR;南北路口红灯亮

WAIT1:

JNBTF0,WAIT1;查询50ms到否

//CLRTF0

MOVTH0,#3CH;恢复T0定时初值50ms

MOVTL0,#0B0H

DJNZR2,WAIT1;1s

MOVR2,#20;置50ms计数初值

DECJS;东西路口显示时间减1s

LCALLDISPLAY

DJNZR3,WAIT1;状态1维持20s

;*********************东西黄灯(闪),南北红灯(闪)**********************

MOVR2,#5;置50ms计数初值5*4=20

MOVR3,#3;灯闪3s

MOVR4,#4;闪一次200ms

LCALLDISPLAY

SETBDXG;东西绿灯灭

CLRDXY;东西路口黄灯闪

WAIT2:

JNBTF0,WAIT2;查询50ms到否

CLRTF0

MOVTH0,#3CH;恢复T0定时初值50ms

MOVTL0,#0B0H

DJNZR4,WAIT2;200ms

CPLDXY;东西黄灯反相

CPLNBR;南北红灯反相

MOVR4,#4;闪烁间隔200ms

DJNZR2,WAIT2;1s标志

MOVR2,#5;置50ms计数初值

DECJS;东西路口显示时间减1s

LCALLDISPLAY

DJNZR3,WAIT2;状态2维持3s

;********************东西红灯,南北绿灯***********************

MOVR2,#20;置50ms计数初值

MOVR3,#15;灯亮15s

MOVJS,#18;东西路口计时显示初值18s

LCALLDISPLAY

SETBDXY;东西黄灯灭

SETBNBR;南北红灯灭

WAIT3:

CLRDXR;东西红灯亮

CLRNBG;南北绿灯亮

JNBTF0,WAIT3;查询50ms到否

CLRTF0

MOVTH0,#3CH;恢复T0定时初值100ms

MOVTL0,#0B0H

DJNZR2,WAIT3;1s标记

MOVR2,#20;置50ms计数初值

DECJS;东西路口显示时间减1s

LCALLDISPLAY

DJNZR3,WAIT3;状态4维持20s

;*******************东西红灯(闪),南北黄灯(闪)************************

MOVR2,#5;置50ms计数初值

MOVR3,#3;总共闪3s

MOVR4,#4;灯闪一次20ms

;LCALLDISPLAY

SETBNBG;南北绿灯灭

CLRNBY;南北黄灯亮

CLRDXR;东西红灯亮

WAIT4:

JNBTF0,WAIT4;查询50ms到否

CLRTF0

MOVTH0,#3CH;恢复T0定时初值50ms

MOVTL0,#0B0H

DJNZR4,WAIT4;200ms

CPLNBY;反相,南北黄灯闪

CPLDXR;反相,东西红灯闪

MOVR4,#4;闪烁200ms

DJNZR2,WAIT4;1s

MOVR2,#5;置50ms计数初值

DECJS;东西路口显示时间减1s

LCALLDISPLAY

DJNZR3,WAIT4;状态5维持3s

LJMPLOOP;进入下一次循环

;*******************数码显示************************

DISPLAY:

MOVA,JS

MOVB,#10

DIVAB

MOVDPTR,#TAB

MOVCA,@A+DPTR

MOVP0,A;显示高位

MOVA,B

MOVCA,@A+DPTR

MOVP2,A;显示低位

RET

TAB:

DB3FH,06H,5BH,4FH,66H;0,1,2,3,4

DB6DH,7DH,07H,7FH,6FH;5,6,7,8,9

END

 

6.2附录2:

电路设计总图

6.3附录3:

PCB图

6.4附录4:

实物图

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

当前位置:首页 > 人文社科 > 法律资料

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

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