基于单片机的红绿灯设计本科毕业论文.doc

上传人:哈尼dd 文档编号:3923054 上传时间:2019-10-10 格式:DOC 页数:38 大小:810KB
返回 下载 相关 举报
基于单片机的红绿灯设计本科毕业论文.doc_第1页
第1页 / 共38页
基于单片机的红绿灯设计本科毕业论文.doc_第2页
第2页 / 共38页
基于单片机的红绿灯设计本科毕业论文.doc_第3页
第3页 / 共38页
基于单片机的红绿灯设计本科毕业论文.doc_第4页
第4页 / 共38页
基于单片机的红绿灯设计本科毕业论文.doc_第5页
第5页 / 共38页
点击查看更多>>
资源描述

《基于单片机的红绿灯设计本科毕业论文.doc》由会员分享,可在线阅读,更多相关《基于单片机的红绿灯设计本科毕业论文.doc(38页珍藏版)》请在三一文库上搜索。

1、西安航空职业技术学院 毕业设计论文西安航空职业技术学院毕业设计(论文)任务书题目: 基于单片机的红绿灯设计 任务与要求: 交通信号灯能够控制东西、南北两个方向的交通,红绿黄灯用对应颜色的发光二极管代替; 用四个2位数码管分别显示东、南、西、北方向的通行时间,东西或南北通行时间为30秒,红绿灯切换中间黄灯闪烁5秒时间:2013年9月1日至2013年11月1日 共8周所属系部: 自动化工程系学生姓名: 学 号: 11专 业:生产过程自动化指导单位或教研室:计算机控制教研室指导教师: 职 称: 助教西安航空职业技术学院制毕业设计(论文)进度计划表日 期工 作 内 容执 行 情 况指导教师签 字9.1

2、-9.10确定选题,完成选题登记表,着手资料内容9.11-9.20通过所收集的资料了解交通灯结构,工作原理和机制9.21-10.1根据现有资料着手设计交通灯的仿真10.2-10.10搭建初步框架结构,尝试仿真10.11-10.20对程序数据进行修改,验证结果10.21-10.28最后的论文结构调整及检查10.28-11.1整合论文资料及成果,完成论文.教师对进度计划实施情况总评 签名 年 月 日 摘要在日常生活中,交通灯作为管理交通、调协车辆的一个便捷的手段,起着很大的作用。各种交通工具、行人都要根据交通灯的变化来决定是否前行,通行的时间的规定协调了它们的步伐,极大的减少了由于交通混乱引起的各

3、种事故的发生。因此,一个完善的交通系统中,交通灯是必不可少的设备,一个完善的交通灯程序会更有效的管理当前道路中出现的实际情况,使车辆、行人的行进变得更顺畅、更和谐。随着我国国民经济的快速发展,我国机动车辆发展迅速,而城镇道路建设由于历史等各种原因相对滞后,交通拥挤和堵塞现象时常出现。如何利用当今计算机和自动控制技术,有效地疏导交通,提高城镇交通路口的通行能力,减少交通事故是很值得研究的一个课题。目前,国内的交通灯一般设在十字路口,在醒目位置用红、绿、黄三颜色的指示灯加上一个倒计时的显示器来控制行车。关键字:交通灯;单片机;MSC-51;计时 2Abstract In daily life ,

4、traffic lights as traffic management , co-ordination of the vehicle a convenient means , plays a big role . Various modes of transport , pedestrians should be based on the traffic lights change to decide whether to move forward, the passage of time coordinating their pace required , greatly reducing

5、 the traffic chaos caused by various accidents. Therefore, a comprehensive transportation system, traffic lights are essential equipment , a complete traffic lights would be more effective in the management of the current road situation occurs , the vehicle , a pedestrian road becomes smoother and m

6、ore harmonious . With Chinas rapid economic development, Chinas rapid development of motor vehicles , while the urban road construction due to historical and other reasons is lagging behind, traffic congestion and jams often occur . How to take advantage of todays computers and automatic control tec

7、hnology, effective flow of traffic, improve urban traffic junction capacity and reduce traffic accidents is a topic worthy of study . At present , the domestic traffic lights generally located at the crossroads, prominently with red , green and yellow three color LED display with a countdown to cont

