ImageVerifierCode 换一换
格式:DOCX , 页数:29 ,大小:223.48KB ,
资源ID:6995383      下载积分:1 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-6995383.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于单片机的可程控顺序系统论文正文.docx)为本站会员(b****3)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

基于单片机的可程控顺序系统论文正文.docx

1、基于单片机的可程控顺序系统论文正文1 引言1.1 程序控制顺序系统意义 单片机控制技术应用十分广泛,其核心技术是单片机控制系统的设计。其中单片机在控制系统中的应用是越来越普遍了。单片机控制系统是以单片机(CPU)为核心部件,扩展一些外部接口和设备,组成单片机工业控制机,主要用于工业过程控制。要进行单片机系统设计首先必须具有一定的硬件基础知识;其次,需要具有一定的软件设计能力,能够根据系统的要求,灵活地设计出所需要的程序;第三,具有综合运用知识的能力。最后,还必须掌握生产过程的工艺性能及被测参数的测量方法,以及被控对象的动、静态特性,有时甚至要求给出被控对象的数学模型。 顺序控制是工业生产中一个

2、比较典型的控制方式。因为一个产品的生产过程,实际就是按照一定的顺序和一定工艺要求进行的加工过程,不论其生产流程多么复杂,总可以把流程分成若干个工作步骤,每个工作步骤又可以分为几个加工的顺序段,并使每一个顺序执行一个特定的操作。这样经过若干个加工顺序段之后就可以得到最后的产品。采用顺序控制系统的意义,就是根据生产工艺的要求,按照预先规定的顺序,在各个输入信号的作用下,使生产过程的各个执行机构自动的按照顺序动作,顺序控制已被广泛的应用在加工,装配,包装等自动化生产设备中,是工业自动化的分支。顺序控制的设计,一般采用PLC,工控机和单片机来实现,而单片机作为一种低成本实现方式,在小型控制装置中得到了

3、广泛的应用。目前单片机顺序控制软件的设计,一般针对具体工业过程进行的,生产工艺改变则控制软件必须重新设计。如果控制软件设计成通用化的形式,则将可以接节省设计人员的大大量重复劳动,缩短顺序控制系统的开发周期。1.2 顺序控制的历史以及发展状况20世纪50年代大多采用继电器的固定式顺序控制系统,50年代后期采用二极管的矩阵式顺序控制系统,到60年代末出现了可编程顺序控制系统。70年代以来,顺序控制技术迅速发展,并逐步采用微型计算机,向小型化和大型多功能方向发展。图1-1示出了顺序系统控制结构。检测元件测出被控对象(如加热反应炉)的状态(如加料完毕),测量信号送到顺序控制器处理并发出控制信号,通过执

4、行器使被控对象改变到一个新的状态(如接通加热器)。顺序控制器常采用各种开关(如限位开关、接近开关)、光电转换元件、穿孔纸带等来设定工作条件;常用的执行器有电磁阀、电机、电磁铁、电热器等(图1-2)。它们接通或断开时便改变被控对象原来的状态。顺序控制器分为固定式顺序控制器、矩阵式顺序控制器和可编程图1-1 顺序系统控制结构图1-2 顺序控制器常用的控制元件和执行器序控制器三类。由于微型机和配套芯片的发展,可编程顺序控制器应用日益广泛。顺序控制器一般用于生产过程的开关量控制。动力设备的起动和停止、加热或冷冻设备的接通和断开、信号灯的亮与灭等都是开关量信号。生产线、自动机床和各种设备都有许多开关量信

