《大工18秋《单片机原理及应用》大作业题目及要求【标准答案】.pdf》由会员分享,可在线阅读,更多相关《大工18秋《单片机原理及应用》大作业题目及要求【标准答案】.pdf(15页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、网络教育学院网络教育学院单片机原理及应用大作业单片机原理及应用大作业题题目目:交通灯控制系统设计学习中心:学习中心:XXX层层次:次:XXX专专业:业:XXX年年级:级:XXX学学号:号:XXX学生姓名:学生姓名:XXX交通灯控制系统设计交通灯控制系统设计一、课题背景一、课题背景由于我国经济的快速发展从而导致了汽车数量的猛增,大中型城市的城市交通,正面临着严峻的考验,从而导致交通问题日益严重,其主要表现如下:交通事故频发,对人类生命安全造成极大威胁;交通拥堵严重,导致出行时间增加,能源消耗加大;空气污染和噪声污染程度日益加深等。日常的交通堵塞成为人们司空见惯而又不得不忍受的问题,在这种背景下,
2、结合我国城市道路交通的实际情况,开发出真正适合我们自身特点的智能信号灯控制系统已经成为当前的主要任务。随着电子技术的发展,利用单片机技术对交通灯进行智能化管理,已成为目前广泛采用的方法。二、交通灯的发展二、交通灯的发展1868 年 12 月 10 日,信号灯家族的第一个成员就在伦敦议会大厦的广场上诞生了,由当时英国机械师德哈特设计、制造的灯柱高 7 米,身上挂着一盏红、绿两色的提灯-煤气交通信号灯,这是城市街道的第一盏信号灯。1914 年,在美国的克利夫兰市才率先恢复了红绿灯,不过,这时已是“电气信号灯”。稍后又在纽约和芝加哥等城市,相继重新出现了交通信号灯。随着各种交通工具的发展和交通指挥的
3、需要,第一盏名副其实的三色灯(红、黄、绿三种标志)于 1918 年诞生。它是三色圆形四面投影器,被安装在纽约市五号街的一座高塔上,由于它的诞生,使城市交通大为改善。中国最早的马路红绿灯,是于 1928 年出现在上海的英租界。三、交通灯控制系统工作原理三、交通灯控制系统工作原理本系统运用单片机对交通灯控制系统实施控制,通过直接控制信号灯的状态变化,指挥交通的具体运行,运用了 LED 数码管显示倒计时以提醒行驶者,更添加了盲人提示音电路,方便视力障碍群体通行,更具人性化。在此基础上,加入了特种车辆自动通行控制模块和车流量检测电路为系统采集数据,经单片机进行具体处理,及时调整通行方向。由此,本设计系
4、统以单片机为控制核心,构成最小系统,根据特种车辆自动通行控制模块、车辆检测模块和按键设置模块等产生输入,由信号灯状态模块,LED 倒计时模块和盲人提示音模块输出7。系统进入工作状态,LED 数码管实时显示数据倒计时,执行交通灯状态显示控制,在此过程中若有控制信号和实时车流量检测信号,可对异常状态进行实时控制,随时调用中断,达到修正通行时间满足不同时间不同路况的需求。四、AT89C51 单片机特点AT89C51 是一种带 4K 字节闪存可编程可擦除只读存储器(FPEROMFlashProgrammable and Erasable Read Only Memory)的低电压、高性能 CMOS 8
5、 位微处理器,俗称单片机。AT89C2051 是一种带 2K 字节闪存可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除 1000 次。该器件采用ATMEL 高密度非易失存储器制造技术制造,与工业标准的 MCS-51 指令集和输出管脚相兼容。由于将多功能8 位 CPU 和闪烁存储器组合在单个芯片中,ATMEL 的AT89C51 是一种高效微控制器,AT89C2051 是它的一种精简版本。AT89C 单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。主要特性:与 MCS-51 兼容4K 字节可编程闪烁存储器寿命:1000 写/擦循环数据保留时间:10 年全静态工作:0H
6、z-24MHz三级程序存储器锁定1288 位内部 RAM32 可编程 I/O 线两个 16 位定时器/计数器5 个中断源可编程串行通道低功耗的闲置和掉电模式片内振荡器和时钟电路五、五、AT89C51AT89C51 的引脚功能的引脚功能AT89C51 为双列直插(DIP)式封装的 51 单片机芯片,有 40 条引脚,其引脚示意及功能分类如图 3.2 所示。图 3.2 89C51 单片机引脚图各引脚功能说明如下:(1)主电源引脚 Vcc(40 脚):接+5(120)V 电源正端;Vss(20 脚):接地。(2)I/O 引脚P0 口(3932 脚):P0.0P0.7 统称为 P0 口。P0 口是一组
7、 8 位漏极开路型双向I/O 口,分时复用为低 8 位地址总线和双向数据总线。作为输出口用时,每位能吸收电流的方式驱动 8 个逻辑门电路,对端口P0 写“1”时,可作为高阻抗输入端用。在访问外部数据存储器时,这组端口线分时转换地址(低8 位)和数据总线复用,在访问期间激活内部上拉电阻。在 FLASH 编程时,P0 口作为原码输入口,当 Flash 进行校验时,P0 口输出原码,此时 P0 外部必须被拉高。P1口(18脚):P1.0P1.7统称为P1口,可作为准双向I/O口使用。P1是一个带内部上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。对端口写“1”,通过内部的上拉电阻把
8、端口拉到高电平,此时可作输入口。P1口被外部下拉为低电平时,输出电流,是因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流。在Flash编程和校验时,P1口作为第八位地址接收。P2 口(2128 脚):P2.0P2.7 统称为 P2 口,一般作为准双向 I/O 使用。P2是一个带内部上拉电阻的 8 位双向 I/O 口。P2 的输出缓冲器可驱动 4 个 TTL 逻辑门电路。当对 P2 端口写“1”时,内部的上拉电阻把端口拉到高电平,此时可作输入口。作输入口使用时,由于内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。在接有片外存储器或扩展 I/O 口且寻址范围超过 2
9、56B时,P2 口用作高 8 位地址总线。当给出地址为“1”时,它就利用内部上拉优势,当对外部八位地址数据存储器进行读/写时,P2 口便输出其特殊功能寄存器的内容。在 FLASH 编程和校验时,P2 口接收高八位地址信号和控制信号。P3 口(1017 脚):P3.0P3.7 统称为 P3 口。P3 口是一组带有内部上拉电阻的 8 位双向 I/O 口。P3 口的输出缓冲器可驱动 4 个 TTL 逻辑门电路接收输出电流。当 P3 口写“1”时,通过内部的上拉电阻上拉为高电平并作为输入口。此时由于外部下拉为低电平,P3 口将输出电流(IIL)。除作为准双向I/O 口使用外,还可以将每一位用于第二功能
10、,而且 P3 口的每一条引脚均可独立定义为第一功能的输入输出或第二功能。P3 口第二功能祥见表 3.1:表 3.1 P3 口第二功能表口线P3.0P3.1P3.2P3.3P3.4P3.5P3.6P3.7第二功能RXDTXD信号名称串行数据接受串行数据发送外中断 0 申请外中断 1 申请定时器/计数器 0 计数输入定时器/计数器 1 计数输入外部数据存储器写选通外部数据存储器读选通I N T 0I N T 1T0T1W RR D(3)外接晶体引脚XTAL1(19 脚):它在单片机内部是一个反向放大器的输入端,构成了片内振荡器。当采用外部时钟时,HMOS 单片机的该引脚应接地;CHMOS 单片机的
11、该引脚作为外部振荡信号的输入端。XTAL2(18 脚):它在单片机内部是片内振荡器的反向放大器的输出端。当采用外部时钟时,HMOS 单片机的该引脚作为外部振荡信号的输入端;CHMOS 单片机的该引脚应悬空不接。(4)控制线ALE/P R O G(30 脚):地址锁存允许/编程信号。在访问片外程序存储器期间,此信号可用于控制锁存 P0 输出地址总线的低 8 位,ALE 以每机器周期两次进行信号输出;在 FLASH 编程期间,此引脚用作编程脉冲P R O G的输入端。在平时,ALE 端以不变的频率周期输出正脉冲信号,此频率为振荡器频率 fosc的 1/6,可作为对外输出的时钟脉冲或用于定时目的。但
12、要注意的是:在访问片外数据存储器期间,ALE 脉冲会跳空一个。若想禁止 ALE 的输出可在 SFR8EH 地址上置 0。此时,ALE 执行 MOVX,MOVC 指令使 ALE 起作用。另外,该引脚将被略微拉高。如果微处理器在外部执行状态 ALE 禁止,置位无效。P S E N(29 脚):片外程序存储器读选通信号输出端,低电平有效。在由外部程序存储器读取指令或常数期间,每个机器周期内P S E N两次有效,P0 口读回指令或常数。当访问内部程序存储器时,P S E N信号不跳变。RST/VPD(9 脚):RST 即 RESET,VPD为备用电源,该引脚为单片机的上电复位或掉电保护端。当单片机振
13、荡器工作时,该引脚上出现持续两个机器周期的高电平,就可实现复位操作,使单片机回复到初始状态。上电时,考虑到振荡器有一定的起振时间,该引脚上高电平必须持续 10ms 以上才能保证有效复位。当 VCC发生故障,降低到低电平规定值或掉电时,该引脚可接上备用电源 VPD(+5V)为内部 RAM 供电,以保证 RAM 中的数据不丢失。E A/VPP(30 脚):E A 为片外程序存储器选用端,访问内部程序存储器控制信号。当 E A 端接高电平时,CPU 访问内部程序存储器。当 E A 接低电平时,则在此期间外部程序存储器(0000H-FFFFH),则强调 CPU 访问外部存储器,而不管程序计数器的内容是
14、多少。此外,该引脚还用做 EPROM 编程电压的输入端。在编程期间,此引脚用作 21V 编程电源 VPP的输入端。六六 交通灯控制系统的总体方案设计交通灯控制系统的总体方案设计该交通灯控制系统有以下几个部分组成:车辆检测、紧急控制、单片机、驱动和显示电路6。如图所示:P1车辆检测电路南北通行灯P2AT89C51P0RSTP3东西通行灯上电复位3 位 LED 显示器自动/手动键盘LED 驱动器系统硬件组成总框图(一)交通灯控制系统硬件设计(一)交通灯控制系统硬件设计(1 1)系统硬件组成及原理图)系统硬件组成及原理图根据要实现的具体功能,经过比较,我选用 AT89C51 单片机及外围器件构成最小
15、控制系统,4 组双色灯构成信号灯指示模块,东西南北方向分别构成倒计时显示模块,CCD 采集车辆数量数据,红外线接收器接收中断信号,使实时中断来响应特种车辆的通行要求,接 LED 显示器8。硬件原理图如图 3.1 所示:单片机控制系统模块CCD二值化电路驱动电路时间显示模块硬件电路原理图(2)(2)各模块电路各模块电路1、车辆检测电路车辆检测电路如图所示。车辆检测电路2、通行灯输出控制道口指示灯电路如图所示。城市道口交通指示灯电路3、时间显示电路时间显示驱动电路如图所示。时间显示驱动电路4、LED 显示接口电路 LED 显示器结构图(二二)交通灯控制系统软件设计交通灯控制系统软件设计(1 1)软
16、件设计思路及流程图)软件设计思路及流程图主程序1 主程序流程图如图所示。开始初始化显示程序NP3.7=0?Y键功能程序主程序流程图 2 定时中断服务程序定时中断服务程序是用于行车及行人通行的通行指示,按通行的规律,红绿灯的控制转换逻辑如表所示。道口通行方式控制码数据表端口P.7P控制功能左拐红左拐绿直行红直行绿右拐红01111000/1111110011100/1120110s011070s07060s06010s1100s1南北方向.6P.5P.4P.3P.2P.1P.0右拐绿行人红行人绿10000/111100000/111道口控制字66H6AH6AH/7BH99H99H/DDhP.7P.
17、6P.5P.4左拐红左拐绿直行红直行绿右拐红右拐绿行人绿行人红00000111110000011111东西方向P.3P.2P.1P.00111110000/10000011111道口控制字55H99H59H59H59H/5DH通行规则如下:(1)南北方向的行车直行,各路右拐,南北向行人通行,设置南北向通行时间为 1min,且各路右拐比直行滞后 10s 放行。(2)南北方向的行车向左拐,各路右拐,行人禁止通行。通行时间为 1min。(3)东西方向的行车直行,各路右拐,东西方向的行人通行。东西方向通行时间为 1min,且各路右拐比直行要滞后 20s 放行。(4)东西方向的行车向左拐,各路右拐,行人
18、禁止通行。通行时间为 1min。上述的 4 种交通规则是通过控制红绿灯端口送控制码的方式来实现。其原理是根据不同规则通行时各路口的红绿灯亮灭情况转换为单片机端口的控制码。指示灯功能通过 T0 定时中断服务程序实现。定时器 T0 定时溢出的中断周期设为50ms,中断累计 20 次时对 120s 倒计时单元进行减 1 操作。本设计中将 4 种通行规则分成几种不同的亮灯方式,通过查询秒倒计时单元的数据,以实现在不同的时间段给控制端口送不同的控制数据码。控制码分为 120s110s、110s70s、70s60s、60s10s、10s0s 这 5 个时间段。交通灯管理定时功能程序流程图如图所示。T0 中
19、断程序现场保护关中断 T0T0 初值重装MOV SN,#66HMOV EW,#55HMOV SN,#6AHMOV EW,#59HTIME110?YTIME70?YTIME60?YTIME10?YTIME=0?Y东西或南北标志位取反NNNMOV SN,#6AHMOV EW,#59HMOV SN,#99HMOV EW,#59HMOV SN,#99HMOV EW,#59HNN中断返回 T0 定时中断服务程序流程图3车辆检测中断服务程序车辆检测中断流程图如图所示。中断响应南北方向红灯还剩 2s时读入该方向的路况现场保护东西方向红灯还剩 2s时读入该方向的路况关外中断东西方向车数量=南北方向车数量?YN
20、关定时器,开外中断开启定时器相应方向通行时间增加中断返回车辆检测中断流程图七、设计心得七、设计心得随着经济的飞速发展,交通灯控制在交通运输领域发挥着越来越重要的作用。本文主要论述了基于 AT89C51 单片机的智能交通灯控制系统,虽然智能交通灯控制系统已经取得不少成就,且道路相对好的地方,传统的固定时间的交通灯控制还是有一定的作用。但随着城市化日益完善,车的数量也在快速的增加。此时,可以根据现实的交通状况实时改变通行时间的智能交通将可起到疏导交通,提高运输效率,改善城市交通环境,推动城市化日益完善。本文完成过程中,要做的工作有:(1)确定交通控制系统的通行方案,规定各个方向行车的通行时间及分配
21、。(2)以 ATMEL 公司的 AT89C51 单片机为系统硬件的设计核心,输入量有:车流量、特种车辆自动通行信号、定时中断;输出量控制交通灯信号灯亮灭状态、时间、LED 倒计时显示及盲人语音提示。(3)车流量检测采用模糊控制的方法,通过对数学模型进行清晰化、具体化,经单机控制器的相关算法与处理确定红绿灯的亮灭时间。(4)运用汇编语言对系统进行软件编程,为了便于编写、调试、修改和增减,系统软件的编写采用模块化的设计方法。参考文献参考文献1郑思铭等.交通灯的一种新型智能控制系统.广东自动话与信息工程,2006(2):16-182陈森发等.城市主干道交通信号灯模糊线控制的探讨.运筹与管理,1998,7(1):35-413 查 振 业,叶 信 阳.智 能 交 通 灯 控 制 系 统.华 中 理 工 大 学 学报,1997,25(2):63-654姚林芳.交通灯智能控制系统的设计与实现.计算机工程应用技术,2008,(5):1234-12375郑建光等.基于 AT89C51 单片机的交通灯控制系统设计.自动化与仪器仪表,2008,(6):30-33