版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、武汉职业技术学院 机电工程学院交通灯控制系统的设计学院名称:专业:班级:姓名:指导教师姓名:2013年 3 月智能交通灯控制系统的设计摘要: 本文介绍了一种基于单片机的交通灯控制系统。系统采用单片机和七段LED数码管作为交通灯的控制和显示核心,并通过控制按键对时间进行设置,最终实现对交通灯各状态持续时间的控制。系统采用上电自动复位,利用八个数码管显示交通灯各状态的剩余时间,时间显示采用倒计时方式,四组红、黄、绿三色灯用发光二极管作为模拟交通信号灯,呈四种状态交替出现。系统通过一个直流稳压电路为系统提供 +5V的直流电源。该交通系统控制方便,禁行通行时间可调,有一定实用价值。关键词 :时钟频率;
2、 LED数码显示;可调;单片机目 录序言1.第1章单片机概述.11.1. 21.2AT89C511.2.1AT89C51.3. 31.2.2AT89C51. 31.2.3AT89C51. 61.2.4AT89C5171.2.58第2章系统的总体设计.92.1 .92.2. 1 02.2.1 .1 02.2.2 .1 0第3章系统的硬件设计123.1. 1 23.1.1.123.1.2W78XX133.2. 1 33.2.1.133.2.2.143.3. 1 53.3.1.153.3.2.163.4. 1 63.4.1.163.4.2.17第4章系统的软件设计194.1C. 1 94.1.1C1
3、 94.1.2C. 1 94.2LCA. 204.2. 2 0第5章系统调试345.1. 345.2. 3 65.3. 365.4.37结束语38参考文献. 39智能交通灯控制系统的设计序 言随着经济的发展,交通运输中出现了一些传统方法难以解决的问题。道路拥挤现象日趋严重,造成的经济损失越来越大,并一直保持大比例的增长。现在交通系统已不能满足经济发展的需求。由于生活水平的提高,人们对交通运输的安全性及服务水平提出了更高的要求。在交通中管理引入单片机交通灯控制代替交管人员在交叉路口服务,有助于提高交通运输的安全性、提高交通管理的服务质量。并在一定程度上尽可能的降低由道路拥挤造成的经济损失,同时也
4、减小了工作人员的劳动强度。中国车辆数量不断增加,交通控制在未来的交通管理中起着越来越重要的作用。智能交通灯的管理比重修一条马路无论在经济、交通运行速率上都有很好的效益、更加节约资源。使交管人员有更多的精力投入到管理整个城市交通控制,带来更大的经济和社会效益 , 为创造美好的城市交通形象发挥更多的作用。本次毕业设计需要做的工作是在指导老师的指导下完成元器件的安装,软件编程,调试。本设计分为硬件和软件两个部分,硬件部分由 89C51 单片机、晶振电路、发光二极管部分、数码管显示电路等几个部分构成。软件部分通过单片机 C 语言进行编程,实现交通灯四种状态和对应的显示过程以及能够循环往复的功能。在设计
5、过程中,软硬件的功能总是不断的调整,以便相适应。硬件设计和软件设计是不能截然分开的,硬件设计时应考虑软件设计的方法,而软件设计时应了解硬件的工作原理,在整个设计过程中应互相协调,以利于提高工作效率。本文共分为 5 章,其中第 1 章介绍了单片机与AT89C51单片机,第 2 章总体上规划了设计内容以及对设计任务的分析,第3、 4、 5 章则系统的阐述了硬件设计、软件设计和软硬件的调试。本设计采用 AT89C51 单片机作为核心控制器件,实现了点亮红、黄、绿灯,显示运行时间以及设置等待时间的功能。第 1 章 单片机概述1.1 单片机简介电子计算机的发展经历了从电子管、晶体管、集成电路到大(超大)
6、规模集成电路共四个阶段,即通常所说的第一代、第二代、第三代和第四代计算机。现在广泛使用的微型计算机是大规模集成电路技术发展的产物,因此它属于第四代计算机,而单片机则是微型计算机的一个分支。从1971 年微型计算机问世以来,由于实际应用的需要,一个是向高速度、大容量、高性能的高档微机发展方向;而另一个则是向稳定可靠、体积小和价格廉的单片机方向发展。单片机是一种集成电路芯片。它采用超大规模技术将具有数据处理能力的微处理器 (CPU)、存储器(含程序存储器ROM和数据存储器RAM)、输入、输出接口电路(I/O接口 ) 集成在同一块芯片上,构成一个即小巧又很完善的计算机硬件系统,在单片机程序的控制下能
7、准确、迅速、高效地完成程序设计者事先规定的任务。所以说,一片单片机芯片就具有了组成计算机的全部功能。由此来看,单片机有着一般微处理器(CPU)芯片所不具备的功能,它可单独地完成现代工业控制所要求的智能化控制功能,这是单片机最大的特征。然而单片机又不同于单板机(一种将微处理器芯片、存储器芯片、输入输出接口芯片安装在同一块印制电路板上的微型计算机),单片机芯片在没有开发前,它只是具备功能极强的超大规模集成电路,如果对它进行应用开发,它便是一个小型的微型计算机控制系统,但它与单板机或个人电脑(PC 机 ) 有着本质的区别。单片机的应用属于芯片级应用,需要用户(单片机学习者与使用者)了解单片机芯片的结
8、构和指令系统以及其它集成电路应用技术和系统设计所需要的理论和技术,用这样特定的芯片设计应用程序,从而使该芯片具备特定的功能。不同的单片机有着不同的硬件特征和软件特征,即它们的技术特征均不尽相同,硬件特征取决于单片机芯片的内部结构,用户要使用某种单片机,必须了解该型产品是否满足需要的功能和应用系统所要求的特性指标。这里的技术特征包括功能特性、控制特性和电气特性等等,这些信息需要从生产厂商的技术手册中得到。软件特征是指指令系统特性和开发支持环境,指令特性即我们熟悉的单片机的寻址方式,数据处理和逻辑处理方式,输入输出特性及对电源的要求等等。开发支持的环境包括指令的兼容及可移植性,支持软件( 包含可支
9、持开发应用程序的软件资源) 及硬件资源。要利用某型号单片机开发自己的应用系统,掌握其结构特征和技术特征是必须的。单片机控制系统能够取代以前利用复杂电子线路或数字电路构成的控制系统,可以以软件控制来实现,并能够实现智能化,现在单片机控制范畴无所不在,例如通信产品、家用电器、智能仪器仪表、过程控制和专用控制装置等等,单片机的应用领域越来越广泛。诚然,单片机的应用意义远不限于它的应用范畴或由此带来的经济效益,更重要的是它已从根本上改变了传统的控制方法和设计思想。是控制技术的一次革命,是一座重要的里程碑。1.2 AT89C51 单片机1.2.1 AT89C51 单片机简介89 系列单片机是ATMEL公
10、司的 8 位 FLASH单片机系列。 89 系列单片机是以8031为核心构成的,它和8051 系列单片机外部端子是一样的、兼容的,其最大特点是片内含有 FLASH存储器。由于内部含有FLASH存储器,因此在系统的开发过程中可以十分容易地进行程序的修改,大大缩短了系统的开发周期。同时,在系统的工作过程中,能有效的保存一些数据信息,即使外界电源损坏也不影响信息的保存。89 系列随着用户的需要和发展,可以进行修改,使系统能够追随用户的最新要求。AT89C51单片机是一种低功耗、高性能、内含4KB的闪速存储器( Flash Memory)的 8 位 CMOS微控制器。这种器件系以 ATMEL高密度不挥
11、发的存储技术制造,与工业标准 MCS 51 指令系统和引脚完全兼容。片内闪速存储器的程序代码或数据可在线写入,也可通过常规的编程器编程。1.2.2 AT89C51 单片机引脚说明在 89 系列中,在器件引脚的封装上, MCS-51系列机通常有两种封装:一种是双列直插式,常为 HMOS型器件所用;另一种是方形封装,大多数在 CHMOS型器件中使用。89C51单片机 DIP40 封装如 1- 所示图 1-1 直插式封装89C51有 40 条引脚,分为端口线、电源线和控制线三类。1端口线( 4*8=32 条)89C51有四个并行 I/O 端口,每个端口都有8 条端口线,用于传送数据或地址。由于每个端
12、口的结构各不相同,因此它们在功能和用途上的差别颇大。先对它们的综述如下: P0.0-P0.7:这组引脚共有8 条,为 P0口所专用,其中P0.7 为最高位, P0.0 为最低位。这 8 条引脚有两种不同的功能,分别使用于两种不同的情况。第一种情况是 89C51 不带片外存储器, P0 口可以作为 I/O 通用口, P0.0-P0.7 用于传送 CPU的输入 / 输出数据。这时输出数据可以得到锁存,不需要外接专用锁存器,输入数据可以得到缓冲,增加了数据输入的可靠性;第二种情况89C51 带片外存储器, P0.0-P0.7 在 CPU访问外部片外存储器的时用于传送外存储器的低8 位地址,然后传送C
13、PU对片外存储器的读写数据。 P1.0-P1.7: 这 8 条引脚和 P0 口的 8 条引脚类似, P1.7 为最高位, p1.0 为最低位。当 P1 口作为通用 I/O 口使用时, P1。 0-P1。 7 的功能和 P0 口的第一功能相同,也用于传送用户的输入 / 输出数据。 p2.0-p2.7 :这组引脚的第一功能和上述两组引脚的第一功能相同,即它可以作为通用 I/O 口使用。它的第二功能和 P0 口的引脚的第二功能配合使用,用于输出片外存储器的的高 8 位地址,共同选中片外存储器单元,但并不象 P0 口那样还可以传送存储器的读写数据。 P3.0-P3.7 :这组引脚的第一功能与其余三个端
14、口的第一功能相同。第二功能作为控制用,每个引脚并不完全相同,如表 1-1 所列。表 1-1 P3口各位的第二功能P3 口的位第二功能注释P3.0RXD串行口数据接受口P3.1TXD串行口数据发送口P3.2INTO外中断 0 输入P3.3INT1外中断 1 输入P3.4T0计数器 0 计数输入P3.5T1计数器 1 计数输入P3.6WR外部 RAM写选通信号P3.7RD外部 RAM读选通信号2电源线( 2 条)VCC为+5V 电源线, VSS为接地线。3. 控制线( 6 条) ALE/ PROG:地址锁存允许 / 编程线,配合 P0 口的第二功能使用。在访问片外存储器时, 89C51CPU在 P
15、0.0-P0.7 引脚上输出片外存储器的低 8 位地址的同时还在 ALE/ PROG 线上输出一个高电位脉冲,用于把这个片外存储器低8 位地址锁存到外部专用地址锁存器中,以便空出p0.0 p0.7引脚线去传送随后面来的片外存储器读写数据。在不访问片外存储器的时候,89C51 自动在ALE/ PROG线上输出频率为fosc/6的脉冲序列。该脉冲序列可用于外部时钟或作为定时脉冲源使用。 EA /VPP:允许访问片外存储器 / 编程电源线,可以控制 89C51 使用片内 ROM还是使用片外ROM。若EA =1 时,则允许使用片内ROM;若EA =0,则允许使用片外 ROM。 PSEN : 片外 RO
16、M选通线,正在执行访问片外ROM的指令MOVC时,自动在PSEN 线上产生一个负脉冲用于为片外ROM芯片的选通。其它情况下,PSEN 线均为高电平封锁状态。RST/VPD:复位 / 备用电源线,可以使89C51处于复位(即初始化的)状态。通常, 89C51的复位有自动上电复位和人工按钮复位,电路如图1-2 所示 :上电自动复位手工自动复位图 1-2 89C51 复位电路图RST/VPD的第二人功能是作为备用电源输入端。当主电源VCC 发生故障而降低到规定低电平时,RST/VPD线上的备用电源自动投入,以保证片内RAM中的信息不丢失。XTAL1 和 XTAL2 :片内振荡电路输入线,这两个端子用
17、来外接石英晶体和微调电容,即用来连接89C51片内 OSC的定时反馈回路,相应的电路如图1-3 所示。石英晶体起振后要能在XTAL2 线上输出一个 3V 左右的正弦波,使单片机片内的 OSC电路按石英晶振相同频率自激振荡。通常, OSC 的输出时钟频率为 0.5MHZ-16MHZ,典型值为 12MHZ或 11.0592MHZ。电容 C01 和 C02 可以帮助起振,典型值为30PF,调节它们可以达到微调时钟频率的目的。图 1-3晶振连接图89C51所需的时钟有时也可以由外部震荡器提供,在此略讲。1.2.3AT89C51主要特性:(1)与MCS-51兼容(2)4K字节可编程闪烁存储器(3)寿命:
18、1000写/擦循环(4)数据保留时间:10年(5)全静态工作:0Hz-24Hz(6)128*8位内部RAM(7)32可编程I/O线(8)两个16位定时器/计数器(9)5个中断源(10)可编程串行通道(11)低功耗的闲置和掉电模式(12) 片内振荡器和时钟电路1.2.4AT89C51芯片内部资源1. 中央处理器 CPUCPU是单片机的核心。它由运算器和控制器组成。运算器以ALU为核心,用以完成二进制数饿算术和逻辑运算。控制器是单片机CPU的大脑中枢。它在时钟信号的同步作用下对指令进行译码,使单片机系统的各部件按时序协调工作。2.片内 RAMAT89C51芯片内部共有 256 个字节的 RAM单元
19、,但高 128 单元只有一部分被特殊功能寄存器占用,其余的单元用户不能使用。这些特殊功能寄存器,其功能已有专门饿规定,用户不能随意赋值。只有低128 个单元可以作为随机存储单元供用户使用,这些单元主要用于存放随机的数据及运算的中间结果。通常说的RAM就是指这低128 个单元。 AT89C51单片机内部有 4KB的闪存,主要用于存放程序,原始数据和表格内容,后被称之为程序存储器。3. 定时器 / 计数器AT89C51 型单片机内部有2 个 16 位的定时器 / 计数器,以实现定时或计数功能,并以其定时或计数的结果对系统进行控制。4. 并行 I/O 口AT89C51型单片机由 4 个 8 位并行
20、I/O 口,即 P0、 P1、P2 和 P3口。这些端口可以用作一般输入或输出口。但通常 P0 口作为 8 位数据总线和低 8 位地址总线的复用口。 P2 口常用作高 8 位的地址总线。而 P3 口的各个管脚多以第二功能输出形式出现。因此,一般情况下只有 P1 口的 8 个管脚作为通用 I/O 口。5. 串行口AT89C51型单片机有一个全双工的串行口,用以实现单片机和其他设备之间的串行数据传送。该串行口功能较强,既可以作为全双工异步通信收发器使用,也可以作为同步移位寄存器使用。6. 中断控制系统AT89C51型单片机共有 5 个中断源,即 2 个外部中断、 2 个定时 / 计数器中断缘和 1
21、个串行中断源。全部中断源可设定为高低2 个中断优先级,用来满足控制应用的需要。1.2.5片内闪电存储器的编程AT89C51片内存储器售后通常处于擦除状态,即每地址单元内容均为FFH,人们随时可对其编程。编程电压Vpp 有高压 12V 的,也有低压5V 的(如表 2-2 )。低压编程方式为在用户系统内对AT89C51进行编程提供了方便;而高压编程方式则与常规的闪电存储器或 EPROM编程器相兼容。在这两种方式下,AT89C51代码程序阵列均是逐个字节进行编程的。为对片内闪电存储器任意非空白字节进行编程,必须用芯片内擦除方式将整个存储器擦掉。在各种控制信号适合组合的情况下,对ALE/ PROG 引
22、脚施加一长度为10ms 的低电平信号,整个闪电存储器阵列即为全部擦除。擦除后代码阵列各地址单元的内容均为 FFH。只有在芯片被擦除后,代码存储器才能重新编程。表 1-2 片内闪电存储器的编程编程电压Vpp=12VVpp=5V第 2 章顶面标记AT89C51AT89C51务的分XXXXXXX5统的总YYWWYYWW片内暗含标记(030H)=1EH(030H)=1EH2.1设(031H)=51H(031H)=51H的分析(032H)=FFH(032H)=05H本设计的交通灯系统主要有如下功能:1东、西、南、北方位均有三色灯指示;2交通路口的通行、等待及禁行时间要用共阴(或共阳)数码管显示;3绿灯通
23、行时间、黄灯闪烁时间及红灯禁行时间需可调;设计任析与系体设计计 任 务4绿灯通行时间和红灯禁行时间最长可调至90 秒;本设计把它绘制成一个四个路口示意图,如图北、东、南、西四个流向的主车道,用R,G,Y2-1 。分别用 ROAD1、2、3、4 表明分别表示红色,绿色,黄色的交通信号灯。图2-1四个路口交通示意图那么交通灯闪亮的过程为:东西绿灯亮,南北红灯亮,东西黄灯闪烁,南北黄灯闪烁,东西红灯亮,南北绿灯亮,南北黄灯闪烁,东西黄灯闪烁。AT89C51具有高速度、低电压、低功耗、且可靠性和成本都比较低的特点。因此本次毕业设计采用 AT89C51单片机作为整个电路核心控制器件。对于本交通控制系统使
24、用一片 AT89C51系列的单片机,不需要外扩展存储器,就能实现显示、预制状态、动态调节的功能,因而整体结构简单。AT89C51 的运用能够使设计的交通灯电路系统满足于实用。设计电路时运用 89C51系列单片机的接口来控制数码管的显示和交通灯的状态。用 P0 口和 P2 口来控制数码管的显示。数码管的显示由单片机的P0 口控制, P0.0-P0.3 口显示个位, P0.4-P0.7 显示十位。用 P1 口来控制交通灯的状态即发光二极管的状态。用 P3 口控制等待时间的调试。用 9013PNP型三极管实现对共阴极数码管的驱动。同时设计了一个 5V 直流稳压电路增加了电路的适用性,使整个系统更加紧
25、凑,工作十分稳定。2.2 系统的总体设计规划2.2.1硬件部分本设计采用AT89C51单片机作为面板控制部件,AT89C51用上电自动复位,12MHZ的晶振和两个微调电容形成晶振电路。面板上有8 个数码管,用于显示各个状态的剩余时间, BCD码转化成数码管七段显示信号。四组红、黄、绿共十二只发光二极管作为模拟交通信号灯,成四种状态循环出现。一个直流稳压电路为系统提供一个+5V 的稳定的直流电压。系统总框图如 2-2 所示:图 2-2 系统总框图2.2.2软件部分智能交通灯控制系统的软件部分主要是有主程序、初始化程序、定时器0 中断服务子程序、定时器1 中断服务子程序、设置显示数子程序、按键子程
26、序、通用加减键最大最小值处理子程序、显示和延时子程序等几部分组成。软件部分采用单片机C语言编写程序,用 LCA51软件进行程序的编译和联接。(这部分内容将在第4 章中作详细介绍)单片机 C 语言程序设计步骤:第一步 :分析问题。第二步 :画出程序的基本轮廓。第三步 :实现该程序。开始图 2-3程序流程图初始化第 3章系统的硬件设计本系统硬件电路包括直流稳压电源电路,数码管显示电路,红绿灯电路,键盘电路等 4 部分电路的设计,下面分别介绍各部分电路的设计。3.1 直流稳压电源设计N3.1.1 直流稳压电源是否概显述示 当前运行时间我们知道电子设备中需要直流电源,它们可以采用干电池供电或其他直流能
27、源供N是否显示黄Y灯闪烁时间Y显示运行时间显示黄灯默电。但是相对地说,这些电源每“瓦时”所需的费用较高。在有交流电网的地方,一般采用将交流电变为直流点的直流稳压电源。直流稳压电源是先把交流电变为脉动的直流电,再通过滤波电路,稳压电路,使输出直流电压维持稳定。直流稳压电源一般包括以下4 个部分:(1) 电源变压器将电网供给的交流电压变换为符合整流电路需要的交流电压;(2) 整流电路将变压器次级交流电压变换为单向脉动的直流电压;(3) 滤波电路将脉动的直流电压变换为平滑的直流电压;(4) 稳压电路使直流输出电压稳定。电源电路设计的要求是将220V 交流电转化为5V 的直流电,如图4-1 所示变压器
28、将 220V 交流电变换为 12V 交流电,经过整流桥堆又变换为 12V 的直流电,三端集成稳压器 W7805的作用是将 12V 的直流电转化为 5V 的直流电,下面的 4 个电容是用来滤波的。178054213Vin DVoutNG32+3300100100103GND图 3-1电源电路图3.1.2 W78XX 三端集成稳压器简介从外形上看,集成串联型稳压电路有三个脚,分别为输入端、输出端和公共端,因此称为三端稳压器。按功能分为固定式和可调节式稳压电路;前者输出的电压不能进行调节,为固定值;后者可通过外接外接元件使输出电压得到很宽的调节范围11 。三端稳压器具有体积小、重量轻、性能好、成本低
29、、靠性高和使用方便等优点。本设计中用的W78系列的三端稳压器为固定式稳压电路。下面就对W78做一下介绍。W78系列输出正电压,有七个等级W7805、W7806、W7809、W7812、 W7815、 W7818、W7824W79系列输出负电压、有七个等级W7905、W7906、W7909、W7912、 W7915、 W7918、W7924型号最后两位数为输出电压值,如本次设计中采用的W7805其输出的电压为5V。当输出电压UO 因某种原因(如电网电压的波动和负载的变化)而增大时,内部比较放大电路的反相输入端电位随之生高,使得放大电路输出端电位下降,UO 势必随之减小;当输出电压因某种原因而减小
30、时,各部分的变化与上述过程相反;因而输出电压稳定。3.2 数码管显示电路设计3.2.1 数码管简介(八段 LED显示器)引入:还记得小时候玩的“火柴棒游戏”吗,几根火柴棒组合起来,可以拼成各种各样的图形,LED显示器实际上也是这么一个东西(如图4-1所)。图 3-2 八段 LED显示器八段 LED显示器由 8 个发光二极管组成。基中 7 个长条形的发光管排列成“日”字形,另一个贺点形的发光管在显示器的右下角作为显示小数点用,它能显示各种数字及部份英文字母。 LED显示器有两种不同的形式:一种是 8 个发光二极管的阳极都连在一起的,称之为共阳极 LED 显示器;另一种是 8 个发光二极管的阴极都
31、连在一起的,称之为共阴极 LED显示器。如上图所示。 共阴和共阳结构的 LED显示器各笔划段名和安排位置是相同的。当二极管导通时,相应的笔划段发亮,由发亮的笔划段组合而显示的各种字符。 8 个笔划段 hgfedcba 对应于一个字节( 8 位)的 D7 D6 D5 D4 D3 D2 D1 D0, 于是用 8 位二进制码就可以表示欲显示字符的字形代码。例如,对于共阴LED显示器,当公共阴极接地(为零电平),而阳极hgfedcba 各段为 01110011 时,显示器显示 "P" 字符,即对于共阴极LED显示器,“ P”字符的字形码是73H。如果是共阳LED显示器,公共阳极接高
32、电平,显示“P”字符的字形代码应为10001100(8CH)。发光二极管组成的显示器是单片机应用产品中最常用的廉价的输出设备. 它由若干个发光二极管按一定的规律排列而成, 当某一个发光二极管导通时, 响应的一个点或一笔画被点亮 , 控制不同组合的二极管导通,就能显示出各种字符。点亮显示器有静态和动态两种方法。为了节省I/O 口线 ,本设计采用了动态显示, 所谓动态显示就是一位一位地轮流点亮显示器各个位(扫描),对于显示器的每一位来说,每个一段时间点亮一次. 利用人的视觉暂留功能可以看到整个显示, 但必须保证扫描速度足够快 , 字符才不会闪烁。3.2.2 数码管显示电路的连接如图 3-3 所示的
33、是数码管显示电路,三极管接的是数码管的片选信号,数码管的显示部分通过一个排阻连接到单片机的P0 口,8 个数码管的片选信号端都连接到单片机的 P2 口。单片机运行的时候通过 P0 口给出所显示的数字, P2 口控制数码管是否工作。89c511P10P003912382P11P013373P12P024364P13P035355P14P046346P15P057337P16P068328P17P07913INT1P20211222INT0P2123P221524T1P231425T0P2426P253127EA/VPP2628P2719X118X29RESETRXD1011TXD1730RDAL
34、E/P1629WRPSENTRANS14.7KDS181aDPY172ba163cfb154dg145eec136fd127dpg118dp10DPY_7-SEG_DPSW DIP-9+5VR150R4.7KQ9013图 3-3 数码管显示电路3.3 红绿灯电路设计3.3.1 发光二极管简介发光二极管包刮可见光、不可见光、激光等不同类型,这里只对可见光发光二极管做一简单介绍。发光二极管的颜色决定与所用材料,目前有红、绿、黄、橙等色,可以制成各种形状,如长方形,圆形等。发光二极管也具有单向导电性。只有当外加的正向电压使得正向电流足够大时才发光,它的开启电压比普通二极管的大,红色的在1.6-1.8
35、V之间,绿色的在2V 左右。正向电流越大,发光越强。使用时,应特别注意不要超过最大功耗、最大正向电流和方向击穿电压等极限参数。发光二极管因驱动电压低、功耗小、可靠性高等优点广泛用于显示电路之中。3.3.2 红绿灯电路的连接如图 3-4 所示是红绿灯电路, 1K 电阻接到 +5V 电源上,发光二级管接到单片机的P1 口,这个电路是用来控制发光二极管发光的。单片机运行的时候通过P1 口来控制哪个二极管亮, 1K 的电阻是用来防止电路中的电流过大导致烧坏发光二极管DU?R1P10P001K2LEDP11P013P12P02D4P13P035RP14P046P15P051K7LEDP16P068P17
36、P07D13RINT1P20+5V12INT0P211KLED15P22T1P2314T0P2431P25EA/VPP26RRR19P27X11K1K1K18X29RESETRXD17TXDRDALE/P16WRPSENDDDNPNLEDLEDLED3938373635343332212223242526272810113029图 3-4 红绿灯电路3.4 键盘电路设计3.4.1 键盘工作原理及消抖键盘是一组按键的集合,键是一种常开型按钮开关,平时(常态)键的两个触电处于短开状态,按下键时它们才闭合(短路)。键盘分独立式键盘与行列式键盘两种。综合题目对该要求不是太高的特点,我们选择了较为简单的
37、独立式键盘进行操作。这中键盘结构的优点是电路简单;缺点是当键数较多时,要占用较多的I/O 线。独立式按键是各按键相互独立地接通一条输入数据线,各按键的状态互不影响,同时电路采用了中断方式读取键值。因为89C51 系列单片机 P1 口已经有上拉电阻,所以选择P1 口作为键盘输入端。当没有键盘按下时,与之相连的输入口线为1(高电平),与门输出为高电平。当任何一个键按下时,与之相连的输入口线被置0(低电平),与门输出由高变底,产生中断条件,在中断服务程序中读取键盘值。键盘操作特点。当按键未被按下(即断开)时,P1.1 输入为高电平,按键闭合后,P1.1 输入为低电平。通常的按键所用的开关为机械弹性开
38、关,当机械触点断开、闭合时,电压信号会抖动。由于机械触电的弹性作用,一个按键开关在闭合时不会马上稳定地接通,在断开时也不会马上断开,因而在闭合及断开的瞬间均伴随有一连串的抖动。抖动时间的长短由按键的机械特性决定,一般为 5ms-10ms。这种抖动对于人来说是感觉不到的,但对于单片机来说,则是完全可以感应到的,因为单片机处理的速度在微秒级。假如对按键不进行消抖处理,如果通过键盘输入一个 1,单片机程序却已执行了多次输入 1 按键处理程序,其结果是认为我们输入了若干个 1。按键抖动的消除方法。按键抖动会引起一次按键被误读多次,为了确保单片机对键的一次闭合仅做一次处理,必须去除抖动,在键闭合稳定时取
39、键状态,并且必须判别到键释放稳定后再进行处理。按键的抖动,可用硬件或软件两种方法消除。通常在键数较少时,可用硬件方法消除抖动。 RS 触发器位常用的硬件去抖电路。单片机中常用软件法。软件消抖法很简单,就是在单片机获得 P1.1 口为低的信息后,不是立即认定按键已被按下,而是延时 10ms 或更长的一些时间后再次检测 P1.1 口,如果仍为底,说明按键的确按下了,这实际上是避开了按键按下时的抖动,再对键值处理。不过一般情况下,通常不对按键释放的后沿进行处理,实践证明,也能满足一定的要求。当然,实际应用中,对按键的要求也是千差万别的,要根据不同的需要编制处理程序,但以上是消除键抖动的原则。3.4.
40、2 键盘电路的连接如图 4-4 所示为键盘电路, S1,S2,S3 分别接单片机的 INTO,INT1,T0, 也就是单片机的 P3.2 口, P3.3 口, P3.4 口。这部分电路针对三种状态的时候,实现各自不同的功能:(1)当前显示运行时间的时候,如果按键S1 被按下,则打开黄灯闪烁标志位;如果按键 S3 被按下,则打开设置红绿灯标志。(2)当前为设置黄灯闪烁时间的时候,如果按键S1 被按下,则重新读取红绿灯的运行时间。( 3)当前为设置红绿灯时间的时候,如果按键S1 被按下,则将设置好的值送当前的运行时间。89c51RES2+5V1P10P0039238P11P01337RRRP12P
41、02436P13P033K3K3K535P14P04634P15P05GND733P16P06832P17P07S113INT1P2021S21222INT0P2123P22S31524T1P231425T0P2426P253127EA/VPP2628P2719X1Y18X2C9RESETRXD10C12M11TXDC+1730RDALE/P30P30P1629WRPSEN10UGNDR10KGND图 4-4 键盘电路第 4章系统的软件设计4.1 C 语言简介4.1.1 C语言的特点用 C 编写程序更符合人们的思考习惯,开发者可以摆脱与硬件无必要的接触,更专心的考虑功能和算法而不是考虑一些细节问题,这样就减少了开发和调试的时间。C语言具有良好的程序结构, 适用于模块化程序设计,因此采用C 语言设计单片机应用系统程序时,首先要尽可能地采用结构化的程序设计方法,将功能模块化,由不同的模块完成不同的功能 7 ,这样可使整个应用系统程序结构清晰,易于调试和维护。不同的功能模块,分别指定相应的入口参数和出口参数,对于一些要重复调用的程序一般把其编
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年度大型水利工程采砂厂承包权转让合同范本3篇
- 二零二五版国际贸易合同主体欺诈责任划分与损害赔偿合同3篇
- 2025年度鲜羊奶品牌授权及区域代理销售合同范本3篇
- 2025年度出租车行业驾驶员权益保护合作协议3篇
- 2024版加油站柴油订货与销售协议范例版B版
- 专业水泥销售协议:2024版细则版A版
- 二零二五年度高压电缆敷设与维护保养合同大全3篇
- 2024版吉阳区环卫设施安全检查评估合同
- 2024技术岗位聘用合同范本
- 二零二五年度特色猪种养殖基地猪栏承包协议3篇
- 危险性较大分部分项工程及施工现场易发生重大事故的部位、环节的预防监控措施
- 继电保护试题库(含参考答案)
- 《榜样9》观后感心得体会四
- 2023事业单位笔试《公共基础知识》备考题库(含答案)
- 《水下抛石基床振动夯实及整平施工规程》
- 2025年云南大理州工业投资(集团)限公司招聘31人管理单位笔试遴选500模拟题附带答案详解
- 风电危险源辨识及控制措施
- 《教师职业道德与政策法规》课程教学大纲
- 儿童传染病预防课件
- 护理组长年底述职报告
- 《住院患者身体约束的护理》团体标准解读课件
评论
0/150
提交评论