8、rol traffic.Key words:traffic light;SCM;MSC-51;timing目录1绪论11.1单片机的发展11.2单片机的定义21.3单片机的特点21.4单片机的应用领域32任务分析与设计思路52.1任务分析52.1.1本次设计要求52.2设计思路63总体设计73.1单片机内部资源分布图73.2单片机交通控制系统的基本构成及原理83.3软件结构框图93.4软硬件分工94详细设计104.1设计电路104.2交通灯电路104.2.1数码管的工作原理124.2.2 I/O口扩展134.2.3单片机的RP1144.2.4 单片机硬件结构144.3软件框图164.3.1主程

9、序流程图164.3.2显示子程序流程图17附录19结束语23谢辞24参考文献2541绪论在城市能很明显的感受到交通的日益拥堵,各种各样的问题都会出现在马路上,像行人穿马路,车辆的行进,都少不了交通灯的指挥,可以说如果没有了交、通灯,交通将会瘫痪。所以交通灯有着不可或缺的重要地位。1.1单片机的发展单片机诞生于20世纪70年代末,经历了SCM、MCU、SoC三大阶段。SCM即单片微型计算机(Single Chip Microcomputer)阶段,主要是寻求最佳的单片形态嵌入式系统的最佳体系结构。在开创嵌入式系统独立发展道路上,Intel公司功不可没。MCU即微控制器(Micro Control

10、ler Unit)阶段,主要的技术发展方向是:不断扩展满足嵌入式应用时,对象系统要求的各种外围电路与接口电路,突显其对象的智能化控制能力。它所涉及的领域都与对象系统相关,因此,发展MCU的重任不可避免的 落在电气、电子技术厂家。从这一角度来看,Intel逐渐淡出MCU的发展也有其客观因素。在发展MCU方面,最著名的厂家当数Philips公司。Philips公司以其在嵌入式应用方面的巨大优势,将MCS-51从单片微型计算机迅速发展到微控制器。因此,当我们回顾嵌入式系统发展道路时,不要忘记Intel和Philips的历史功绩。单片机是嵌入式系统的独立发展之路,像MCU阶段发展的重要因素,就是寻求应

11、用系统在芯片上的最大化解决;因此,专用单片机的发展自然形成了SoC化趋势,随着微电子技术、IC设计、EDA工具的发展,基于SoC的单片机应用系统设计会有较大的发展。因此,对单片机的理解可以从单片微型计算机、单片微控制器延伸到单片应用系统。单片机作为微型计算机的一个重要分支,应用面很广,发展很快。自单片机诞生至今,已发展为上百种系列的近千个机种单片微型计算机是微型计算机的一个重要分支,也是颇具生命力的机种。单片机微型计算机简称单片机,特别适合与控制领域,故又称为微控制器。通常,单片机是由单块集成电路芯片构成,内部包含有计算机的基本功能部件;中央处理器、存储器和I/O接口电路等。因此,单片机只需要

12、和适当的软件及外部设备相结合,便可成为一个单片机控制系统。单片机的发展分为4个阶段:第一阶段(1974-76年):单片机初级阶段。因为受工艺限制,单片机采用单片的形式而且功能比较简单。例如美国仙童公司生产的F8单片机,实际上只包括了8位CPU,64个字节的RAM和2个并行接口。第二阶段(1976-78年):低性能单片机阶段。以Intel公司生产的MCS-48系列单片机位代表,该系列单片机片内集成有8位CPU,8位定时器/计数器,并行I/O接口,RAM和ROM容量较小,且寻址范围不大与4KB。第三阶段(1978-83年):高性能单片阶段。这个阶段推出的单片机普遍带有串行接口。多级中断系统,16位

13、定时器/计数器,片内ROM,RAM容量加大,且寻址范围可达64KB,有的片内还带有A/D转换器。第四阶段(1983至今):8位单片机巩固发展以及16位单片机,32位单片机推出阶段。此阶段的主要特征是:一方面发展16位单片机,32位单片机及专用型单片机。1.2单片机的定义单片机是指一个集成在一块芯片上的完整计算机系统。尽管他的大部分功能集成在一块小芯片上,但是它其有一个完整计算机所需要的大部分部件:CPU、内存、内部和外部总线系统,目前大部分还会具有外存。同事集成诸如通讯接口、定时器、实时时钟等外围设备。而现在最强大的单片机系统甚至可以将声音、图像、网络、复杂的输入输出系统集成在一块芯片上。单片