5、号需要顺序控制。因此,顺序控制器广泛应用于机械、冶金、电力、石油、化工、煤炭、建材、纺织、。随着电子信息产业的高速发展,应用微处理器的顺序控制系统将会得到更大的发展。2 顺序控制的设计任务及方案论证2.1 可程控的顺序系统系统可以程序控制;第一步至第二步各为XXX秒;第三步至第四步各为XXXX秒;显示顺序过程XXX步XXX秒X循环;设计过程显示电路;设计中断扫描方式的键盘输入;设计直流电源。2.2 方案论证方案1:采用PLC作为核心控制部件。使用PLC步进控制,结构如图2-1所示,步1的M1得电条件是受控机械原位开关X1处于压合状态(若受控机械有多个执行机构,则要求每个执行机构的原位开关均处于

6、压合状态),满足原位条件后按起动按钮X0才能得电。M1得电后自锁,并为步2提供步进条件信号(M1的常开触点)。步1的执行动作完成时触发的行程开关信号X2作为步2的转步条件信号。步2的M2的输入满足其步进条件和转步条件后得电自锁,并为步3提供步进条件信号。按此规律即可实现后续每一工作步辅助继电器的得电和自锁。停止步M5的步进条件信号和转步条件信号分别为:最后一个工作步M4发出的步进条件信号(M4的常开触点)和该步动作完成时所触发的转步信号X1。由于M5的得电信号令控制系统失电,所以M5的回路不自锁,而且要将其常闭触点串联在步1回路的最左端。从步2起后续各个步的回路构成分支回路。一旦M5得电便使整

7、个系统失电。如不用分支回路的结构,可以把M5常闭触点分别串联在每步辅助继电器的回路上。应该注意的是:无论工作步还是停止步,如果某步的转步指令信号有多个,则应将多个转步指令信号互相串联。显示部分采用LED显示管。图2-1 plc步进控制梯形图方案2:采用AT89C51单片机,P0口接74LS373地址锁存器,由地址锁存器接8255I/O口扩展芯片,P2.4,P2.5,P2.6接一个3-8译码,输出端YO接8255的片选信号端,8255的PB口做矩阵式键盘接口,PA口接发光二极管,采用共阳级的方式,运用中断方式查询是否有按健按下。秒信号的产生是利用对单片机内部定时器T1产生的中断信号进行多次累加后

8、形成的。该信号还经过60次计数后产生分频信号,最后,再以分钟为时间间隔从设置好的定时时间数据内逐一递减并随时显示剩余的定时时间参数,形成倒计数的显示方式,共99S。显示采用动态扫描电路,共阳级方式接入。由P1.0P1.3提供LED显示信息。P1.4P1.5LED显示的片选口,按键设置分为16个,09号键为数字键,设定时间和步数。10号键为工作步骤顺序设定键,设置0-9步的工作步骤顺序,11号键时间设定键,用来设置时间,12号键为循环次数键用来设置循环次数,13号键为确认键,用来确定具体设置完成,14号键为开始键,决定程序的开始运行,15号键为停止键。所有时间都可程控。方案比较:方案1,控制系统

9、比较复杂,且没有达到最精确的时间。硬件过于复杂。方案2,按键简单,采用矩阵的键盘接口,按键控制简单。按键数目和方案相似,但按键的功能明确,时间、循环次数设定简单,LED显示采用动态扫描方式。且所有时间,循环次数都可程控,综上所述,我们可以完全有理由的选择方案2。3 硬件电路的设计尽管单片机集成度高,内部含有I/O控制线,ROM,RAM和定时/计数器。但在组成单片机系统时,扩展若干接口仍是设计者必不可少的任务。扩展接口有2种方案,一种是购置现成的接口板,另一种是根据系统实际需要,选用适合的芯片进行设计控制系统。就后一种而言,主要包括以下几个方面的内容。 基本系统的构成:一个独立的单片机核心系统,

10、一般由时钟电路、地址锁存器电路、地址译码器、存储器扩展、模拟量输入通道的扩展、模拟量输出通道的扩展、开关量的I/O接口设计、键盘输入和显示电路等组成。 (1)存储器扩展 由于单片机有4种不同的存储器,且程序存储器和数据存储器是分别编址的,所以单片机的存储器容量与同样位数的微型机相比扩大了一倍多。扩展时,首先要注意单片机的种类;另一方面要把程序存储器和数据存储器分开。 (2)模拟量输入通道的扩展 主要有以下2个问题:一个是数据采集通道的结构形式,一般单片机控制系统都是多通道系统。因此选用何种结构形式采集数据,是进行模拟量输入通道设计首先要考虑的问题。多数系统都采用共享A/D和S/H形式。但是当被

