单片机控制交通灯课程设计
盐城工学院课程设计说明书(2013)单片机课程设计说明书 单片机控制交通灯设计专业电力电子及电力传动学生姓名 班 学 级 号 B 电气 101指导教师 完成日期 2013.6.16盐城工学院课程设计说明书(2013)单片机控制交通灯设计摘 要:以 AT80C51 单片机为核心,对交通灯的变化进行控制。三色 LED 在单片机控制下可以实现在特定时间下自动切换,并且按照要求的规律自动运行。本设计 中用到了单片机最小系统,三色 LED 灯,反相器 74LS05 构成的驱动电路等。为了便 于演示,切换时间较短。本次设计主要介绍了单片机的功能,交通灯的工作模式。所 有的程序和仿真图均在 proteus 软件调试通过。 关键词 :AT80C5 单片机 控制 驱动电路盐城工学院课程设计说明书(2013)The control of traffic lights designAbstract:The AT80C51 microcontroller as the core, to control the change of thetraffic lights. Three-color LED can realize the automatic switching in specific time under the control of the microcontroller, and in accordance with the requirements of the rules of automatic operation. This design uses the minimum system of the one-chip computer, three-color LED lights, composed of inverter 74LS05 and resistance of the driving circuit. In order to facilitate the presentation, short switching time. This design mainly introduced the microcontroller function, the traffic lights work mode. The procedures and simulation diagram all debugging in Proteus Software through. Keywords: AT89C51microcontroller control drive circuit盐城工学院课程设计说明书(2013)目录1 概述...................................................................................................................................................... 1 1.1 交通灯的历史背景和意义 .......................................... 1 1.2 交通灯的发展与现状 ............................................... 1 2 课题方案设计 .................................................................................................................................... 3 2.1 系统总体设计要求 .............................................................................................................. 3 2.2 系统的总体框图.................................................................................................................... 3 3 系统硬件设计 ................................................................................................................... 4 3.1 总体设计 ................................................................................................................................. 4 3.2 单片机运行的最小系统 ......................................................................................... 4 3.2.1 系统时钟电路 ............................................................................................... 5 3.2.2 系统复位电路 ................................................................................................ 6 3.3 信号灯电路设计 ..................................................................................................... 7 3.3.1 驱动电路 ........................................................................................................ 7 3.3.2 信号灯电路 .................................................................................................... 8 4 系统软件的设计 ............................................................................................................. 10 4.1 主程序流程图 ........................................................................................................ 10 4.2 子程序流程图 ........................................................................................................ 11 5 软硬件调试及调试结果 ................................................................................................. 12 5.1 软硬件调试中出现的问题及解决措施 ............................................................... 12 5.1.1 硬件调试 ..................................................................................................... 12 5.1.2 软件调试 ..................................................................................................... 12 5.2 实物图 ................................................................................................................... 13 5.3 调试结果 ............................................................................................................... 15 结束语 ................................................................................................................................. 17 参考文献 ............................................................................................................................. 17 附录 ..................................................................................................................................... 17 附录 1 单片机控制交通灯设计原理图 ..................................................................... 17 附录 2 基于单片机的交通灯设计 PCB 图 ................................................................. 18 附录 3 Proteus 仿真图 .............................................................................................. 19 附录 4 基于单片机的交通灯设计 C 语言程序清单 ................................................. 20 附录 5 基于单片机的交通灯设计元器件目录表 ..................................................... 23盐城工学院课程设计说明书(2013)单片机控制交通灯设计1 概述1.1 交通灯的历史背景和意义 随着社会经济的发展,城市交通问题越来越引起人们的关注。人、车、路三 者关系的协调,已成为交通管理部门需要解决的重要问题之一。城市交通控制系统是 用于城市交通数据监测、交通信号灯控制与交通疏导的计算机综合管理系统,它是现 代城市交通监控指挥系统中最重要的组成部分。所以,如何采用合适的控制方法,最 大限度利用好耗费巨资修建的城市高速公路,缓解主干道与匝道、城市同周边地区的 交通拥堵状况,越来越成为交通运输管理和城市规划部门亟待解决的主要问题。 交通灯是城市活动的命脉,对于城市经济发展、人民生活水平的提高起着 十分重要的作用。城市交通问题是困扰城市发展、制约城市经济建设的 重要因 素,城市道路增长的有限与车辆增加的无限这一矛盾是导致城市交通拥挤的根 本原因。城市街道网络上的交通容量的不断增加,表明车辆对道路容量的要求 仍然很高,短期内还不可改变。自从开始用计算机控制系统后,不管在控制硬 件里取得什么样的实际发展,交通控制领域的控制逻辑方面始终没能取得重大 突破。 可以肯定的说,对于减轻交通拥塞及其副作用特别是对于大的交通网络而 言,仍然缺乏一种真正的交通响应控制策略。计算机硬件能力与控制软件能力 很不相符,由此造成的影响是很多交通控制策略根本不能实现。在少数几个例 子中,一些新的控制策略确实能得以实现,但它们却没能对早期的控制策略进 行改进。由于缺乏能提高交通状况,特别是缺乏拥塞网络交通状况的实时控制 策略,几乎可以说真正成熟的控制策略仍然不存在。集成化和智能化是城市交 通信号控制系统的发展趋势和研究前沿,而针对交通系统规模复杂性特征的控 制结构和针对城市交通瓶颈问题并代表智能决策的阻塞处理则是智能交通控制 优化管理的关键和突破口。因此,研究基于智能集成的城市交通信号控制系统 具有相当的学术价值和实用价值。把智能控制引入到城市交通控制系统中,未 来的城市交通控制系统才能适应城市交通的发展。从长远来看,该研究 具有重 要的现实意义。 1.2 交通灯的发展与现状 随着城市经济的发展,城市现代化程度不断提高,交通需求和交通量迅速 增长,城市交通网络中交通拥挤日益严重,道路运输所带来的交通拥堵、交通 事故和环境污染等负面效应也日益突出,逐步成为经济和社会发展中的全球性 共同问题。交通问题已经日益成为世界性的难题,城市交通事故、交通阻塞和 交通污染问题愈加突出。为了解决车和路的矛盾,常用的有两种方法:一是控 制需求,最直接的办法就是限制车辆的增加;二是增加供给,也就是修路。但 是这两个办法都有其局限性。交通是社会发展和人民生活水平提高的 基本条件,1经济的发展必然带来出行的增加,而且在我国汽车工业正处在起步阶段时期, 因此限制车辆的增加不是解决问题的好办法。而采取增加供给 ,即大量修筑道 路基本设施的方法,在资源、环境矛盾越来越突出的今天,而对越来越拥挤的 交通,有限的资源和财力以及环境的压力,也将受到限制。这就需要依靠除限 制需求和提供道路设施之外的其他方法来满足日益增长的交通需求。 交通系统正是解决这一矛盾的途径之一。智能交通系统是将先进的信息技 术、数据通信技术、电子传感技术、电子控制技术及计算机处理技术等有效的 集成运用于整个地面交通运输管理系统。对城市交通流进行智能控制,可以使 道路顺畅,提高交通效率。合理进行交通控制可以对交通流进行有效的引导和 调度,使交通保持在一个平稳的运行状态,从而避免或缓和交通拥挤状况。大 大提高交通运输的运行效率。还可以减少交通事故,增加交通安全,降低污染 程度,节省能源消耗,本文就是通过对交叉路口交通信号的只能控制,达到优 化路口交通流的目的。 交通系统作为一个时变的、具有随机性的复杂系统,传统的人为设定多嘴 方案或是建立各种预测模型均比较困难。 城市交通控制研究的起源比较早, 1868 年,英国伦敦燃气信号灯的问世,标志着城市交通控制的开始。1913 年,在美 国俄亥俄州的 Cleveland 市出现了世界上最早的交通信号控制。1926 年美国的 芝加哥市采用了交通灯控制方案,每个交叉口设有唯一的交通灯,适用于单一 的交通流。从此,交通控制技术和相关的控制算法得到了发展和改善,提高了 交通控制的安全性、有效性,并减少了对环境的影响。 进入 20 世纪 70 年代,随着计算机技术和自动控制技术的发展,已经交通 流理论的不断完善,交通运输组织与优化理论和技术水平不断提高,控制手段 越来越先进, 形成了一批高水平有实效的城市道路交通控制系统。 早在 1977 年, Pappis 等人就将模糊控制运用到交通控制上,通过建立规则库或是专家系统对 各种交通状况进行模糊控制,并取得了很好的效果。近年来,欧美日本等相继 建立了智能交通控制系统。在这些系统中,大部分在路口附近安装磁性环路检 测器,还使用了新型检测器等技术和设备。这些现代化设备技术加上控制理论 和现代化科学管理技术,似的交通控制系统日益完善。随着一些研究控制理论 的学者投身到交通控制的研究中,在交通信号控制领域提出了一些新方法、新 思路。如静态多段配时控制、准动态多段配时控制、最优控制、大系统递阶控 制、模糊控制、神经网络控制、网络路由控制等 。模糊交通控制已经成为了交 通信号控制的上流方向之一。 虽然模糊控制能有效处理模糊信息,但是产生的规则比较粗糙,利用规则 表进行控制,运算速度虽然比较快但没有自学习功能。而且这些研究有些似乎 相序固定为前提,不能保证相序与实际交通流状况的一致性,影响了绿灯时间 的利用率。有些研究则提出了可变相序的模糊控制方法,提高了绿灯时间的利 用率,弥补了相序固定的缺点,但同时也存在一些不足。例如目前应用比较好 的交通系统:SCOOT(经典交通系统),它们都是主要采用统计模型和经典算2盐城工学院课程设计说明书(2013)法。但城市交通系统是一个复杂的、随机性很强的巨型系 统,要想建立实用性 较强的数学模型是十分困难的。利用模糊控制智能控制技术进行交叉口信号灯 控制能取得比定时控制与感应控制更好的效果,是今后单交叉路口信号灯控制 的主要研究方向。 目前,国内的交通灯一般设在十字路口,在醒目位置用红、黄、绿三种颜 色的指示灯 。对于一般情况下的安全行车,车辆分流尚能发挥作用,但根据实 际行车过程中出现的情况,还存在缺点:两车道的车辆轮流放行的时间相同且 固定,在十字路口,经常一个车道为主干道,车辆较多,放行时间应该长些; 另一车道为副干道,车辆较少,放行时间应该短些。2 课题方案设计2.1 系统总体设计要求 1、东西路口的绿灯亮,南北路口的红灯亮,东西路口方向通车。 2、延时一段时间后,东西路口的绿灯熄灭,黄灯开始延时并开始闪烁,闪烁三 次后,东西路口的红灯亮,同时南北路口的绿灯亮,南北方向开始通车。 3、延时一段时间后,南北路口的绿灯熄灭,黄灯开始延时并开始闪烁,闪烁三 次后,再切换到东西路口方向。 4、之后一直重复以上三步。 2.2 系统的总体框图 系统的总体框图如图 2-1 所示。单片机 最小系 统直流电源图 2-1 系统的总体框图系统的主要控制部分是单片机最小系统,由单片机最小系统通过驱动电路对三色 LED 灯进行控制。单片机内部已存在写进去的程序,直流电源分别向单片机和驱动3驱动电路三色LED灯电路供电,使两个模块工作,进而使整个系统运行。3 系统硬件设计3.1 总体设计 实现本设计要求的具体功能,可以选用 AT89C51 单片机及外围器件构成最 小控制系统,12 个 LED 分成四组红黄绿三色灯构成信号灯指示模块。反相器 74LS05 构成驱动电路。 3.2 单片机运行的最小系统AT89C51 引脚结构如图 3-1 所示。1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 P1.0 P1.1 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7 RST P3.0 P3.1 P3.2 P3.3 P3.4 P3.5 P3.6 P3.7 XTAL2 XTAL1 GND VCC P0.0 P0.1 P0.2 P0.3 P0.4 P0.5 P0.6 P0.7 EA ALE PSEN P2.7 P2.6 P2.5 P2.4 P2.3 P2.2 P2.1 P2.0 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21图 3-1 AT89C51 引脚结构单片机的最小系统由电源、晶振、复位、 /EA=1 组成,下面介绍每一个组 成部分。 1、电源引脚 GND 20 接地端 Vcc 40 电源端(工作电压为 5V) 2、外接晶体引脚 XTAL1 194盐城工学院课程设计说明书(2013)XTAL2 18 3、复位 RST 9 4、输入输出引脚 (1)P0 端口[P0.0-P0.7] P0 是一个 8 位漏极开路型双向 I/O 端口,端口置 1,(对端口写 1)时作高 阻抗输入端,作为输出口时能驱动 8 个 TTL。 对内部 Flash 程序存储器编程时,接受指令字节;校验程序时输出指令字节,要 求外接上拉电阻。 在访问外部程序和外部数据存储器时,P0 口是分时转换的地址(低 8 位)/ 数据总线,访问期间内部的上拉电阻起作用。 (2)P1 端口[P1.0-P1.7] P1 是一个带有内部上拉电阻的 8 位双向 I/O 端口。 输出时可驱动 4 个 TTL。 端口置 1 时,内部上拉电阻将端口拉到高电平,作输入用。 对内部 Flash 程序存储器编程时,接收低 8 位地址信息。 (3)P2 端口[P2.0-P2.7] P2 是一个带有内部上拉电阻的 8 位双向 I/O 端口。输出时可驱动 4 个 TTL, 端口置 1 时,内部上拉电阻将端口拉到高电平,作输入用。对内部 Flash 程序存 储器编程时,接收高 8 位地址和控制信息。 在访问外部程序和 16 位外部数据存储器时,P2 口送出高 8 位地址。而在访 问 8 位地址的外部数据存储器时其引脚上的内容在此期间不会改变。 (4)P3 端口[P3.0-P3.7] P3 一个带有内部上拉电阻的 8 位双向 I/O 端口。输出时可驱动 4 个 TTL。 端口置 1 时,内部上拉电阻将端口拉到高电平,作输入用。 对内部 Flash 程序存储器编程时,接控制信息。除此之外 P3 端口还用于一 些专门功能,具体功能如表 3-1。引脚 P3.0 P3.1 P3.2 P3.3 P3.4 P3.5 P3.6 P3.7 第二功能 RXD(串行口输入端) TXD(串行口输出端) /INT0 (外部中断 0 请求输入端, 低电平有效) /INT1 (外部中断 1 请求输入端, 低电平有效) T0(定时器/计数器 0 计数脉冲输入端) T1(定时器/计数器 1 计数脉冲输入端) /WR(外部数据存储器写选通信号输出端) /WD(外部数据存储器读选通信号输出端) 表 3-1 P3 口特殊功能口3.2.1 系统时钟电路5内部时钟电路结构如图 3-2 所示。30p30p11.0592 MHZ图 3-2 内部时钟电路结构时钟是单片机的心脏,单片机的各功能部件的运行都是以时钟的频率为基 准的。因此,时钟频率直接影响单片机的速度,时钟质量也直接影响单片机系 统的稳定性。通常的时钟电路有两种方式:一种是内部时钟方式,一种是 外部 时钟方式。 AT89C52 单片机内部有一个用于构成振荡器的高增益方向放大器,该高增 益方向放大器的输入端为芯片引脚 XTAL1,输出引脚为 XTAL2。使用外部振荡 器时,外部振荡信号应直接加到 XTAL1,而 XTAL2 悬空。内部方式时,时钟 发生器对振荡脉冲二分频,如晶振为 12MHz,时钟频率就为 6MHz。晶振的频 率可以再 1MHz-24MHz 内选择。电容取 30PF 左右。系统的时钟电路设计是采 用的内部方式,即利用芯片内部的振荡电路。AT89C52 单片机内部有一个用于 构成振荡器的高增益反相放大器。引脚 XTAL1 和 XTAL2 分别是此放大器的输 入端和输出端。这个放大器与作为反馈元件的片外晶体谐振器一起构成一个自 激振荡器。外接晶体谐振器以及电容 C1 和 C2 构成并联谐振电路,接在放大器 的反馈回路中。对外接电容的值虽然没有严格的要求,但电容的大小会影响振 荡器频率的高低、振荡器的稳定性、起振的快速性和温度的稳定性。因此,此 系统电路的晶体振荡器的值为 12 MHz,电容应尽可能的选择陶瓷电容,电容值 约为 22 F。在焊接刷电路板时,晶体振荡器和电容应尽可能安装的与单片机芯 片靠近,以减小寄生电容,更好的保证振荡器稳定和可靠工作。3.2.2 系统复位电路 (1)复位状态 在 8051 单片机中, 只要在单片机的 RST 引脚上出现 2 个机器周期以上的高电平, 单片机就实现了复位。单片机在复位后,从 0000H 地址开始执行指令。复位以后单 片机的 P0~P3 口输出高电平,且处于输入状态,SP(堆栈寄存器栈顶指针)的值为 07H(因此,往往需要重新赋值,其余特殊功能寄存器和 PC(程序计数器)都被清 为 0。复位不影响内部 RAM 的状态。6盐城工学院课程设计说明书(2013)(2)复位电路 复位电路如图 3-3 所示。VCC 复位10uF10K图 3-3 单片机复位电路单片机可靠的复位是保证单片机正常运行的关键因素。因此,在设计复位电路时, 通常要使 RST 引脚保持 10ms 以上的高电平。当 RST 从高电平变为低电平之后,单 片机就从 0000H 地址开始执行程序。 8051 单片机通常都采用上电自动复位和开关复位两种方式。实际使用中,有些 外围芯片也需要复位,如 8255 等。这些复位端的复位电平要求与单片机的复位要求 一致时,可以把它们连起来。 在最小系统板上,提供了一个通用的复位电路,在使用该板之前,必须将该电路 与单片机联结起来。另外,还可以采用主板上的微处理器监控模块来控制复位脚,以 便更加可靠地管理单片机的工作。3.3 信号灯电路设计 3.3.1 驱动电路 驱动部分采用 74LS05 非门来对 LED 发光二极管进行驱动, 当输入为高点平时, 输 出为低电平。确保 LED 发光二极管的稳定性,能更有效地工作。74LS05 为六组反向 器,共有 54/7405、54/74H05、54/74S05、54/74LS05 四种线路结构形式,其主要电 特性的典型值如表 3-2 所示。型 号 5405/7405 54H05/74H05 54S05/74S05 tPLH 12ns 6ns 3ns tPHL 8ns 6.5ns 3ns PD 60mW 140mW 113mW754LS05/74LS059ns 表 3-210ns 74LS05 的型号12mW74LS05 的引脚如图 3-4 所示。1A 1 1Y 2 2A 3 2Y 3A 3Y 6 GND 7 4 5 9 10 11 12 4A 13 14 4Y 8 VCC 6A 6Y 5A 5Y74 05图 3-474LS05 引脚7 引脚是接地端,14 引脚接+5V 电源。剩余的 12 引脚组成 6 组反相器,A 为 输入,Y 为输出。例如,1A 端输入高电平,则 1Y 输出低电平。 3.3.2 信号灯电路 在设计交通灯时,采用了发光 LED 代替信号灯。先介绍一下 LED。LED 的工作原理是单向导通,即只有正极电压高于负极电压某个特定值时才会导通, 而负极电压高于正极电压时是不会导通,发光 LED 是一种特殊的二极管,导通 时会发光 (发光二级管导通压降一般为 1.7V-1.9V) 此外, 。 工作电流要满足 LED 的工作电流。 发光 LED 的正负极可以用万用表判断,把万用表拨至电阻档,用两个表笔 分别接触 LED 的两个引出脚,若发光 LED 被点亮,则与红表笔相接触的引出 脚为正极。 一般发光 LED 与 I/O 端口之间都会再连接一个电阻,其作用在于限制通过 二极管的电流,从而达到减小功耗和满足端口对最大电流的限制。 在本次设计中,信号灯电路设计原理如图 3-5 所示。8盐城工学院课程设计说明书(2013)6 5 4 2207405 [***********]74051图 3-5 信号灯电路原理阻值大小计算如下: 所需阻值=(电压-LED 压降-I/O 电平)/电阻上的电流。经计算得出所需 电阻大小为 200~400Ω。 信号灯电路具体连接方式如图 3-6 所示。96 5 411200U2:D74058 10 1 2 3 4 5 6 7 8U2:E74051213RP19U2:F7405D1 U2:C4 3 2 1D3LED-YELLOWD6LED-GREEND56 LED-GREENLED-REDD10LED-RED35 74055 6U2:B2 3 7405 4D4LED-YELLOWD11LED-YELLOWU2:A1 1 7405 2D2LED-REDD12 D7LED-GREEND8LED-YELLOWD9LED-REDLED-GREEN图 3-6 信号灯连接方式4 系统软件的设计4.1 主程序流程图 设交通等有四种工作方式: (1) 东西向绿灯与南北向红灯亮五秒; (2)东西向绿灯灭,黄灯闪烁五次; (3)东西向红灯与南北向绿灯亮五秒; (4)南北绿灯灭,黄灯闪烁五次 ; 主程序流程图如图 4-1 所示。10盐城工学院课程设计说明书(2013)开始系统初始化工作方式1工作方式2工作方式3工作方式4图 4-1 主流程图单片机运行后,系统首先初始化,计数器清零,然后顺序执行方式一到方式四。方 式四执行完后,系统重新初始化,然后继续执行方式一到方式四,之后一直重复上述 过程。 4.2 子程序流程图 子程序流程图如图 4-2 所示:11开始开始开始开始初始化初始化初始化初始化方式1方式2方式3方式4N 5秒到 Y 计数器清零 闪烁5次 Y 计数器清零N 5秒到 Y 计数器清零N 闪烁5次计数器清零返回返回返回返回图 4-2(a)图 4-2(b)图 4-2(c)图 4-2(d)图 4-2 子程序流程图5 软硬件调试及调试结果5.1 软硬件调试中出现的问题及解决措施 本次设计要进行软件仿真,所以采用 Keil 软件和 Proteus 软件联合调试, 具体过程可以概括为以下两点: (1) 在 Keil 软件上编写程序,编译生成 hex 文件; (2) 在 Proteus 上绘制原理图,把生成的 hex 文件添加到单片机中,点击运行 进行仿真。 5.1.1 硬件调试 电路焊接好后,进行电路连通测试。先用万用表检测各个连接点,确保连 接点连接完好;再检测各种电源线与地线之间是否有短路现象,要确保电路无 短路,否则有可能会烧坏元器件。用万用表检查完后,再进行上电检测。给板 加电,用万用表检测所有的连接点或是器件的端口是否符合预计的电压值,最 后是联机检测。各芯片功能检测: 事先编号一段简易程序(程序要能体现芯片功能) ,将程序输入到硬件电 路的单片机中,观察各个芯片实现的功能是否正常运行,如能正常运行,说明 芯片没有损坏,芯片可以使用 。 5.1.2 软件调试 软件调试是通过对用户程序的连接、执行来发现程序中存在的语法错误与12盐城工学院课程设计说明书(2013)逻辑错误并加以排除修正的过程。调试过程中,对程序实现的是分模块调试, 先确认模块程序能够运行,再进行调试的整体调试,这样可以快速的检查出程 序程序实现的功能与实体实际要求的区别,发现有区别也可以快速更改程序, 直到程序能够实现设计要求。最后将各个模块组合后再调试程序,确保各功能 模块能够相同。 5.2 实物图1314盐城工学院课程设计说明书(2013)图 5-1 正面图 5-2 反面5.3 调试结果图 5-3 东西方向绿灯,南北方向红灯东西方向绿灯亮,南北方向红灯亮,时间均为系统预设时间 5s。15图 5-4 东西方向黄灯闪烁5s 过后,东西方向的黄灯开始闪烁,交通灯进入等待状态。图 5-5 南北方向绿灯,东西方向红灯东西方向黄灯闪烁 5s 后变成红灯,同时南北方向的绿灯亮 5s。之后一直重 复上述过程。16盐城工学院课程设计说明书(2013)结束语经过为期两周的单片机课程设计,加深了我对单片机的理解与使用。一些 在课堂上学习到的很抽象的知识,通过我自己对单片机的制作、运行、调试, 在脑海里变的更加的清晰透彻。 我们本次课程设计看起来很简单,但实际操作起来并不是非常顺利。由于 平时缺乏这方面的训练,所以万能板焊接起来并没有想象中的好。最开始会出 现短路,虚焊等情况,索性在硬件调试的时候都一一发现并进行了改正。最后 完成所有的焊接,通电后并没有如期的想象,而是所有的灯全部亮着,在同学 的帮助下,详细的检查了一遍电路焊接情况,并没有任何问题,程序也无任何 问题。在我不断的测试下,终于发现,上拉电阻太小,导致单片机输出驱动电 压太小,无法输出,在换掉上拉电阻后,电路终于运行起来。在此深深感谢老 师的指导以及同学的帮助。 通过这次的课程设计,我也知道了就算是很简单的事情,也不能懈怠,也 是需要一定的知识和耐心去对待的,而且,通过实践,自己对单片机也有了一 定的了解。最后,还要谢谢给过我帮助的同学们和老师,没有你们的帮助也不 会让我顺利的完成这次课程设计。参考文献[1]唐骏翟 单片机原理与应用 冶金工业出版社 2003.3 [2]肖红兵 单片机应用技术 自编教材 [3]何利民主编 单片机应用文集 北京航空航天大学出版社 1991 [4]赵瑞鑫等 单片机原理及应用教程 机械工业出版社 2005.7 [5]张毅刚 MCS-51 单片机应用设计 哈工大出版社 2004 年第二版 [6]徐惠民、安德宁 单片微型计算机原理接口与应用(第一版) 北京邮电大学 出版社 1996附录附录 1 单片机控制交通灯设计原理图176 5 41 2 3 4P1.0 P1.1 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7 RST P3.0 P3.1 P3.2 P3.3 P3.4 P3.5 P3.6 P3.7 XTAL2 XTAL1 GNDVCC P0.0 P0.1 P0.2 P0.3 P0.4 P0.5 P0.6 P0.7 EA ALE PSEN P2.7 P2.6 P2.5 P2.4 P2.3 P2.2 P2.1 P2.040 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 211 2 1 2 3 4 5 6 2207405 [1**********]05VCC复位5 6 7 810uF10K9 10 11 12 13 14 15 16 17 18 11.0592 MHZ 19 [1**********]0p30p盐城工学院 设计 审核 日期 课题 名称2013.6.16 图名专业 学号电气工程 1010601133班级 B 电气 101 姓名 潘绪前 比例 图号 1:1 A4 共 1 张 第1张单片机控制交通灯 系统原理图图 1 单片机控制交通灯 visio 图附录 2 基于单片机的交通灯设计 PCB 图18盐城工学院课程设计说明书(2013)盐城工学院 设计 审核 日期 课题 名称2013.6.16 图名专业 学号电气工程 1010601133班级 B 电气 101 姓名 潘绪前 比例 1:1 图号 A4 共 1 张 第1张单片机控制交通灯 系统原理图图 2 单片机控制交通灯 PCB 图附录 3Proteus 仿真图196 5 411200U2:D7405U2:E740513RP19U2:F740581012 3 4 5 6 7 8D1 U14 3 2 119 XTAL1 P0.0/AD0 P0.1/AD1 P0.2/AD2 P0.3/AD3 P0.4/AD4 P0.5/AD5 P0.6/AD6 P0.7/AD7 P2.0/A8 P2.1/A9 P2.2/A10 P2.3/A11 P2.4/A12 P2.5/A13 P2.6/A14 P2.7/A15 P3.0/RXD P3.1/TXD P3.2/INT0 P3.3/INT1 P3.4/T0 P3.5/T1 P3.6/WR P3.7/RD 39 38 37 36 35 34 33 32 21 22 23 24 25 26 27 28 10 11 12 13 14 15 16 17 3 5 7405D3LED-YELLOW12D6LED-GREENU2:C6D5LED-GREENLED-REDD10LED-RED18XTAL25 6U2:B2 3 7405 4D4LED-YELLOWD11LED-YELLOW9RSTU2:A1 1 7405 2D2LED-RED29 30 31D12 D7LED-GREENPSEN ALE EAD8LED-YELLOWD9LED-REDLED-GREEN1 2 3 4 5 6 7 8P1.0 P1.1 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7 AT89C51图 3 单片机控制交通灯 Protsus 仿真图附录 4 基于单片机的交通灯设计 C 语言程序清单#include #define uint unsigned int #define uchar unsigned char sbit RED_A=P0^0; sbit YELLOW_A=P0^1; sbit GREEN_A=P0^2; sbit RED_B=P0^3; sbit YELLOW_B=P0^4; sbit GREEN_B=P0^5; uchar Count=0,Flash_Count=0,Operation_Type=1; void T0_INT() interrupt 1 { TH0=(65536-50000)/256; TL0=(65536-50000)%256;20// A 组为东西向指示灯//B 组为南北向指示灯//软件计数器设置 //T0 中断程序//设定初值盐城工学院课程设计说明书(2013)switch(Operation_Type) { case 1: RED_A=0;YELLOW_A=0;GREEN_A=1; RED_B=1;YELLOW_B=0;GREEN_B=0; if(++Count!=100)return; 回 Count=0; Operation_Type=2; break; case 2: if(++Count!=8)return; Count=0; YELLOW_A=!YELLOW_A; GREEN_A=0; if(++Flash_Count!=10) return; Flash_Count=0; Operation_Type=3; break; case 3: RED_A=1;YELLOW_A=0;GREEN_A=0; RED_B=0;YELLOW_B=0;GREEN_B=1; if(++Count!=100)return; Count=0; 状态 Operation_Type=4; break; 21 //模式 3 未到 5 秒。 中断返回 //模式 3 已到 5 秒,计数器清零,改变为第四种 //模式 3,东西向红灯与南北向绿灯亮 5 秒 //闪烁 5 次 //东西向绿灯灭,黄灯闪烁 5 次 //模式 1 到 5 秒,计数器清零 //模式 1 未到 5 秒。 中断返 // 模式 1, 东西向绿灯与南北向红灯亮 5 秒case 4: if(++Count!=8)return; Count=0; YELLOW_B=!YELLOW_B; GREEN_B=0; if(++Flash_Count!=10) return; Flash_Count=0; Operation_Type=1; break; } } void main() { TMOD=0x01; TH0=(65536-50000)/256; TL0=(65536-50000)%256; IE=0x82; TR0=1; while(1); }//模式 4.南北向绿灯灭,黄灯闪烁 5 次//闪烁 5 次22盐城工学院课程设计说明书(2013)附录 5 基于单片机的交通灯设计元器件目录表元器件名称 微处理器 电阻 发光 LED 电容 按钮 电解电容 电源变压器 晶振 反相器 10uF 220V/12V 12MHZ 74LS05 规格型号 STC89C52 1KΩ、500Ω、100Ω F5 食人鱼 0805 数量 1个 若干 12 个 2个 1个 1个 1个 1个 1个23