14、机也被称为微控制器(Micro Controller),是因为它最早被用在工业控制领域。单片机有芯片内仅有CPU的专用处理器发展而来,最早的设计理念是通过将大量外围设备和CPU集成在一个芯片中,使计算机系统更小、更容易集成于复杂而对体积要求严格的控制设备忠。INTEL的Z80是最早按照这种思想设计出的处理器,从此以后,单片机和专用处理器的发展便分道扬镳。1.3单片机的特点 单片机是以工业测控对象、环境、接口特点出发向着增强控制功能,提高工业环境下的可靠性方向发展,主要特点如下:(1)种类多,型号全很多单片机厂家逐年扩大适应各种需要,有针对性的推出一系列型号产品,是系统开发工程师有很大的选择余地

15、。大部分产品有较好的兼容性,保证了以开发产品能顺利移植,较容易的是产品进行升级代换。(2)提高性能,扩大容量,性能价格比高集成度已经达到300万个晶体管以上,总线速度达到数十微秒到几百纳秒,指令执行周期已经达到几微妙到数十纳秒,以往片外XRAM现已在物理上存入片内,ROM容量已经扩充达32K,64K,128K以致更大的空间。价格从几百到几元不等。(3)增加控制功能,向真正意义上的单片机发展把原本是外围接口芯片的功能集成到一块芯片内,在一块芯片中构造了一个完整的功能强大的微处理应用系统。(4)低功耗现在新型单片机的功耗越来越小,供电电压从5V降低到了3.2V,甚至1V,工作电流从mA降到uA级,

16、gz2频率从十几兆可编程到几十千兆赫。特别是很多单片机都设置了多种工作方式,这些工作方式包括等待、暂停、睡眠、空闲、节电等。(5)C语言开发环境,友好的人机互交环境多数单片机都提供基于C语言开发平台,并提供大量的函数供使用,这使产品的开发周期、代码可读性、可移植性都大为提高。1.4单片机的应用领域目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化的实时控制和数据处理,广泛使用的各种智能IC卡,民用豪华轿车的安全保障系统,录像机,摄像机,全自动洗衣机的控制,以及程控玩具,电子宠物等等,这些都离不开

17、单片机。更不用说自动控制领域的机器人,智能仪表,医疗机械了。因此,单片机的学习,开发与应用将造就一批计算机应用与智能化控制的科学家,工程师。单片机广泛应用于仪器仪表、家用电器、医用设备、航空航天、专用设备的智能化管理及过程控制等领域,大致可分为如下几个范畴:(1)在智能仪器仪表上的应用单片机具有体积小、功耗低、控制功能强、扩展灵活、微型化和使用方便等优点,广泛应用与仪器仪表中,结合不同类型的传感器,可实现诸如电压、功率、频率、湿度、温度、流量、速度、厚度、角度、长度、硬度、元素、压力等物理量的测量。采用单片机控制使得仪器仪表数字化、智能化、微型化,且功能比起采用电子或数字电路更加强大。例如精密

18、的测量设备(功率计,示波器,各种分析仪)。(2)在工业控制中的应用用单片机可以构成形式多样的控制系统、数据采集系统。例如工厂流水线的智能化管理,电梯智能化控制、各种报警系统,与计算机联网构成二级控制系统等。(3)在家用电器中的应用现在的家用电器基本上都采用了单片机控制,从电饭煲、洗衣机、电冰箱、空调机、彩电、其他音响视频器材、再到电子称量设备,五花八门,无所不在。(4)在计算机网络和通信领域中的应用现在的单片机普遍具备通信接口,可以很方便的与计算机进行数据通信,为在计算机网络和通信设备间的应用提供了极好的物质条件,现在的通信设备基本上都实现了单片机智能控制,从手机、电话机、小型程控交换机、楼宇

19、自动通信呼叫系统、列车无线通信、再到日常工作中随处可见的移动电话,集群移动通信,无线电对讲机等。(5)在各种大型电器中的模块化应用某些专用单片机设计用于实现特定功能,从而在各种电路中进行模块应用,而不要求使用人员了解其内部结构,如音乐集成单片机,看似简单的功能,微缩在纯电子芯片中(有别与磁带机的原理),就需要复杂的类似于计算机的原理。如:音乐信号以数字的形式存于存储器中(类似于ROM),由微控制器读出,转化为模拟音乐电信号(类似于声卡)。在大型电路中,这种模块化应用极大的缩小了体积,简化了电路,降低了损坏、错误率,也方便与更换。此外,单片机在工商,金融,科研,教育,国防航空航天等领域都有着十分