11、测参数为几个相关量时,则需选用多路S/H,共享A/D形式。对于那些参数比较多的分布式控制系统,可把模拟量先就地进行A/D转换,然后再送到主机中处理。对于那些被测参数相同(或相似)的多路数据采集系统,为减少投资,可采用模拟量多路转换,共享仪用放大器、S/H和A/D的所谓地电平多路切换形式。另外一个问题是A/D转发器的选择,设计时一定要根据被控对象的实际要求选择 A/D 转换器,在满足系统要求的前提下,尽量选用位数比较低的A/D转换器。 (3)模拟量输出通道的扩展 模拟量输出通道是单片机控制系统与执行机构(或控制设备)连接的纽带和桥梁。设计时要根据被控对象的通道数及执行机构的类型进行选择。对于那些

12、可直接接受数字量的执行机构,可由单片机直接输出数字量,如步进电机或开关、继电器系统等。对于那些需要接收模拟量的执行机构,则需要用D/A转化,即把数字量变成模拟量后,再带动执行机构。 (4)开关量的I/O接口设计 由于开关量只有2种状态“1”或“0”,所以,每个开关量只需一位二进制数表示即可。因为MCS51系列单片机设有一个专用的布尔处理机,因而对于开关量的处理尤为方便。为了提高系统的抗干扰能力,通常采用光电隔离器把单片机与外部设备隔开。 (5)操作面板 操作面板是人机对话的纽带,它根据具体情况,可大可小。为了便于现场操作人员操作,单片机控制系统设计一个操作面板的要求:操作方便、安全可靠、并具有

13、自保功能,即使是误操作也不会给生产带来恶果。 (6)系统速度匹配 在不影响系统总功率的前提下,时钟频率选得低一些较好,这样可降低系统对其他元器件工作速度的要求,从而降低成本和提高系统的可靠性。但系统频率选的比较高时,要设法使其他元器件与主机匹配。总体结构框图如下图3-1所示图3-1 总体结构框图利用键盘扫描电路来完成按键设置时间,发光二极管点亮次序,利用LED接口显示电路来显示当前的工作步骤时间,发光二极管依次点亮作输为出部分。3.1 主控部件设计此次设计我们采用AT89C51单片机,提供以下标准功能:8k字节Flash闪烁存储器,256字节内部RAM,32个I/O口线,3个16位定时/计数器

14、,一个6向量两级中断结构,一个全双工串行通信口,片内振荡器和时钟电路。同时,AT89C51可降至0HZ的静态逻辑操作,并支持两种软件可选的节电工作模式。空闲方式停止CPU工作,但允许RAM,定时/计数器,串行通信口及中断系统继续工作,掉电方式保存RAM中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位。引脚图如图3-2所示: 图3-2 AT89C51引脚图3.1.1 89C51单片机的特点 与MCS-51产品指令和引脚完全兼容; 8K字节可重擦写FLASH闪存;1000次擦写周期; 全静态操作:0Hz-24MHz; 三级加密程序存储器; 256X8字节内部RAM;32个可编程I

15、/O口线; 3个16位定时/计数器; 8个中断源; 可编程串行UART通道; 低功耗空闲和掉电模式。3.1.2 89C51单片机引脚说明P0口P0口是一组8位漏极开路型双向I/O口,也即地址/数据总线复用口。作为输出口用时,每位能吸收电流的方式驱动8个TTL逻辑门电路,对端口P0写“1”时,可作为高阻抗输入端用。在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低8位)和数据总线复用,在访问期间激活内部上拉电阻。在FLASH编程时,P0口接收指令字节,而在程序校验时,输出指令字节,校验时,要求外接上拉电阻。P1口P1口是一个带内部上拉电阻的8位双向I/O口,P1的输出缓冲级可驱动(吸收

16、或输出电流)4个TTL逻辑门电路。对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输出口。作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流。与AT89C51不同之处是,P1.0和P1.1还可分别作为定时/计数器2的外部计数输入(P1.0/T2)和输入(P1.1/T2EX),FLASH编程和程序校验期间,P1接收低8位地址。 P2口P2是一个带内部上拉电阻的8位双向I/O口,P2的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。对端口P2写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口,作输入口使用时,因为内部存在上拉电阻,某个引脚被外

