




已阅读5页,还剩30页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
【摘要】 交通在人们的日常生活中占有重要的地位,随着人们社会活动的日益频繁, 这点更是体现的淋漓尽致。交通信号灯的出现,使交通得以有效管制,对于疏 导交通流量、提高道路通行能力,减少交通事故有明显效果。本系统采用单片 机 AT89C51 为中心器件来设计交通灯控制器,系统实用性强、操作简单、扩展 性强。本设计就是采用单片机模拟十字路口交通灯的各种状态显示以及倒计时 时间。软件上采用 C51 编程,主要编写了主程序,LED 数码管显示程序,中断 程序延时程序等。经过整机调试,实现了对十字路口交通灯的模拟。 关键词关键词:显示,单片机,交通灯 Abstract:Traffic in Peoples Daily life has important position, as people of social activities have become increasingly frequent, this is reflected the incisively and vividly. The emergence of the traffic lights, traffic is effectively controlled, for facilitating traffic flow, improve road capacity, reduce traffic accidents have obvious effect. The system USES AT89C51 single chip for center device to designing traffic light controller, system practical, simple operation and expandability. This design is simulated by single chip microcomputer intersection traffic lights to the various states display, and the countdown time. Software is used on C51 programming, mainly to write the main program, LED digital tube show program, interruption program delay procedures, etc. After the commissioning, realize the intersection of traffic simulation. KEYWORDS: Traffic Control, Single Chip Microcomputer , 80C51 目目 录录 前言前言.1 1 1 交通灯设计方案的选择与论证交通灯设计方案的选择与论证.2 1.1设计任务及要求论证.2 1.1.11.1.1 任务任务:.2 1.1.2 方案选择与论证 .2 1.2 设计主要内容及设计思路.3 1.3 方案组成和说明.4 1.4 AT89C51 简介.5 1.5 两位七段式数码管 .8 1.5.1 两位七段式数码管介绍:.8 2 2 系统硬件设计与实现系统硬件设计与实现.9 2.1 简易交通灯基本组成部分 .9 2.2 时钟电路设计 .9 2.3 复位电路设计.10 2.4 按键接口电路设计.10 2.5 交通灯状态显示电路的设计.11 2.5.1 LED 基本结构.12 2.5.2 LED 译码方式.13 2.5.3 LED 显示器与单片机接口设计.13 3 3 系统软件设计系统软件设计.14 3.1 程序流图.14 4 4 系统调试系统调试.16 4.1 硬件调试 .16 4.2 软件调试 .16 4.3 PROTEUS软件仿真 .16 4.3.1 仿真过程 .17 5 5 毕业设计体会毕业设计体会.19 5.1 心得体会 .19 结束语结束语.20 文献文献.21 附录一:交通灯硬件电路附录一:交通灯硬件电路.22 附录二:源程序附录二:源程序.23 附录三:元器件清单及使用说明附录三:元器件清单及使用说明.29 1 前言前言 今天,红绿灯安装在各个道口上,已经成为疏导交通车辆最常见和最有效 的手段。但这一技术在 19 世纪就已出现了。 1858 年,在英国伦敦主要街头安装了以燃煤气为光源的红,蓝两色的机械 扳手式信号灯,用以指挥马车通行。这是世界上最早的交通信号灯。1868 年, 英国机械工程师纳伊特在伦敦威斯敏斯特区的议会大厦前的广场上,安装了世 界上最早的煤气红绿灯。它由红绿两块以旋转式方形玻璃提灯组成,红色表示 “停止” ,绿色表示“注意” 。1869 年 1 月 2 日,煤气灯爆炸,使警察受伤,遂 被取消。 1914 年,电气启动的红绿灯出现在美国。这种红绿灯由红绿黄三色圆形的 投光器组成,安装在纽约市 5 号大街的一座高塔上。红灯亮表示“停止” ,绿灯 亮表示“通行” 。 1918 年,又出现了带控制的红绿灯和红外线红绿灯。带控制的红绿灯,一 种是把压力探测器安在地下,当车辆接近时,红灯便变为绿灯;另一种是用扩音 器来启动红绿灯,司机遇红灯时按一下喇叭,就使红灯变为绿灯。红外线红绿 灯当行人踏上对压力敏感的路面时,它就能察觉到有人要过马路。红外光束能 把信号灯的红灯延长一段时间,推迟汽车放行,以免发生交通事故。 信号灯的出现,使交通得以有效管制,对于疏导交通流量、提高道路通行 能力,减少交通事故有明显效果。1968 年,联合国道路交通和道路标志信号 协定对各种信号灯的含义作了规定。绿灯是通行信号,面对绿灯的车辆可以 直行,左转弯和右转弯,除非另一种标志禁止某一种转向。左右转弯车辆都必 须让合法地正在路口内行驶的车辆和过人行横道的行人优先通行。红灯是禁行 信号,面对红灯的车辆必须在交叉路口的停车线后停车。黄灯是警告信号,面 对黄灯的车辆不能越过停车线,但车辆已十分接近停车线而不能安全停车时可 以进入交叉路口。 随着经济的发展,交通运输中出现了一些传统方法难以解决的问题。道路 拥挤现象日趋严重,造成的经济损失越来越大,并一直保持大比例的增长。由 于生活水平的提高,人们对交通运输的安全性及服务水平提出了更高的要求。 在交通中管理引入单片机交通灯控制代替交管人员在交叉路口服务,有助于提 高交通运输的安全性、提高交通管理的服务质量。并在一定程度上尽可能的降 低由道路拥挤造成的经济损失,同时也减小了工作人员的劳动强度。 中国车辆数量不断增加,交通控制在未来的交通管理中起着越来越重要的 作用。 2 1 1 交通灯设计方案的选择与论证交通灯设计方案的选择与论证 1.1 设计任务及要求论证设计任务及要求论证 1.1.11.1.1 任务任务: 本设计系统是基于单片机的模拟交通灯控制系统,具有一定的实际意义。 本课题的目的是以单片机为核心,通过 LED 数码管显示和 LED 灯完成了十字路 口的工作状态的模拟,并且通过按键有效的控制等待时间的长短。其运行可靠, 操作方便,适用性强,可以广泛应用于城市路口,具有较大的推广价值。设计 好后通过 PROTUES 软件仿真,并调试。 1.1.21.1.2 方案选择与论证方案选择与论证 交通灯控制系统,可由多种电路来构成,我们这里提供三种方案供选择: 方案一:采用可编程控制器,可编程控制器又称 PLC 是一种数字运算操作 的电子系统,专为在工业环境下的应用而设计。它采用可编程的存储器,存储 执行逻辑运算、顺序控制、定时、计数和算术运算等操作的面向用户的指令, 并能通过数字或模拟输入输出模块,控制各种类型的机械或生产过程。PLC 控 制一般具有可靠性高、易操作、维修、编程简单、灵活性强等特点。 PLC的主要特点: 1) 可靠性:对维修的产品,可靠性包括产品的有效性和可维修性; 2) 易操作性:对 PLC 的操作包括程序输入和更改的操作。大多数 PLC 采用编 程器进行输入和更改的操作。编程器至少提供了输入信息的显示,对大中型的 PLC,编程器采用了 CRT 屏幕显示,因此,程序的输入直接可以显示。更改程序 的操作也可以直接根据所需要的地址编号或接点号进行搜索或顺序寻找,然后 进行更改。更改的信息可在液晶屏或 CRT 上显示。 3) 编程方便。PLC 有多种程序设计语言可供使用。 4) 灵活性:PLC 采用的编程语言有梯形图,布尔助记符、功能表图、功能模块 和语句描述编程语言编程方法的多样性使编程方便,应用面拓展。扩展灵活性 是它的一个重要特点。它可根据应用的规模不同,即可进行容量的扩展、功能 的扩展、应用和控制范围的扩展。 但是 PLC 的价格过于昂贵,不易拓展和升级,无法实现大众化,所以控制 系统将向单片机控制系统逐渐过度。 方案二:采用 FPGA(现场可编程门阵列)作为系统的控制器。FPGA 可以实 现各种复杂的逻辑功能,规模大,密度高,它将所以器件集中在一块芯片上, 减小了体积,提高了稳定性,并且可一应用 EDA 软件仿真、调试,易于进行功 3 能扩展。FPGA 采用并行的输入输出方式,提高了系统的处理速度,适合作为大 规模实时系统的控制核心。但由于本设计对数据处理的速度要求不高,FPGA 的 高速处理优势得不到充分体现,并且由于起集成度高,使其成本偏高,同时由 于芯片的引脚较多,实物硬件电路板布线复杂,加重了电路设计和实际焊接的 工作。 方案三:采用单片机编程控制的方式。随着大规模集成电路技术的发展, 微型计算机也在不断的进步,而其中就包含单片机技术。单片机主要应用于控 制领域,用以实现各种测试和控制功能。 单片机的特点: 1) 控制系统在线作用。单片机的控制作用可分为两个方面:一是离线控制, 二是在线控制。 2) 软硬件结合。单片机的引入使控制系统大大“软化” ,相比其他计算机应用 问题,单片机控制应用中的硬件内容较多,所以单片机控制应用有软硬结 合的特点。 3) 应用现场环境恶劣。通常单片机应用现场的环境比较恶劣,电磁干扰、电 源波动、冲击振动、高低温等因素都会影响系统的工作的稳定。此外,无 人值守的环境也会对单片机系统的稳定性和可靠性提出更高的要求。所以 稳定和可靠在单片机的应用中具有格外重要的意义。 4) 应用的广泛性。在生活和生产的各个领域中,凡是有自动控制要求的地方 都会有单片机的身影出现。其应用领域包括工业自动化方面、仪器仪表方 面、家用电器方面、信息和通信产品方面以及军事装备方面。 5) 综上所述,单片机的稳定性,可靠性都有着很好的保证,它也具有一定的 精度,且低电压、低功耗。从经济方面考虑,也最为合适。所以此次设计 选用单片机为核心控制器。在本系统的开发和设计中,选择 ATMEL 公司的 AT89C52 单片机最合适。 1.21.2 设计主要内容及设计思路设计主要内容及设计思路 内容内容: 1) 单片机基本系统电路设计; 2) 显示、按键电路设计; 3) 软件设计; 4) Proteus professional 软件的模拟仿真; 设计思路设计思路: 交叉字路口是城市交通运输的咽喉,如何使各种交通流顺畅地通过是城市 交通信号控制系统成功与否的关键。随着现代城市的发展,交通流量的增加, 4 图 1-1 交叉路口结构图 现在的大中城市都以六车道居多,本方案即以六车道为控制对象,其结构如图 2-1 所示: 本设计主要是关于交通灯的智能控制,车辆行驶时共有直行、左转、右转 三个方向,通过数码管对倒计时间的显示和红、绿、黄三色灯的指示,以达到 交通顺畅通行的目的。同时,可以通过按键来控制倒计时的长短,实现智能控 制人流高峰和低谷时,交通灯运行的状态。 1.31.3 方案组成和说明方案组成和说明 单片机模块是整个系统的核心部分,在这样一个模拟交通灯系统中,需要 有时钟电路模块提供基准震荡频率以及单片机基本系统、指示电路、显示电路、 键盘电路、电源电路、下载线电路设计。系统基本原理方框图如图 1-2 所示: 单 片 机 数码显示 电 源 复 位 下载线 按 键 LED 指示 图 1-2 系统基本原理方框图 由上总体方框图可以看到此次设计硬件电路有六大部分所构成,围绕以主 控部分发挥各自的功能。只有这几部分有机结合才可以很好的实现本次设计的 目的。 5 1.41.4 AT89C51AT89C51 简介简介 AT89C51 是一种带 4K 字节闪烁可编程可 擦除只读存储器(FPEROMFalsh Programmable and Erasable Read Only Memory)的低电压,高性能 CMOS8 位微处理 器, ATMEL 的 AT89C51 是一种高效微控制器, AT89C51 是它的一种精简版本。AT89C51 单片 机为很多嵌入式控制系统提供了一种灵活性 高且价廉的方案。外形及引脚排列如 1-2 所 示。 图 1-3 AT89C51 引脚排列图 1、管脚说明: VCC:供电电压。 GND:接地。 P0 口:P0 口为一个 8 位漏级开路双向 I/O 口,每脚可吸收 8TTL 门电流。 当 P1 口的管脚第一次写 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 口输出地址的高八位。在给出地址“1”时,它利用内部上拉 优势,当对外部八位地址数据存储器进行读写时,P2 口输出其特殊功能寄存器 的内容。P2 口在 FLASH 编程和校验时接收高八位地址信号和控制信号。 P3 口:P3 口管脚是 8 个带内部上拉电阻的双向 I/O 口,可接收输出 4 个 TTL 门电流。当 P3 口写入“1”后,它们被内部上拉为高电平,并用作输入。 作为输入,由于外部下拉为低电平,P3 口将输出电流(ILL)这是由于上拉的 缘故。 RST:复位输入。当振荡器复位器件时,要保持 RST 脚两个机器周期的高电 平时间。 6 ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址 的地位字节。在 FLASH 编程期间,此引脚用于输入编程脉冲。在平时,ALE 端 以不变的频率周期输出正脉冲信号,此频率为振荡器频率的 1/6。因此它可用 作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存 储器时,将跳过一个 ALE 脉冲。如想禁止 ALE 的输出可在 SFR8EH 地址上置 0。 此时, ALE 只有在执行 MOVX,MOVC 指令是 ALE 才起作用。另外,该引脚被略 微拉高。如果微处理器在外部执行状态 ALE 禁止,置位无效。 /PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个 机器周期两次/PSEN 有效。但在访问外部数据存储器时,这两次有效的/PSEN 信 号将不出现。 /EA/VPP:当/EA 保持低电平时,则在此期间外部程序存储器(0000H- FFFFH) ,不管是否有内部程序存储器。注意加密方式 1 时,/EA 将内部锁定为 RESET;当/EA 端保持高电平时,此间内部程序存储器。在 FLASH 编程期间,此 引脚也用于施加 12V 编程电源(VPP) 。 XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。 XTAL2:来自反向振荡器的输出。 2、振荡器特性: XTAL1 和 XTAL2 分别为反向放大器的输入和输出。该反向放大器可以配置 为片内振荡器。石晶振荡和陶瓷振荡均可采用。如采用外部时钟源驱动器件, XTAL2 应不接。有余输入至内部时钟信号要通过一个二分频触发器,因此对外 部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度。 3、芯片擦除: 整个 PEROM 阵列和三个锁定位的电擦除可通过正确的控制信号组合,并保 持 ALE 管脚处于低电平 10ms 来完成。在芯片擦操作中,代码阵列全被写“1” 且在任何非空存储字节被重复编程以前,该操作必须被执行。 4、串口通讯 串口通信需要用到那些特殊功能寄存器是 SCON,TCON,TMOD,SCON 等。 SBUF 数据缓冲寄存器这是一个可以直接寻址的串行口专用寄存器。实际上 SBUF 包含了两个独立的寄存器,一个是发送寄存,另一个是接收寄存器,但它 们都共同使用同一个寻址地址99H。CPU 在读 SBUF 时会指到接收寄存器,在 写时会指到发送寄存器,而且接收寄存器是双缓冲寄存器,这样可以避免接收 中断没有及时的被响应,数据没有被取走,下一帧数据已到来,而造成的数据 重叠问题。发送器则不需要用到双缓冲,一般情况下我们在写发送程序时也不 必用到发送中断去外理发送数据。 7 SCON 串行口控制寄存器通常在芯片或设备中为了监视或控制接口状态,都 会引用到接口控制寄存器。SCON 就是 51 芯片的串行口控制寄存器。它的寻址 地址是 98H,是一个可以位寻址的寄存器,作用就是监视和控制 51 芯片串行口 的工作状态。51 芯片的串口可以工作在几个不同的工作模式下,其工作模式的 设置就是使用 SCON 寄存器。它的各个位的具体定义如下: SM0 SM1 SM2 REN TB8 RB8 TI RI SM0、SM1 为串行口工作模式设置位,这样两位可以对应进行四种模式的设 置。串行口工作模式设置如表 1-1 所示 : 表 1-1 串行口工作模式设置 SM0SM1 模式功能波特率 000 同步移位寄存器 fosc/12 011 8 位 UART可变 102 9 位 UARTfosc/32 或 fosc/64 113 9 位 UART可变 在这里只说明最常用的模式 1,其它的模式也就一一略过。表中的 fosc 代 表振荡器的频率,也就是晶振的频率。UAR 为(Universal Asynchronous Receiver)的英文缩写。 RE 为允许接收位,REM 置 1 时串口允许接收,置 0 时禁止接收。REM 是由 软件置位或清零。如果在一个电路中接收和发送引脚 P3.0,P3.1 都和上位机相 连,在软件上有串口中断处理程序,当要求在处理某个子程序时不允许串口被 上位机来的控制字符产生中断,那么可以在这个子程序的开始处加入 REM=0 来 禁止接收,在子程序结束处加入 REM=1 再次打开串口接收。 TB8 发送数据位 8,在模式 2 和 3 是要发送的第 9 位。该位可以用软件根 据需要置位或清除,通常这位在通信协议中做奇偶位,在多处理机通信中这一 位则用于表示是地址帧还是数据帧。 RB8 接收数据位 8,在模式 2 和 3 是已接收数据的第 9 位。该位可能是奇 偶位,地址/数据标识位。在模式 0 中,RB8 为保留位没有被使用。在模式 1 中,当 SM2=0,RB8 是已接收数据的停止位。 TI 发送中断标识位。在模式 0,发送完第 8 位数据时,由硬件置位。其它 模式中则是在发送停止位之初,由硬件置位。TI 置位后,申请中断,CPU 响应 中断后,发送下一帧数据。在任何模式下,TI 都必须由软件来清除,也就是说 在数据写入到 SBUF 后,硬件发送数据,中断响应(如中断打开) ,这时 TI=1, 表明发送已完成,TI 不会由硬件清除,所以这时必须用软件对其清零。 8 RI 接收中断标识位。在模式 0,接收第 8 位结束时,由硬件置位。其它模 式中则是在接收停止位的半中间,由硬件置位。RI=1,申请中断,要求 CPU 取 走数据。但在模式 1 中,SM2=1 时,当未收到有效的停止位,则不会对 RI 置 位。同样 RI 也必须要靠软件清除。常用的串口模式 1 是传输 10 个位的,1 位起始位为 0,8 位数据位,低位在先,1 位停止位为 1。它的波特率是可变的, 其速率是取决于定时器 1 或定时器 2 的定时值(溢出速率) 。 1.51.5 两位七段式数码管两位七段式数码管 1.5.11.5.1 两位七段式数码管介绍两位七段式数码管介绍: 两位七段式数码管其实就是将两个一位八段式数码接相应的电路组合在一起 。并引出两控制端 1 和 2,同过其电平的高低来控制两个数码管的高低位工作 。其中两个数码管的八个端子 A,B,C,D,E,F,G,DP 为公共所用。(其图 形如图 1-6 所示) 图 1-4:共阴极二极管 图 1-5:共阳极二极管 图 1-6 两位七段式数码管 9 2 2 系统硬件设计与实现系统硬件设计与实现 2.12.1 简易交通灯基本组成部分简易交通灯基本组成部分 简易交通灯主要是由复位电路 、时钟电路 、键盘电路、显示电路、LED 指示电路这几部分组成。 此系统核心元件为单片机 AT89C51,对其编写相关程序来控制交通信号灯 和数码管的时间显示。系统共采用 12 个发光二极管来模拟各路交通信号灯, 2 个 LED 七段数码管以倒计时的方式显示各个方向上允许通行或禁止通行的信 号灯剩余的时间。停 25S,准备 5S,之后通行 20S,在东西和南北两个方向上 这两种状态不断循环。源程序采用 C 语言编写,并通过 keil 软件进行编译, 最后倒入 AT89C51 单片机中,运行系统。设计好后通过 PROTUES 软件仿真,并 调试。 2.22.2 时钟电路设计时钟电路设计 AT89C51 内置最高频率达 12MHz 的时钟电路,用于产生整个单片机运行的 脉冲时序但 AT89C51 单片机需外置振荡电容。 由上可见,AT89C51 单片机的硬件结构具有功能部件种类全,功能强等特 点。特别值得一提的是该单片机 CPU 中的位处理器,它实际上是一个完整的 1 位微计算机,这个一位微计算机有自己的 CPU、位寄存器、I/O 口和指令集。1 位机在开关决策、逻辑电路仿真、过程控制方面非常有效;而 8 位机在数据采 集,运算处理方面有明显的长处。MCS-51 单片机中 8 位机和 1 位机的硬件资源 复合在一起,二者相辅相承,它是单片机技术上的一个突破,这也是 MCS-51 单 片机在设计的精美之处。 单片机的时钟信号用来提供单片机片内各种微操作的时间基准,时钟信号 通常用两种电路形式得到:内部振荡和外部振荡。MCS-51 单片机内部有一个用 于构成振荡器的高增益反向放大器,引脚 XTALl 和 XTAL2 分别是此放大电器的 输入端和输出端,由于采用内部方式时,电路简单,所得的时钟信号比较稳定, 实际使用中常采用这种方式,如图 2-1 所示在其外接晶体振荡器(简称晶振)或 陶瓷谐振器就构成了内部振荡方式,片内高增益反 向放大器与作为反馈元件的片外石英晶体或陶瓷谐 振器一起可构成一个自激振荡器并产生振荡时钟脉 冲。图 2-1 中外接晶体以及电容 C2 和 C1 构成并联 谐振电路,它们起稳定振荡频率、快速起振的作用, 其值为 30P 左右,晶振频率选 12MHz。 图 2-1 时钟 电路 10 2.32.3 复位电路设计复位电路设计 AT89C51 的上电复位电路如 下图 2-2 所示,只要在 RST 复位输入引脚上 接一电容至 Vcc 端,下接一个 电阻到地即可。对于 CMOS 型单片机,由于在 RST 端内部有一个下拉电阻,故可将外部电阻去掉,而将外接电容减至 1uF。上电复位的工作过程是在加电时,复位电路通过电 容加给 RST 端一 个短暂的高电平信号,此高电平信号随着Vcc 对电容的充电过程而逐渐回 落,即 RST 端的高电平持续时间取决于电容的充电时间。为了保证系统能够 可靠地复位, RST 端的高电平信号必须维持足够长的时间。上电时, Vcc 的 上升时间约为 10ms,而振荡器的起振时间取决于振荡频率,如 晶振频率为 10MHz,起振时间为 1ms;晶振频率为 1MHz,起振时间则为 10ms。在图 2 的复位电路中,当 Vcc 掉电时,必然会使 RST 端电压迅速下降到 0V 以下, 但是,由于内部电路的限制作用,这个负电 压将不会对器件产生损害。 在复位期间,端口引脚处于随机状态, 复位后,系统将端口置为全 “l”态。如果 系统在上电时得不到有效的复位, 则程序计 数器 PC 将得不到一个合适的初 值,因此, CPU 可能会从一个未被定义的位 置开始执行 图 2-2 AT89C51 复位电路 程序。 2.42.4 按键接口电路设计按键接口电路设计 单片机使用的键盘分为独立式和矩阵式两种。 方案一:矩阵式键盘适用于按键数量较多的场合,它有行线和列线组成, 按键位于行、列的交叉点上。行、列线分别连接到按键开关的两端,而有键按 下时,行线电平状态将由与此行线相连的列线电平决定,列线电平如果为低, 则行线电平为低;反之,则为高。这一点是识别矩阵键盘按键是否被按下的关 键。矩阵式键盘各按键彼此将相互发生影响,所以必须将行、列线信号配合起 来并作适当的处理,才能确定闭合键的位置。 方案二:矩阵式键盘也称行列式键盘,因为键的数目较多,所以键按行列 组成矩阵。独立式键盘就是各按键相互独立,每个按键各接一根输入线,一根 输入线上的按键工作状态不会影响其他输入线上的工作状态。因次,通过检测 输入线的电平状态可以很容易的判断哪个按键被按下了独立式按键电路配置灵 活,软件结构简单。 但每个按键需占用一根输入口线,此种按键电路适用于按键较少或操作速度教 11 高的场合独立式实际上就是一组相互独 立的按键,这些按键可直接与单片机的 I/O 口连接,连接方法就是每个按键独 立一条口线,各按键之间状态不会影响 且接口简单。 考虑到这个控制器中,设定的按键 不多,为了使系统简单明了,在这里选 择独立式按键。如图 2-3 所示, 图 2-3 独立的按键电路连接图 2.5 交通灯状态显示电路的设计交通灯状态显示电路的设计 十字路口的交通灯分布示意图如图 2-4 所示,将这 12 个交通灯进行编号。 图 2-4 十字路口交通灯分布示意图 这 12 个交通灯共有四个状态: 状态 1(S1):东西红灯(4、10)亮,南北绿灯(3、9)亮 状态 2(S2):南北黄灯(2、8)亮,东西仍为红灯(4、10)亮 状态 3(S3):南北红灯(1、7)亮,东西绿灯(6、12)亮 状态 4(S4):东西黄灯(5、11)亮,南北仍为红灯(1、7)亮 对应的硬件原理设计图如图 2-5 所示: 12 D1 LED-RED D2 LED-YELLOW D3 LED-GREEN D4 LED-RED D5 LED-YELLOW D6 LED-GREEN D7 LED-RED D8 LED-YELLOW D9 LED-GREEN D10 LED-RED D11 LED-YELLOW D12 LED-GREEN P22 P23 P24 P25 P26 P27 P13 p12 P15 P16 P17 p17 P16 p15 P12 P13 P14 p14 图 2-5 交通灯状态显示电路 2.5.12.5.1 LEDLED 基本结构基本结构 LED 是发光二极管显示器的缩写。LED 由于结构简单、价格便宜、与单片机 接口方便等优点而得到广泛应用。LED 显示器是由若干个发光二极管组成显示 字段的显示器件。在单片机中使用最多的是七段数码显示器。LED 七段数码显 示器由 8 个发光二极管组成显示字段,其中 7 个长条形的发光二极管排列成 “日”字形,另一个圆点形的发光二极管在显示器的右下角作为显示小数点用, 其通过不同的组合可用来显示各种数字。LED 引脚排列如上图 2-5 所示。 图 2-5 LED 管脚排列 13 2.5.22.5.2 LEDLED 译码方式译码方式 译码方式是指由显示字符转换得到对应的字段 表 2-1 共阴极字段码表 码的方式,对于 LED 数码管显示器,通常的译码 方式有硬件译码和软件译码方式两种。 硬件译码是指利用专门的硬件电路来实现显 示字符码的转换。 软件译 码就是编写软件译码程序,通过译 码程序来得到要显示的字符的字段码,译码程序 通常为查表程序。 本设计系统中为了简化硬件线路设计,LED 译码采用软件编程来实现。由于本设计采用的是 共阴极 LED,其对应的字符和字段码如表 2-1 所 示。 2.5.32.5.3 LEDLED 显示器与单片机接口设计显示器与单片机接口设计 由于单片机的并行口不能直接驱动 LED 显示器,所以,在一般情况下,必 须采用专用的驱动电路芯片,使之产生足够大的电流,显示器才能正常工作7。 如果驱动电路能力差,即负载能力不够时,显示器亮度就低,而且驱动电路长 期在超负荷下运行容易损坏,因此,LED 显示器的驱动电路设计是一个非常重 要的问题。 为了简化数字式直流电压表的电路设计,在 LED 驱动电路的设计上,可以 利用单片机 P0 口上外接的上拉电阻来实现,即将 LED 的 A-G 段显示引脚和 DP 小数点显示引脚并联到 P0 口与上拉电阻之间,这样,就可以加大 P0 口作为输 出口德驱动能力,使得 LED 能按照正常的亮度显示出数字,如图 2-7 所示。 图 2-7 LED 数码管与单片机接口电路 显示字符共阴极字段码 03FH 106H 25BH 34FH 466H 56DH 67DH 707H 87FH 96FH XTAL2 18 XTAL1 19 ALE 30 EA 31 PSEN 29 RST 9 P0.0/AD0 39 P0.1/AD1 38 P0.2/AD2 37 P0.3/AD3 36 P0.4/AD4 35 P0.5/AD5 34 P0.6/AD6 33 P0.7/AD7 32 P1.0 1 P1.1 2 P1.2 3 P1.3 4 P1.4 5 P1.5 6 P1.6 7 P1.7 8 P3.0/RXD 10 P3.1/TXD 11 P3.2/INT0 12 P3.3/INT1 13 P3.4/T0 14 P3.7/RD 17 P3.6/WR 16 P3.5/T1 15 P2.7/A15 28 P2.0/A8 21 P2.1/A9 22 P2.2/A10 23 P2.3/A11 24 P2.4/A12 25 P2.5/A13 26 P2.6/A14 27 U1 AT89C51 CRYSTAL P00P20 P21 P22 P23 P24 P25 P26 P27 P31 P30 P00 P05 P01 P04 P03 P02 P06 P07 P30 P31 P01 P02 P04 P03 P05 P06 P07 P11 P10 2 3 4 5 6 7 8 9 1 RP1 RESPACK-8 P00 P01 P02 P03 P04 P05 P06 P07 P20 P21 P22 P23 P24 P25 P26 P27 东东西西方方向向 南南北北方方向向 14 3 3 系统软件设计系统软件设计 3.13.1 程序流图程序流图 软件部分采用模块化程序设计的方法,由单片机控制主程序、数码管显示 组成。系统软件设计是在 KeilC 编译环境下进行的,由于 C 语言程序可移植性 好,所以提高了编程的效率。软件程序流程图如图 3-1、3-2 所示。 图 3-1 主程序流程 15 开开 始始 初始化时钟程序初始化时钟程序 东西绿南北红东西绿南北红 东西方向东西方向 剩余时间剩余时间 5S5S? 东西黄南北红东西黄南北红 东西方向东西方向 剩余时间剩余时间 0 0? 南北绿东西红南北绿东西红 南北方向南北方向 剩余间剩余间 5S5S? 南北黄东西红南北黄东西红 南北方向南北方向 剩余时间剩余时间 0S0S? 开开 始始 否否 否否 否 否否 否否 图 3-2 主程序流程图 16 4 4 系统调试系统调试 4.14.1 硬件调试硬件调试 模拟程序调试 先编写一个简单无误的程序,写入 AT89C51 芯片,检查数码管是否可以正 常显示,如果不能正常显示,则一一进行排查。如果能正常显示,则说明整体 电路没有问题,可以进行软件调试。 4.24.2 软件调试软件调试 当硬件调试完毕后,可进行软件调试。首先编写程序,检查程序编写是否 正确,当程序编写无误后再将程序写入 AT89C51 芯片,观察电路有效果出来。 如无法正常显示,可能是程序编写错误,继续改正。如果检查程序无误,但是 结果显示还是不正确,则有可能是原件损坏。将程序进行编译后,打开 AT89C51 单片机的元件属性编辑对话框,如图 4-1 所示。在 PROGRAM FILE 中, 单击文件夹图标,选择“程序 RB.hex”文件后,即可对系统进行仿真。 图 4-1 AT89C51 属性对话框 4.34.3 ProteusProteus 软件仿真软件仿真 Proteus7.2是目前最好的模拟单片机外围器件的工具,可以仿真51 系列、 AVR,PIC 等常用的MCU 及其外围电路。因此在仿真和程序调试时,关心的不再 是某些语句执行时单片机寄存器和存储器内容的改变,而是从工程的角度直接 看程序运行和电路工作的过程和结果。对于这样的仿真实验,从某种意义上讲, 是弥补了实验和工程应用间脱节的矛盾和现象。 17 4.3.14.3.1 仿真过程仿真过程 (1)南北红,东西绿.如图 4-2 所示 图 4-2 (2)南北红,东西黄。如图 4-3 所示 图 4-3 XTAL2 18 XTAL1 19 ALE 30 EA 31 PSEN 29 RST 9 P0.0/AD0 39 P0.1/AD1 38 P0.2/AD2 37 P0.3/AD3 36 P0.4/AD4 35 P0.5/AD5 34 P0.6/AD6 33 P0.7/AD7 32 P1.0 1 P1.1 2 P1.2 3 P1.3 4 P1.4 5 P1.5 6 P1.6 7 P1.7 8 P3.0/RXD 10 P3.1/TXD 11 P3.2/INT0
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 幼儿剪纸大班课件
- 大班星空夜探索之旅
- 课件模板主题
- 图形排列大班课件
- 春节前安全培训
- 废气处理培训课件
- 课件未能转换的原因
- 课件有趣的自我介绍
- 理论时政考试题及答案
- 篮球谈判考试题及答案
- GB/T 40665.1-2021中医四诊操作规范第1部分:望诊
- 植物检疫法规课件
- 沪教牛津版小学英语五年级上册全册集体备课含教学计划及进度表
- 医院医生医师处方签字签名留样表
- 苏科版劳动与技术一年级上册《03家务劳动计划》课件
- 初中音乐 西南师大课标版 七年级上册 走进歌乐山 《走进歌乐山》 课件
- 装饰工程施工技术ppt课件(完整版)
- 经营者身份证明书
- 六年级上册美术课件-第1课 寄情山水-山石的画法 |辽海版 (20张PPT)
- 上海破产管理人扩容考试参考题库(含答案)
- 综合英语教程第二册课件
评论
0/150
提交评论