20、广泛的用途。2任务分析与设计思路2.1任务分析2.1.1本次设计要求运用所学单片机原理、模拟和数字电路等方面的知识,设计出一台交通信号灯,模拟路口交通信号。交通灯要求如下:1)交通信号灯能够控制东西、南北两个方向的交通,红绿黄灯用对应颜色的发光二极管代替;2)用四个2位数码管分别显示东、南、西、北方向的通行时间,东西或南北通行时间为30秒,红绿灯切换中间黄灯闪烁5秒。目前,我们接触到的交通灯都位于十字路口,假设实际情况为东西南北走向的十字路口,如下图2-1所示图2-1 模拟路面设置显示图 东西南北各三盏灯,每三盏分别为红、黄、绿三种颜色,总共十二盏灯,而实际情况下,东西方向灯亮灭一致,南北方向

21、灯亮灭一致,故只需要按东西为一组,南北为一组,两组交错亮灭来设计控制系统,即可达到交通灯系统的控制目的。根据以上分析那么只需要控制东南或者西北六盏灯亮灭规律就能实现控制,另外,两组对应一致就行了。根据设计要求,要求东西或者南北通行30秒,红绿灯切换中间黄灯闪烁3秒。那么要求绿灯亮放行,放行线,绿灯持续亮(通行时间)30秒,黄灯亮(警告提醒时间)3秒,红灯亮禁止通行,禁止线,为了简化设计,也为30秒。切换过程东西南北均为黄灯闪烁。2.2设计思路基于完成以上任务分析,结合所学有关知识,尤其是本学期所学关于单片机的中断系统和定时、计数器的相关知识及应用,我们知道对于红、绿、黄两组各三盏灯的控制,可以

22、通过把这六盏灯分别接到单片机的六个输出引脚,若用P1口进行输出,则分配如下图2-2所示 图2-2 AT89C51的六个引脚对应的输出显示图 通过对P1口P0P5编程从而实现控制。而各盏灯的熄灭时间的延时情况,则用定时/计数和中断结合应用实现控制。而输出的时间显示则每个方向分别用两个发光二极管显示,十位接在P0口,个位接在P2口,对P0口P2口编程即可实现控制。3总体设计3.1单片机内部资源分布图 图3-1 单片机内部资源分布图 分析上图,并按其功能部件划分可以看出,MCS-51系列单片机是由8大部分组成。这8大部分是:1一个8位中央处理器CPU(又称为微处理器)CPU的内部结构是由运算器和控制

23、器组成,是单片机的核心部件。其中包括算术逻辑运算单元、ALU、累加器ACC、程序状态字寄存器PSW、堆栈指针SP、寄存器SP寄存器P、程序计数器(指令指针)PC、指令寄存器IR、暂寄存器等部件。2128个字节的片内数据存储器RAM 片内数据存储器用于存放数据、运算结果。34KB的片内程序存储器ROM或EPROM用于存放程序、原始数据和表格。现在的改进产品里一般都换成了Flash存储器。4. 18个特殊功能寄存器SFR。 CPU内部包含了一些外围电路的控制寄存器、状态寄存器以及数据输入/输出寄存器,这些外围电路的寄存器构成了CPU内部的特殊功能寄存器。18个特殊功能寄存器SFR有3个是16位的,

24、共占了21个字节。5. 4个8位并行输入输出I/O接口。P0口、P1口、P2口、P3口、(共32线),用于并行输入或输出数据。6. 1个串行I/O接口,完成单片机与其他微机之间的串行通信。7. 2个16位定时器/计数器T0、T1。8. 一个具有5个(52子系列为6个或7个)中断源,2个可编程优先级的中断系统。它可以接收外部中断申请、定时器/计数器中断申请和串行口终端申请。3.2单片机交通控制系统的基本构成及原理 图3-2 交通灯控制的基本构造显示图单片机设计交通灯控制系统,可用单片机直接控制信号灯的状态变化,基本上可以指挥交通的具体通行,当然,接入LED数码管就可以显示倒计时以提醒行驶者,更具