17、部信号拉低时会输出一个电流。 在访问外部程序存储器或16位地址的外部数据存储器(例如执行MOVXDPTR指令)时,P2口送出高8位地址数据。在访问8位地址的外部数据存储器(如执行MOVXRI指令)时,P2口输出P2锁存器的内容。FLASH编程或校验时,P2亦接收高位地址和一些控制信号。 P3口P3口是一组带有内部上拉电阻的8位双向I/O口。P3口输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。对P3口写入“1”时,它们被内部上拉电阻拉高并可作为输入端口。此时,被外部拉低的P3口将用上拉电阻输出电流。P3口除了作为一般的I/O口线外,更重要的用途是它的第二功能,如下表所示:P3.0 RX

18、D(串行输入口);P3.1 TXD(串行输出口);P3.2 INT0(外部中断0);P3.3 INT1(外部中断1);P3.4 T0 (定时/计数器0);P3.5 T1 (定时/计数器1);P3.6 WR (外部数据存储器写选通);P3.7 RD (外部数据存储器读选通)。此外,P3口还接收一些用于FLASH闪存编程和程序校验的控制信号。 RST复位输入。当振荡器工作时,RST引脚出现两个机器周期以上高电平将是单片机复位。ALE/PROG当访问外部程存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8位字节。一般情况下,ALE仍以时钟振荡频率的1/6输出固定的脉冲信号,因此它

19、可对外输出时钟或用于定时目的。要注意的是:每当访问外部数据存储器时将跳过一个ALE脉冲。 FLASH存储器编程期间,该引脚还用于输入编程脉冲(PROG)。 如有必要,可通过对特殊功能寄存器(SFR)区中的8EH单元的D0位置位,可禁止ALE操作。该位置位后,只有一条MOVX和MOVC指令才能将ALE激活。此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置ALE禁止位无效。 PSEN程序储存允许(PSEN)输出是外部程序存储器的读选通信号,当AT89C51由外部程序存储器取指令(或数据)时,每个机器周期两次PSEN有效,即输出两个脉冲,在此期间,当访问外部数据存储器,将跳过两次PSEN信号。

20、 EA/VPP外部访问允许,欲使CPU仅访问外部程序存储器(地址为0000H-FFFFH),EA端必须保持低电平(接地)。需注意的是:如果加密位LB1被编程,复位时内部会锁存EA端状态。 如EA端为高电平(接Vcc端),CPU则执行内部程序存储器的指令。FLASH存储器编程时,该引脚加上+12V的编程允许电源Vpp,当然这必须是该器件是使用12V编程电压Vpp。3.1.3 8255引脚功能 图3-3 8255A引脚图RESET:复位输入线,当该输入端外于高电平时,所有内部寄存器(包括控制寄存器)均被清除,所有I/O口均被置成输入方式。 CS:片选信号线,当这个输入引脚为低电平时,表示芯片被选中

21、,允许8255与CPU进行通讯。 RD:读信号线,当这个输入引脚为低电平时,允许8255通过数据总线向CPU发送数据或状态信息,即CPU从8255读取信息或数据。 WR:写入信号,当这个输入引脚为低电平时,允许CPU将数据或控制字写8255。 D0D7:三态双向数据总线,8255与CPU数据传送的通道,当CPU 执行输入输出指令时,通过它实现8位数据的读/写操作,控制字和状态信息也通过数据总线传送。 PA0PA7:端口A输入输出线,一个8位的数据输出锁存器/缓冲器, 一个8位的数据输入锁存器。 PB0PB7:端口B输入输出线,一个8位的I/O锁存器, 一个8位的输入输出缓冲器。 PC0PC7:

22、端口C输入输出线,一个8位的数据输出锁存器/缓冲器, 一个8位的数据输入缓冲器。端口C可以通过工作方式设定而分成2个4位的端口, 每个4位的端口包含一个4位的锁存器,分别与端口A和端口B配合使用,可作为控制信号输出或状态信号输入端口3.1.4 时钟电路的设计单片机的时钟信号用来提供单片机片内各种微操作的时间基准,复位操作则使单片机的片内电路初始化,使单片机从一种确定的初态开始运行。89C51单片机的时钟信号通常用两种电路形式得到:内部振荡方式和外部振荡方式。在引脚XTAL1和XTAL2外接晶体振荡器(简称晶振)或陶瓷谐振器,就构成了内部振荡方式。由于单片机内部有一个高增益反相放大器,当外接晶振

23、后,就构成了自激振荡器并产生振荡时钟脉冲。内部振荡方式的外部电路如下图所示。图中,电容器Cl,C2起稳定振荡频率、快速起振的作用,其电容值一般在5-33pF。晶振频率的典型值为12MHz,采用6MHz的情况也比较多。内部振荡方式所得的时钟信号比较稳定,实用电路中使用较好。如图3-3,:图3-4 振荡电路图3.1.5 复位电路的设计单片机复位是使CPU和系统中的其他功能部件都处立个确定的初始状态,并从这个状态开始工作,例如复位后PC0000H,使单片机从第个单元取指令。大论是在单片机刚开的接广电源时,还是断电后或者发生故障后都要复位,所以我们必须弄清楚89C51单片机复位的条件、复体电路和复位后

24、状态。单片机复位的条件是:必须使RSW阳或RST引脚(9)加上持续两个机器周期(即24个振荡周期)的高电平。例如,若时钟频率为12MHz,每机器周期为1s,则只需2s以上时间的高点平,在RST引脚出现高电平后的第二个机器周期执行复位。具体电路设计的分析和比较:1、方案一:此方案中采用上电复位电路。电路如图3-5所示。图3-5 上电复位电路图上电式复位电路的特点是很方便,当有电源接通给单片机时,此电路就可以自动产生复位信号。它是利用电容充电来实现的。在接电瞬间,RESET端的电位与VCC相同,随着充电电流的减少,RESET的电位逐渐下降。只要保证RESET为高电平的时间大于两个机器周期,才能正常

25、复位。2、方案二:此方案中采用了按键式的复位电路,如下图3-6所示:这种复位电路的特点就是上电以后,可以随时通过按键来发出复位信号。若要复位,只需按图中的RESET键,此时电源VCC经电阻R1、R2分压,在RESET端产生一个复位高电平。这对系统的可控性是很有帮助的。3.2 方案比较前面已经介绍了复位电路的两种形式,其实对系统而言并没有什么大的区别,但考虑到系统调试时的方便,本系统采用了按键复位方式。当调试不成功时,经过调整后,只需单片机复位即可进行下一次的调试。这也降低了其他硬件由于电源供电问题,而导致的调试不成功。所以,最终选定按键复位电路为单片机部分的复位电路。图3-6 按键复位电路图3

26、.2.1 外围芯片的选用硬件锁存接口采用8位锁存器。373为三态输出的八D透明锁存器,共有54/74S373和54/74LS373两种线路结构型式。373为三态输出的8 D透明锁存器, 373的输出端O0-O7可直接与总线相连。当三态允许控制端OE为低电平时,O0-O7为正常逻辑状态,可用来驱动负载或总线。当OE为高电平时,O0-O7呈高阻态,即不驱动总线,也不为总线的负载,但锁存器内部的逻辑操作不受影响。当锁存允许端LE为高电平时,O随数据D而变。当LE为低电平时,O被锁存在已建立的数据电平。当LE端施密特触发器的输入滞后作用,使交流和直流噪图3-7SN74LS373N 8位锁存器声抗扰度被

27、改善400mV。 373引出端符号: D0D7-数据输入端OE-三态允许控制端(低电平有效) LE-锁存允许端O0-O7-输出端 最后我选用SN74LS373N锁存器,引脚如图3-7所示:3.2.2 译码器SN74LS138D译码器SN74LS138D原理图如下图3-8所示:图3-8 译码器SN74LS138D原理图由图可知,该译码器有3个输入端A、B、C,它们共有8种状态的组合,即可译出8个输出信号Y0-Y7,故该译码器称为3线8线译码器。该译码器的主要特点是,EA、EB为低电平有效用。由功能表可知,当EA为低电平,译码器处于工作状态。3.3 矩阵式键盘的结构与工作原理在键盘中按键数量较多时

