目录1.硬件设计方案....................................................................................................-2-1.1总方案设计......................................................................................................-2-1.2中央处理单元.................................................................................................-2-1.3红、绿、黄灯显示部分.................................................................................-2-1.4时间显示部分..................................................................................................-3-1.5按键部分..........................................................................................................-4-2.主要电路原理分析和说明................................................................................-4-2.1红、绿、黄灯显示电路..................................................................................-4-2.2时间显示电路..................................................................................................-5-2.3按键电路..........................................................................................................-6-2.4时钟及复位电路,..........................................................................................-7-其电路原理图如图2.4所示................................................................................-7-2.5完整电路原理图..............................................................................................-7-2.6单片机相应管脚及功能说明..........................................................................-9-3.软件设计流程及描述.........................................................................................-11-3.1程序流程图....................................................................................................-11-4.调试.....................................................................................................................-12-(1)硬件调试....................................................................................................-12-(2)软件调试....................................................................................................-12-5.结束语.................................................................................................................-12-6.参考文献.............................................................................................................-13-7.附录.....................................................................................................................-14-1.源程序代码.......................................................................................................-14-2.实物图...............................................................................................................-17-单片机课程设计用纸-1-【摘要】:近年来随着科技的飞速发展,单片机的应用正在不断地走向深入,同时带动传统控制检测日新月益更新。在实时检测和自动控制的单片机应用系统中,单片机往往是作为一个核心部件来使用,仅单片机方面知识是不够的,还应根据具体硬件结构,以及针对具体应用对象特点的软件结合,加以完善。交通信号灯的出现,使交通得以有效管制,对于疏导交通流量、提高道路通行能力,减少交通事故有明显效果。本系统采用单片机STC89C52RC为中心器件来设计交通灯控制器,控制十字路口的红、绿、黄灯交替点亮和熄灭,并且利用4只数码管显示十字路口两个方向的剩余时间。要求能用按键设置两个方向的通行时间(绿、红灯点亮的时间)和暂缓通行时间(黄灯点亮时间)。系统实用性强、操作简单、扩展性强。【关键字】:单片机STC89C52RC按键设置时间显示单片机课程设计用纸-2-1.硬件设计方案1.1总方案设计整个交通灯控制系统可分为五大部分:中央处理单元(CPU)、红、绿、黄灯显示部分、时间显示部分、按键部分、复位与时钟部分。硬件原理框图如下图1.1-1所示:图1.1-1:硬件原理框图1.2中央处理单元CPU选用STC89C52RC对整个系统进行控制:(1)它将数据输出到数码管和LED显示。(2)根据按键输入调用相应键处理子程序,实现对红、绿、黄灯点亮及显示时间的调整和设定。1.3红、绿、黄灯显示部分红、绿、黄灯显示模块:用单片机驱动LED显示。硬件原理图如图1.1-2按键电路部分时钟复位电路单片机AT89C52红黄绿灯显示时间显示单片机课程设计用纸-3-图1.1-2:红绿黄灯显示原理图红、绿、黄灯显示模块:为方便观看并考虑到现实情况,用LED灯显示提示信息。这种方案既满足系统功能要求,又减少了系统实现的复杂度。1.4时间显示部分时间的显示模块:经分析过相向的灯的状态和倒计时都是相同的,可采用两组四个数码管。同时为了节省口资源,采用串口显示的方式驱动数码管,其硬件原理图如图1.1-3图1.1-3:时间显示原图单片机AT89C52LED显示红灯状态LED显示绿灯状态LED显示黄灯状态单片机AT89C52数码管1显示数码管4显示数码管2显示数码管3显示单片机课程设计用纸-4-1.5按键部分按键模块:采用独立方式,通过检测输入线的电平状态可以很容易的判断哪个键按下。由于独立式键盘编程简单,且可以完全达到要求,所以采用独立式键盘控制。本系统采用三个按键:分别是绿灯时间设置键、黄灯时间设置键、确认键。2.主要电路原理分析和说明2.1红、绿、黄灯显示电路:接口电路如图2.1所示:图2.1:红绿黄灯接口电路图红、绿、黄灯显示电路,用P1口的P1.0P1.1P1.2P1.3P1.4P1.5分别接一个LED作为东西、南北两个方向的红、绿、黄灯。通过编程显示东西、南北两个方向的交通灯点亮情况。当p1口输出信号为0时与之对应相连的led点亮。单片机课程设计用纸-5-2.2时间显示电路时间显示电路:电路原理图如图2.2所示:图2.2:时间显示电路图在时间显示电路中,考虑到动态显示需用很多I/O口,本着节约资源的原则故采用串口接74ls164串入并出的方式驱动数码管,分别显示东西、南北两条干道所剩余的时间。由74ls164的特性选用共阳极7段数码管,中间接0.3k限流电阻。第1片74ls164ab端接单片机rxd作为信号输入,其高位接第2片ab端,以此类推。4片74ls164的Clk端全部接txd端,作为信号输入同步信号。单片机课程设计用纸-6-2.3按键电路按键电路:电路原理如图2.3所示:图2.3:按键电路图图中S3为黄灯时间设置键、S2为绿灯时间设置键、S1为确认键。通过调用子程序,按S3可以设置黄灯闪烁的时间;按S2可以设置绿灯点亮的时间;由于红灯点亮的时间等于绿灯点亮的时间加上黄灯闪烁的时间所以可以不用设置;按下S1确认后,就可以按照设定好的时间运行。单片机课程设计用纸-7-2.4时钟及复位电路,其电路原理图如图2.4所示图2.4:时钟及复位电路图时钟部分采用12Mhz晶振及30pf电容,复位部分采用22uf极性电容,R10为0.3k电阻,R11为1k电阻接地,该复位电路具有上电复位及手动复位功能。2.5完整电路原理图电路原理图如图2.5所示:单片机系统采用STC89C52RC为核心,时钟信号采用12MHZ晶振,采用独立式键盘;显示部分用LED和数码管相结合,分别显示交通灯点亮情况和剩余时间。单片机课程设计用纸-8-图2.5:完整电路原理图单片机课程设计用纸-9-2.6单片机相应管脚及功能说明VCC:供电电压。GND:接地。P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P0口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址