25、人性化。据此,本设计系统以单片机为控制核心,连接成最小系统,由按键模块产生输入,信号灯状态模块,LED倒计时模块接受输出。系统的总体框图如上图3-2所示。单片机上电后,系统进入正常工作状态,执行交通灯状态显示控制,同时将时间数据、倒计时输入到LED数码管上实时显示。3.3软件结构框图 如下图3-3所示,图中描述的是基于单片机的交通灯设计的软件的结构运行状态,其中主要说明主程序和子程序之间的运行关系:通过主程序的运行,到显示子程序的调用,从而实现功能模块的显示,而后在返回到主程序,依次循环完成软件的运行。 图3-3 软件结构框图3.4软硬件分工硬件实现实物连接,软件与硬件连接相对应,通过编写程序

26、,使硬件实现期望的功能。说的形象些,软件相当于其内在本质功能,而硬件是将该功能表现出来,让人们可见罢了。4详细设计本设计使用的单片机为AT89C51.它是带有4K字节闪存的低电压高性能微处理器。其主要特性:与MCS-51兼容4KFLASH存储器,寿命:1000写/擦循环数据保留时间:10年全工作:0Hz-24MHz三级程序存储器锁定1288位内部RAM32可编程I/O线两个16位定时器/计数器5个中断源可编程串行通道低功耗的闲置和掉电模式片内振荡器和时钟电路。4.1设计电路设计电路主要由两部分组成,一部分为P1口与十二个发光二极管连接电路,另一部分是P0、P2口与八个七段显示器相连的电路,下面

27、分别详细说明。4.2交通灯电路设计中采用发光二极管作为交通灯来使用,单片机的I/O接口直接和交通灯(发光二极管)连接。在十字路口的四组红、黄、绿三色交通灯中,东西方向道路上的两组同色灯连接在一起,南北方向道路上的两组同色的灯也彼此连接在,受单片机P1.0-P1.5控制。单片机的I/O接口与交通灯电路的具体连接方式为:P1.0-P1.2分别接东西方向的红、黄、绿共6个放光二极管,P1.3-P1.5分别接南北方向的红、黄、绿共6个发光二极管。12个发光二极管采用了共阳极的连接方式,因此IO口输出低电平时,与之相连的发光二极管会发亮,IO口输出高电平时,相应的发光二极管会灭。交通灯电路如图4-1所示

28、: 图4-1(a)基于单片机红绿灯设计硬件图1 图4-1(b)基于单片机红绿灯设计硬件图24.2.1数码管的工作原理该显示装置选用七段数码管来显示交通灯转换的剩余时间,根据控制要求,每个路口需要两个数码管,这样四个路口就要求八个数码管。有序AT89C51单片机的I/O作为输出时,具有较强吸收电流能力,因此我们可以选用共阳型数码管,这样由单片机的I/O就可以直接驱动,从而简化硬件电路的设计。四个路口倒计时显示被置在同一时刻显示相同的数字,期中P0口用来显示时间的十位,P2口用来显示时间的个位。电路如下图4-2所示 图4-2 LED数码显示器 LED数码管是单片机常用的显示器件,点阵显示系统可以显

29、示复杂的字符、数字及汉字等信息。根据连接方法不同,有共阴极和共阳极两种组成方式。本系统所使用的便是共阴极数码管。共阴极数码管是将所有发光二极管的阴极接在一起,形成一个公共极com,在使用时将com极接低电平。如果想让某段亮,将该发光二极管的阳极接高电平,则该发光二极管点亮。共阳极数码管是将所有发光二极管的阳极接在一起,形成一个公共极com,在使用时将com极接高电平。如果想让某段亮,将该发光二极管的阳阴极接低电平,则该发光二极管点亮。因此,将多个段的发光二极管点亮,可组合成需要显示的字符。LED点亮时压降一般为1.4V左右,驱动电流一般为10mA,因此在驱动电路中必须加入限流电阻,对于5V供电

30、系统,限流电阻一般可取300欧姆左右。 4.2.2 I/O口扩展 在单片机应用系统中,经常用到简单的输入/输出接口,以实现数据的输入/输出,如读取键盘状态、驱动数码管显示或打印机打印等。简单的I/O口扩展的实现:扩展8位数据并行输入的简单接口输入,以及8位数据并行输出的简单输出接口。对于输入接口来说,只需要满足数据缓冲功能,以实现数据总线与外部设备的隔离。对输出接口而言,要满足数据的所存功能,以实现快速CPU与慢速外部设备的速度匹配,并隔离数据总线与外部设备。要进行输入输出扩展,首先需要清楚单片机与简单输入接口芯片的信号。单片机按照三总线方式将信号分为数据信号、地址信号和控制信号;而简单输入接