28、,为了减少I/O口的占用,通常将按键排列成矩阵形式,在矩阵式键盘中,每条水平线和垂直线在交叉处不直接连通,而是通过一个按键加以连接。这样,一个端口(如P1口)就可以构成4*4=16个按键,比之直接将端口线用于键盘多出了一倍,而且线数越多,区别越明显,比如再多加一条线就可以构成20键的键盘,而直接用端口线则只能多出一键(9键)。由此可见,在需要的键数比较多时,采用矩阵法来做键盘是合理的。矩阵式结构的键盘显然比直接法要复杂一些,识别也要复杂一些,上图中,列线通过电阻接正电源,并将行线所接的单片机的I/O口作为输出端,而列线所接的I/O口则作为输入。这样,当按键没有按下时,所有的输出端都是高电平,代

29、表无键按下。行线输出是低电平,一旦有键按下,则输入线就会被拉低,这样,通过读入输入线的状态就可得知是否有键按下了。故此我们使用矩阵式键盘。如图3-9所示: 图3-9 矩阵式键盘矩阵式键盘PCB如图3-10所示。图3-10矩阵式键盘PCB图3.3.1 键盘扫描方式介绍(1)中断方式:在中断模式下,按键的数量受到外部中断源的限制,在有特殊场合的需要下,还可以借用内部的定时中断。所以在这样的模式下,按键的数目小于外部中断源和定时器数量之和。(2)程序查询方式:通过读I/O状态,当有键被按下时相应的I/O口线变为低电平,而未被按下的键对应的I/O口线保持为高电平,这样通过读I/O口状态可判断是否有键按

30、下和哪一个键被按下,在需要键盘输入的时候,调用扫描程序,获得扫描的状态值。由于采用这种结构,在不需要输入的时刻,CPU是不对键盘进行相应的扫描,键盘被旁路。(3)定时查询方式:和程序查询方式一样,也是通过读I/O状态,当有键被按下时相应的I/O口线变为低电平,而未被按下的键对应的I/O口线保持为高电平,这样通过读I/O口状态可判断是否有键按下和哪一个键被按下,不同的是定时查询是利用定时器产生中断,每次中断查询一次I/O端口,实时性较强。本次设计中我们采用中断扫描的方式。3.3.2 键盘抖动消除方法键盘是由若干按键组成的开关矩阵,它是微型计算机最常用的输入设备,用户可以通过键盘向计算机输入指令、

31、地址和数据。一般单片机系统中采用非编码键盘,非编码键盘是由软件来识别键盘上的闭合键,它具有结构简单,使用灵活等特点,因此被广泛应用于单片机系统。如图3-11所示: 图3-11 非编码键盘按键开关的抖动问题 组成键盘的按键有触点式和非触点式两种,单片机中应用的一般是由机械触点构成的。在下图中,当开关S未被按下时,输入端为高电平,S闭合后,输入端为低电平。由于按键是机械触点,当机械触点断开、闭合时,会有抖动动,输入端的波形如图3-10所示。这种抖动对于人来说是感觉不到的,但对计算机来说,则是完全可以感应到的,因为计算机处理的速度是在微秒级,而机械抖动的时间至少是毫秒级,对计算机而言,这已是一个“漫长”的时间了。前面我们讲到中断时曾有个问题,就是说按键有时灵,有时不灵,其实就是这个原因,你只按了一次按键,可是计算机却已执行了多次中断的过程,如果执行的次数正好是奇数次,那么结果正如你所料,如果执行的次数是偶数次,那就不对了。为使CPU能正确地读出输入口的状态,对每一次按键只作一次响应,就必须考虑如何去除抖动,常用的去抖动的方法有两种:硬件方法和软件方法硬件消抖:硬件削抖是采用硬件电路的方法对键盘的按下抖动及释放抖动进行削抖,经过削抖电路后使按键的电平信号只有两种稳定的状态。常用的削抖电路有触发器削抖电路、滤波削抖电路两种。硬件削抖电路如图3-12所示: 图3

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2