31、口芯片没有地址信号,只有数据信号和控制信号。连接时,将单片机的数据信号与输入接口芯片的数据信号相连,将单片机的地址信号与读控制信号组合成输入接口芯片所需要的控制信号在与之相连。下面以74LS240为例,如图4-3所示, 74LS240是八单线驱动器(反码,三态输出)这种八缓冲器和线驱动器是为提高三态输出存储地址驱动器,时钟驱动器和总线定向接收器和发射器性能可和集成度而特意设计的。设计者可按需要将原码,反码输出。对称/G(有效低电平输出控制) 图4-3 74LS240引脚示意图4.2.3单片机的RP1 单片机的RP1就是排阻,公共端是1#引脚,在此电路中连接到电源正极,用于上拉P0口的信号因为P

32、0口内部开漏,必须靠上拉电阻才能输出高电平。这里用10K的时候是当单片机输出低电平时保证灌入P0口的电流很小,这样减小不必要的功耗,电阻过小可能会损坏IO;输出高电平1602需要的电流也很小活着说可以忽略。 图4-4 排阻RP1引脚示意图4.2.4 单片机硬件结构 AT89C51在一块半导体芯片上集成了CPU、存储器、定时/计数器和各种I/O口等功能部件,具有一台微型计算机的属性其内部结构如图4-5所示.89C51单片机内包含以下几个部件。【1】微处理器(CPU)【2】一个片内振荡器及时钟电路【3】程序存储器(4KB Flash ROM)【4】数据存储器(128B RAM)【5】两个16位定时

33、/计数器【6】可寻址的64KB外部数据存储器和64KB外部程序存储器空间的控制电路【7】四个8位并行I/O端口【8】一个可编程全双工串行口【9】具有五个中断源,两个优先级嵌套的中断结构(0003H-000AH 外部中断0中断地址区、000BH-0012H 定时/计数器0中断地址区、0013H-001AH 外部中断1中断地址区、001BH-0022H定时/计数器1中断地址区、0023H-002AH 串行口中断地址区) 单片机的引脚一般有电源引脚、时钟引脚、控制引脚、输入/输出引脚【10】电源引脚 (1)GND:接地 (2)VCC:接+5V电源【11】时钟引脚 (1)XTAL1:内部振荡电路反相放

34、大器的输入端。使用内部振荡器时,是外接晶体的一个引脚。使用外部振荡器时,此引脚接外部振荡源。 (2)XTAL2:内部振荡电路反相放大器的输出端。使用内部振荡器时,是外接晶体的另一个引脚。使用外部振荡器时,此引脚悬空。【12】控制引脚 (1)RST:当单片机运行时,在此引脚上出现持续时间大于两个机器周期的高电平(由低到高跳变),将使单片机复位 (2)ALE/PROG:正常操作时为ALE功能(地址锁存允许信号),能够把地址的低字节锁存到外部地址锁存器中,ALE引脚以不变的频率(时钟振荡频率1/6)周期性的发出正脉冲信号。因此,它可用作对外输出的时钟,或用于定时目的。但要注意,每当访问外部数据存储器

35、时,将跳过一个ALE脉冲。 (3)PROG功能:对于EPROM型单片机,在EPROM编程期间,此引脚接收编程脉冲。 (4)PSEN:外部程序存储器读选通信号输出端。在从外部程序存储取指令(或数据)期间,PSEN接外部程序存储器的输出允许端。 (5)EA/VPP:EA为内部程序存储器和外部程序存储器选择端。当EA为高电平时,访问内部程序存储器,如果PC值大于0FFFH,将自动转向地址以1000H开始的外部程序存储器。当EA为低电平时,则直接访问外部程序存储器,地址为0000H-FFFFH。 (6)VPP功能:对于EPROM型单片机,在EPROM编程期间,此引脚上加12V EPROM编程电压。【1

36、3】输入/输出引脚 (1)P0口(P0.0-P0.7):是一个8位极漏极开路型双向I/O口,在访问外部存储器时,它是分时传送的低8位地址总线和数据总线。P0口在做普通I/O使用时需接上拉电阻,能驱动8个LS型TTL负载。 (2)P1口(P1.0-PI.7):是一个带有内部上拉电阻的8位准双向I/O口,能驱动4个LS型TTL负载。 (3)P2口(P2.0-P2.7):是一个带有内部上拉电阻的8位准双向I/O口,在访问外部存储器时,它输出高8位地址。P2口可以驱动4个LS型TTL负载。 (4)P3口(P3.0-P3.7):是一个带有内部上拉电阻的8位准双向I/O口,能驱动4个LS型TTL负载。 图

37、4-5 AT89C51引脚图 4.3软件框图4.3.1主程序流程图根据设计要求,程序框图如图4-6所示。软件可由汇编语言完成。软件设计可以分为以下几个功能模块:主程序:初始化及键盘监控计时程序模块:为定时器的中断服务子程序,完成时间定时如遇到特殊情况,可拨动应急开关,使各向均为红灯,特殊车辆不受红灯限制,待其顺利通过后将开关拨回原位,系统恢复状态运行。 图4-6 程序流程图4.3.2显示子程序流程图 如下图4-7所示,对于子程序的运行图中做出了详细的介绍。程序为开始运行状态按照程序设置取倒计时数值,把提取到的倒计时数值的十位数字的型码送到P0口;随后按照程序编程提取倒计时数值的个位数字并且把提

38、取到的倒计时数值的个位数字的型码送到P2口,随即调用延时子程序。整个子程序到此运行完毕随后返回。图4-7 子程序流程图 附录 #include #define uint unsigned int #define uchar unsigned char uchar code a10=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f; /段码组合,共阴极 uchar code b4=0xfe,0xfd,0xfb,0xf7; uchar code c6=0x78,0xb8,0xcc,0xd4,0xf8,0xdc; sbit P3_4=P34; sbi

39、t P3_5=P35; sbit P3_6=P36; sbit P3_7=P37; uchar m=30,n=35,k=0,cnt=0,y=0,j,x,y; void delay(uchar t); void scankey(void); /中断程序 void intrupt(void) TMOD=0x01;TH0=0x3c;TL0=0xb0;ET0=1;TR0=1;EA=1;/中断处理程序void key() ET0=0;TR0=0;EA=0; if(j=1)P1=0xd8; else if(x=1)P1=0; else if(y=1)P1=2; P0=a0; for(;) P2=0xfe;

40、delay(20);P2=0xfd;delay(20);P2=0xf7;delay(20);scankey();if(j=2) ET0=1;TR0=1;EA=1;j=0; break;else if(x=2) ET0=1;TR0=1;EA=1;x=0; break; else if(y=2) ET0=1;TR0=1;EA=1;y=0; break; void time1(void)intrupt 1 TH0=0x3c; TL0=0xb0; cnt+; if(cnt=20) m-;n-;cnt=0;if(m=0|n=0) k+; if(k3) k=0; switch(k) case0:m=30,

41、n=35;break;case1:n=5;break;case2:m=25,n=20;break;case3:n=5;break;void delay(uchar t) /延时0.1*n 毫秒0 uchar i; do for(i=0;i=10) if(k=1)P1=c4; else if(k=3)P1=c5; else P1=ck; else P1=ck; P2=0xfe,P0=am/10; delay(50); P2=0xfb,p0=an%10; delay(50); P2=0xf7,P0=an/10; delay(50); scankey(); void scankey(void) if

42、(P3_4=0) delay(2); if(P3_4=0) while(P3_4=0); j+; if(j-) key();if(P3_6=0) delay(2); if(P3_6=0) while(P3_6=0);m+;n+;if(P3_5=0) delay(2); if(P3_5=0) while(P3_5=0); x+; if(x-1);key();if(P3_7=0) delay(2); if(P3_7=0) while(P3_7=0); y+; if(y=1) key(); 结束语经过近一个月的设计,在王老师的悉心指导和严格要求下,我完整的看到了它的工作流程,顺利地完成了单片机控制的红绿灯设计。毕业设计是对大学三年学习成果的一次大检阅,平时课堂上学到的知识很难以融会贯通,通过本次毕业设计,让我们平时课堂上的知识得到了进一步的巩固,通过毕业设计基本可以将平时所学的一些知识应用到实际的设计中。设计刚开始时,由于对一些设

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

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1