测控系统原理与设计3-主机与接口_第1页
测控系统原理与设计3-主机与接口_第2页
测控系统原理与设计3-主机与接口_第3页
测控系统原理与设计3-主机与接口_第4页
测控系统原理与设计3-主机与接口_第5页
已阅读5页,还剩115页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

测控系统原理与设计3_主机与接口第一页,共120页。第三章主机及其接口第二页,共120页。第一节主机电路由PC机组成的测控系统充分利用PC机的显示、数据存储与处理、打印、网络通信能力,使测控系统的性能和灵活性得到大大提高。由于PC机与外部测控接口电路的数据交换是通过PC机的各种总线进行,故主机电路通常分:内插式外接式混合式第三页,共120页。一、基于PC机的主机电路由PC机组成的测控系统充分利用PC机的显示、数据存储与处理、打印、网络通信能力,使测控系统的性能和灵活性得到大大提高。由于PC机与外部测控接口电路的数据交换是通过PC机的各种总线进行,故主机电路通常分:内插式外接式混合式第四页,共120页。1、内插式内插式接口电路一般使用的是PC机的PCI总线、ISA总线、VESA总线、AGP总线。特点:构成简单,结构紧凑,成本低;但由于PC机扩展槽数量有限,因而灵活性差。显示器打印机键盘测量电路鼠标控制电路PC主机系统扩展槽第五页,共120页。2、外接式输入和输出接口电路通过外部总线(如:RS232C、IEEE488、USB、IEEE1394等)与PC机传递数据。这种方式构成的测控系统灵活方便。显示器打印机键盘测量电路鼠标控制电路PC主机系统外接电箱第六页,共120页。3、混合式混合式是内插式与外接式的结合,这种方式灵活方便、适用范围广,可组成复杂的测控系统。显示器打印机键盘测量电路鼠标控制电路PC主机系统扩展槽外接电箱第七页,共120页。二、基于单片机的主机电路单片机的主机电路主要是指:存储器扩展电路外接I/O接口(即I/O口扩展)电路第八页,共120页。微型计算机的控制核心是微处理器MPU(MicroprosessorUnit),实际上,人们并不严格区分CPU和MPU的叫法,往往统称为CPU。通常MPU、内存和I/O接口是做在一块印刷电路板上的(也有做在几块印刷电路板上的,如STD总线控制机),MPU一般是通过I/O接口与外部设备联系,输入/输出操作往往是在CPU直接控制下完成的,如图1-2所示。

微型计算机的组成第九页,共120页。单片微型计算机的核心是微处理器MPU,与一般微型计算机所不同的是它将微处理器、内存、I/O接口、中断逻辑、定时器/计数器等集成到一个集成电路芯片上,有的单片机还集成了A/D、D/A转换器等电路,如图1-3所示。这种结构特别适用于测控领域,因此,也称其为微控制器(Microcontroller),简写为MCU,但国内大多数人习惯上都叫单片机.单片微型计算机的组成单片机单片机系统第十页,共120页。作为单片机的一个典型系列,MCS-51是Intel公司1980年推出的8位单片机,长期以来一直是单片机的主流机型,国内应用十分普遍。除MPU以外,其内部集成了4个8位双向并行接口,1个全双工串行接口,2~3个16位定时器/计数器,1个两级5个中断源的中断逻辑,128~256字节的数据RAM,一定容量的程序ROM(个别机型无片内程序ROM)。其组成框图如图所示。MCS-51系列单片机的组成第十一页,共120页。MCS-51系列单片机组成原理

MCS-51系列单片机内部结构

Intel公司推出的MCS-51系列单片机采用模块式结构,其基本型为8051,这一系列各种加强型单片机都是以8051为内核,增加一定的新功能后组成的,所以它们与8051完全兼容。8051是MCS-51系列单片机中较早的典型产品,它包括三种形式的芯片:8031、8051、8751。这三种形式的区别在于8031无片内ROM、8051有片内掩膜ROM、8751有片内EPROM。

第十二页,共120页。1.微处理器

CPU由运算器和控制器组成。运算器(即算术逻辑单元ALU)负责执行所有的算术逻辑运算,控制器负责对指令代码进行译码,产生各种控制信号,从而完成指令操作。2.输入/输出接口

8051内部共有4个双向8位并行I/O接口P0~P3,1个全双工串行接口(借用并口P3引脚)。通常P0口为数据/地址低8位分时复用,P1口为通用I/O接口,P2口为地址高8位,P3口为双功能接口,这4个并行口都具有内部锁存器。串行接口内带有缓冲器。3.片内存储器

8051片内有128字节的静态随机存取存储器SDAM作为片内数据存储器使用,字节地址为00H~7FH。还有21个特殊功能寄存器(SFR),用于各种编程控制,字节地址为80H~FFH(占用其中21个地址)。

第十三页,共120页。4.定时器/计数器

8051单片机片内具有两个16位加法计数器,分别为T0和T1。用于各种定时和对外部事件计数。5.中断系统

8051单片机内的中断逻辑具有5个中断源,两个优先级。每个中断源都被设置了固定的入口地址,响应中断时能自动转到对应中断源的入口地址执行程序,使编程得到简化。6.其他电路

8051单片机内部含有振荡电路,只需外接适当频率的晶体振荡器作为振荡源,振荡信号经内部电路整形作为单片机的主频信号。当然,也可用外部脉冲信号作为主频信号。

第十四页,共120页。2.3MCS-51系列单片机引脚功能

MCS-51系列单片机大多数采用40引脚双列直插式(DIP)封装形式,采用CHMOS工艺制造的80C51/80C31还有44引脚的方形封装形式。

MCS-51引脚配置

MCS-51逻辑框图

第十五页,共120页。I/O引脚和I/O端口

P0.7~P0.0:P0口是一个漏极开路型准双向I/O口。在访问外部存储器时,它是数据总线和地址总线低8位分时复用的接口;在EPROM编程时,它接收指令字节;在验证程序时,输出指令字节,并要求外接上拉电阻。P1.7~P1.0:P1口是带内部上拉电阻的8位双向I/O口,它是通用I/O端口。在EPROM编程和程序验证时,它接收低8位地址。P2.7~P2.0:P2口是带内部上拉电阻的8位双向I/O口。在访问外部存储器时,它输出高8位地址;在对EPROM编程和程序验证时,它接收高8位地址。P3.7~P3.0:P3口是带内部上拉电阻的8位双向I/O口,它是双功能I/O端口。除基本输入/输出功能外,每个引脚还有专用功能,其专用引脚功能见书上表2-2所示。第十六页,共120页。复位引脚RST/VPD(1)复位功能RST:单片机的复位是靠外部电路实现的。在振荡信号正常运行情况下,只要RST引脚保持两个机器周期以上时间的高电平,系统就能复位。(2)备用电源功能VPD:当Vcc掉电时,在Vcc下降到操作系统允许极限之前,RST/VPD引脚接上备用电源,向内部RAM供电,这时系统处于一种低功耗方式。时钟引脚:XTAL1和XTAL2是MCS-51系列单片机的时钟引脚。第十七页,共120页。主电源引脚1.Vcc:+5V工作电压。正常工作时Vcc引脚接+5V电源电压。2.Vss:接地端。正常工作时Vss引脚接地。ALE: 地址锁存允许控制信号PSEN: 片外程序存储器读控制信号RD: 片外数据存储器读控制信号WR: 片外数据存储器写控制信号EA: 程序存储器选择

第十八页,共120页。8051单片机系统扩展第十九页,共120页。本节介绍8051单片机系统扩展技术,主要介绍一下2点:

1、存储器的扩展

2、I/O接口扩展电路设计

第二十页,共120页。扩展使用的三总线地址总线:P0-低8位

P2-高8位数据总线:P0控制总线:RD、WR、ALE、PSEN

(读、写、地址锁存允许、外部ROM读选通)第二十一页,共120页。MCS—51单片机的P0口,是一个地址/数据分时复用口。即在某些时钟周期时,P0口传送低八位地址,这时ALE为高电平有效;而在其它时钟周期时传送数据,这时ALE为无效的低电平。利用P0口输出低八位地址和ALE同时有效的条件,即可用锁存器(74LS373)把低八位地址锁存下来。所以系统的低八位地址是从锁存器输出端送出的.而P0口本身则又可直接传送数据。高八位地址总线则是直接由P2口组成的。CPU的每一条控制信号引脚的组合,即构成了控制总线。8位地址锁存器

74LS373、8282第二十二页,共120页。一.扩展程序存储器电路:8031扩展2KBEPROMIntel2716常用EPROM芯片:Intel2716(2K×8位)、2732(4KB)、2764(8KB)、27128(16KB)、27256(32KB)、27512(64KB)。第二十三页,共120页。INTEL公司62系列MOS型静态随机存储器产品有:6264,62128,62256,62512等第二十四页,共120页。程序存储器的扩展

在8051单片机外部扩展8K字节程序存储器2764的连接图第二十五页,共120页。数据存储器扩展在8051单片机外部扩展一片8K字节数据存储器6264的连接图第二十六页,共120页。系统扩展选址方法1、线选法:利用单片机的一根空闲高位地址线(通常采用P2的某根口线)选中一个外部扩展I/O端口芯片,若要选中某个芯片工作,将对应芯片的片选信号端设为低电平,其它未被选中芯片的片选信号端设为高电平,从而保证只选中指定的芯片工作。优点:不需要地址译码器,可以节省器件,减小体积,降低成本缺点:可寻址的器件数目受到很大限制,而且地址空间不连续,这些都会给系统设计带来不便。第二十七页,共120页。线选法进行外部扩展举例

6264的地址范围:高8位地址变化范围P2.7P2.6P2.5P2.4P2.3P2.2P2.1P2.0110×××××低8位地址变化范围:P0.7P0.6P0.5P0.4P0.3P0.2P0.1P0.0××××××××由此可得6264的地址范围为:C000H~DFFFH。第二十八页,共120页。8255的地址范围:

高8位地址变化范围:P2.7P2.6P2.5P2.4P2.3P2.2P2.1P2.010111111低8位地址变化范围:P0.7P0.6P0.5P0.4P0.3P0.2P0.1P0.0111111××由此可得8255的地址范围为:BFFCH~BFFFH。0832的地址:高8位地址变化范围:P2.7P2.6P2.5P2.4P2.3P2.2P2.1P2.001111111低8位地址变化范围:P0.7P0.6P0.5P0.4P0.3P0.2P0.1P0.011111111由此可得0832的地址为:7FFFH。第二十九页,共120页。

2、地址译码法对于容量较大的存储器或I/O端口较多的单片机应用系统进行外部扩展,当芯片所需要的片选信号多于可利用的高位地址线时,就需要采用地址译码法。地址译码法必须采用地址译码器,常用的地址译码器有3-8译码器74LS138、双2-4译码器74LS139等。第三十页,共120页。扩展器件片内字节地址数地址编码62648K0000H~1FFFH825543FFCH~3FFFH083217FFFH825549FFCH~9FFFH地址译码进行外部扩展举例第三十一页,共120页。地址(AD7—AD0)A7A6A5A4A3A2A1A0寄存器XXXXX000XXXXX001XXXXX010XXXXX011XXXXX100XXXXX101*内部命令/状态寄存器

A口(PA7—PA0)

B口(PB7—PB0)

C口(PC5—PC0)定时器低8位定时器高6位和2位计时器方式位三、8155的RAM和I/O口寻址8155在8051系统中的RAM和I/O口是按外部存储器统一编址的,为16位地址。其高8位提供和输入信号。低8位地址由8051的P0口送到8155芯片地址线AD0~AD7确定。当为0时,单片机对8155RAM读/写,RAM低8位编址为00H~FFH;当为1时,单片机对I/O口进行读写,8155内部I/O及定时器的低8位编址如表第三十二页,共120页。MCS—51芯片和8155的连接和编程1、连接方法第三十三页,共120页。单片机存储器和I/O口扩展电路举例P2.7*P2.4P2.7*P2.4第三十四页,共120页。2764地址:0000H~1FFFH,8KB6116(1)地址:8000H~87FFH,2KB6116(2)地址;9000H~97FFH,2KB8155地址:I/O口:0100H~0103H,4BRAM:0000H~00FFH,256B第三十五页,共120页。第三节人机接口微机化测控系统通常都要有人-机对话功能,这个功能有两方面的含义:一是操作人员能向微机发布命令和输入数据;二是微机能向操作人员报告运行状态和运行结果。前一功能主要是通过测控系统操作面板上的键盘来实现的,后一功能主要是通过显示、记录和报警等装置实现的。本节介绍微机化测控系统的人-机接口及程序。第三十六页,共120页。3.1显示接口及程序测控系统中常用的显示器件有:发光二极管(简称LED)和液晶显示器(简称LCD),在不带微机的测控系统中,这些数字显示器通常与BCD码输出的A/D转换器连接,而在微机化测控系统中,这些数字显示器通常与微机接口连接。

第三十七页,共120页。1.LED显示接口及程序

LED(发光二极管)显示器件的工作电压低、功耗小、工作温度范围宽(-30~85℃)、寿命长、成本低、机械强度高、亮度中等、易于与TTL数字逻辑电路连接。7段LED显示器的段排列结构如图a所示,图b、c给出共阴及共阳极7段LED显示电路。对于共阴LED来说,如果当某个字段的阳极为高电平时,相应字段就点亮。若阳极为低电平,则该字段不亮。对于共阳LED则刚好相反。利用7段LED显示器显示数字或字母,需要设计一个字型码。第三十八页,共120页。1.段码式LED显示原理与接口结构 由7个LED构成的“日”字形7段(或8段)显示器;

由12个LED构成的“田”字形显示器;

由16个LED构成的“米”字形显示器等。LED数码字符显示器由数个LED组成一个阵列,封装于一个管壳内。下页上页返回第三十九页,共120页。工作原理为了适用于不同的驱动方式,每种结构形式又有共阳极和共阴极两种产品类型。(b)共阳极

(a)共阴极

(c)外型及引脚下页上页返回第四十页,共120页。

如下表所示,字型码是单字节结构,对于共阴极7段LED显示器而言,数字0的字型码为3FH,数字1的字型码为06H。D7D6D5D4D3D2D1D0DPgfcdcba段码位与显示段码的对应关系第四十一页,共120页。LED显示宇符与段码的关系字符共阴极段码共阳极段码字符共阴极段码共阳极段码03FHC0HA77H88H106HF9HB7CH83H25BHA4HC39HC6H34FHB0HD5EHA1H466H99HE79H86H56DH92HF71H8EH67DH82HH76H09H707HF8HP73H8CH87FH80HU3EHC1H96FH90H灭00HFFH下页上页返回第四十二页,共120页。

14段LED显示器的段排列如图所示。经适当的组合,可显示数字和26个英文字母的大写与小写。字形代码需占用双字节,如表所示。14段LED显示器也分为共阴极与共阳极两种结构。对于共阴极14段LED显示器而言,数字8的字形代码为813FH,字符M的字形代码为0A36H。onmlkjihdp×fedcba第四十三页,共120页。段码式LED显示与接口(1)静态显示方式静态显示系统在每一次显示输出后能够保持显示不变,仅在待显数码需要改变时,才更新其数字显示器中锁存的内容。

显示某一字符时,相应段的LED恒定导通或截止,使所显示字符的字段连续发光。每位数码管都应有各自的驱动器件,往往选择带锁存功能的器件,用以锁存各自待显示数码。功耗大,当显示的位数较多时,占用的I/O口较多优点亮度高,控制程序简单,显示稳定可靠缺点下页上页返回第四十四页,共120页。LED静态显示电路原理图下页上页返回第四十五页,共120页。(2)动态显示方式所有位的段选线并联起来,由一个8位I/O口控制,而各位的共阳极或共阴极分别由相应的I/O线控制,形成各位的轮流选通,即LED显示器分时轮流工作,每次只能使一个器件显示1ms~5ms。由于人的视觉暂留现象和发光二极管的余辉效应,仍感觉所有的器件都在同时显示,达到稳定的视觉效果。

在实际应用中常采用定时中断扫描方式,这种方式是每隔一定时间(如1ms)让一位数码管显示,假设有8位数码管,显示扫描周期为8ms。程序控制扫描和定时中断扫描。实现方法下页上页返回第四十六页,共120页。LED动态显示电路(1)共阴极接法(2)P1:段码;(3)P3.4-P3.7:位码(4)经74LS244提供LED相应段的驱动电流,送到各个显示器的段码(5)经6反向驱动器75LS04,使位码1有效。下页上页返回第四十七页,共120页。第四十八页,共120页。LED显示器的显示方式和译码方式

(1)多位LED显示块的显示方式静态显示(各位同时显示)动态显示(逐位轮流显示)每位LED显示块的段选端分别接一个8位锁存器/驱动器。应并接到同一个8位I/O口或锁存器/驱动器各位LED显示块的位选端应连在一起共阳极时固定接+5V共阴极时固定接地

第四十九页,共120页。(2)从要显示数字的BCD码转换成对应的段选码(称为译码)的方式

译码方式硬件译码软件译码微机输出显示数字的BCD码通过查表软件得到的段选码显示器段选端接口锁存器/译码器/驱动器锁存器/驱动器(无译码器)第五十页,共120页。3、LED显示器接口电路

硬件译码接口软件译码接口静态显示段选端接口每位各接一组“锁存器/译码器/驱动器”每位各接一组“锁存器/驱动器”位选端接口共阳极时各位位选端都接+5V,共阴极时各位位选端都接地动态显示段选端接口各位共接一组“锁存器/译码器/驱动器”各位共接一组“锁存器/驱动器”位选端接口每位位选端各接“译码器/驱动器”的一位驱动端第五十一页,共120页。4、常用接口器件:(1)段选端接口器件BCD-7段译码器MC14558BCD-7段译码/驱动器MC14547BCD-7段锁存/译码/驱动器MC14513、MC14495以及9368,并行输入4位LED静态显示锁存/译码/驱动器接口芯片ICM7212串入并出移位寄存器74LS164(适用于软件译码)

(2)动态显示位选端接口器件

3-8译码器74LS138(3)动态显示(段选位选)接口器件串行输入4位LED动态显示驱动接口芯片MC144998155第五十二页,共120页。

发光二极管在适当的驱动电流作用下,才能得到需要的亮度。LED是恒压元件,正向电压一般为1.2~2.4V。调整驱动电路即选取限流电阻R,应使LED的工作电流在10~20mA。也可用试验方法,改变限流电阻,得到适合亮度。发光二极管的驱动方式有两种。静态驱动方法:对要显示段始终通以额定电流。动态驱动方法:对要显示段通以矩形脉冲电流。为保证足够的显示亮度,应施加脉冲电流幅度为额定电流的数倍。为实现这种显示方式,各位LED数码管的段选端应并接在一起,由同一个8位I/O口或锁存器/驱动器控制,而各位数码管的位选端分别由相应的I/O口线或锁存器控制。第五十三页,共120页。后面是用硬件译码电路构成的静态显示电路,此处采用了MC14495和74LS138进行译码驱动。MC14495内带4位输入锁存器、译码器和驱动器,但一个MC14495只能与一位显示块接口,所以需要采用8个MC14495和LED显示块才能构成的8位LED静态显示器电路。MC14495的BCD码输入端挂接在数据总线上,每两片一组,每组形成一个数据字节单元,各字节单元由3-8译码器输出的译码信号进行寻址。译码器的输出受WR控制,只有向这些字节单元中写数据时,译码器才译出地址选通信号,将数据总线上的两位BCD码打入到相应的MC14495芯片锁存器中,从而使两位LED同时产生相应的显示。这种方法结构简单,编程容易。

第五十四页,共120页。由MC14495构成的8位静态LED显示器第五十五页,共120页。

利用软件译码构成的静态显示电路,如后图所示,8031的串行口工作方式0时,为移位寄存器方式。图中利用6片串入并出的移位寄存器74LS164作为6位静态显示器的显示输出口,欲显示的8位段码即字型码通过软件译码产生,并由RXD串行送出去,这样,主程序可不必扫描显示器,从而CPU能用于其它工作。第五十六页,共120页。图3-3-4软件译码静态显示器接口实例

第五十七页,共120页。START:SETBP1.7;

开放显示器传送控制

MOVR1,#06H MOVR0,#00H;字型码首地址偏移量

MOVDPTR,#TABLOOP:MOVA,R0 MOVCA,@A+DPTR;取出字型码

MOVSBUF,A;发送WAIT:JNBTI,WAIT;等待一帧发送完毕

CLRTI INCR0;指向下一个字型码

DJNZR1,LOOP CLRP1.7;关闭显示器传送控制TAB:DB06H,4FH,3FH,7FH,40H,73H显示“P-8031”第五十八页,共120页。

由MC14558构成的8位动态LED显示器

第五十九页,共120页。

用MC14499构成的4位动态LED显示器第六十页,共120页。

用8155实现8位动态LED显示器

第六十一页,共120页。2.LCD数码显示技术LCD(LiquidCrystalDigit)具有耗电低(mW/cm2),驱动电压低(-~+几伏),结构空间小而有效显示面积大、体薄物轻等优点。为智能化测控仪器设计提供良好条件。从显示原理上讲,驱动电压为交、直流均可,通常采用交流驱动。应注意交流显示频率信号的对称性,严格限制其直流分量在100mv以下。由于LCD显示器是容性负载,工作频率越高,消耗功率就越大,且对比度也变差,所以宜采用低频工作。低频下限值由人的视觉特性决定,一般选用50~100Hz。从对比度方面考虑,取方波的效果最好。第六十二页,共120页。

后图为交流驱动LCD显示器原理图。显示频率信号一方面直接加到LCD公共电极B上,另一方面还通过异或门间接加到LCD显示段电极S上。此时,只需控制异或门输入控制端A的电平,就能控制LCD显示器的亮度。当A端为“0”电平时,S端与B端同相位,这时LCD显示器两端的相对电位差为零,LCD显示器熄灭;当A端为“1”电平时,S端与B端反相位,这时LCD显示器两端的相对电位差如果大于LCD显示器的阈值电压,LCD显示器发光。第六十三页,共120页。第六十四页,共120页。LCD显示器工作原理第六十五页,共120页。

2、LCD与LED的比较

LCD与LED的相同点――都是笔段显示,都需要译码(硬件译码或软件译码)。

LCD与LED的不同点:LED显示器LCD显示器显示机理发光二极管导通发光液晶的电光效应笔段显示条件笔段电极与公共电极之间加直流电压笔段电极与公共电极之间加方波电压公共电极接高电平或低电平接方波电压驱动接口电路不要方波信号(如ICM7212)需要方波信号(如ICM7211)第六十六页,共120页。七段LCD显示电路第六十七页,共120页。后图所示为采用硬件译码器的LCD驱动接口。LCD显示器采用4N07。4N07的工作电压为3~6V,阈值电压为1.5V,工作频率为50~200Hz,采用静态工作方式,译码器驱动器采用MC14543。MC14543是带锁存器的CMOS型译码启动器,可以将输入的4位BCD码数据转换为7段显示码输出。驱动方式由PH端控制,在驱动LCD时,PH端输入显示方波信号。LD是内部锁存器选通,LD为高电平时,允许A~D端输入BCD码数据;LD为低电平时,锁存输入数据。BI端是消隐控制,BI端为高电平时消隐,即输出端a~g端输出信号的相位与PH端相同。图中,每块MC14543各驱动一位LCD,BCD码输入端A~D接到8031的P1.0~P1.3,锁存器选通端LD分别接到P1.4~P1.7,由P1.4~P1.7分别控制4块MC14543输入BCD码。MC14543的相位端PH接到8031的P3.7,由P3.7端提供一个显示用的低频方波信号。这个方波信号同时也提供给LCD显示器的公共端COM。

第六十八页,共120页。下页上页返回MC14543的引脚第六十九页,共120页。接口电路:4N07――4位LCD显示器

MC14543――LCD的锁存/译码/驱动器

P3.7――提供方波信号给驱动器和显示器的公共电极第七十页,共120页。硬件译码静态LCD显示实例第七十一页,共120页。动态LCD驱动接口第七十二页,共120页。3.2键盘接口键盘的种类:键盘上闭合键的识别是由专用硬件实现的,称为编码键盘,靠软件实现的称为非编码键盘。键盘的接口必须解决下列的一些问题:(1)决定是否有键按下;(2)如有键按下,决定是哪一个键被按下;(3)确定被按键的读数;(4)反弹跳—按键抖动的消除。(5)处理同时按键既同时有一个以上的按键。第七十三页,共120页。第七十四页,共120页。2、键盘的类型

编码键盘非编码键盘键盘扫描硬件实现软件实现键盘扫描硬件电路带有不带

独立式键盘行列式键盘每个按键的测试端各接一根输入口线接一根行线(或列线)输入线每个按键的接零端均接地接一根列线(或行线)输出线按键个数每个按键占用一根输入口线m根行线和n根列线就可组成m×n个按键的键盘适用场合按键较少或操作速度较高场合按键数量较多的场合键盘采用的接口(1)8031的P1口。(2)8255、8155扩展I/O口。(3)三态缓冲器扩展I/O口。(1)8031的P1口。(2)8255、8155扩展I/O口。(3)串行I/O扩展口。(4)专用芯片8279第七十五页,共120页。非编码键盘的工作方式非编码键盘工作方式查询方式定时方式中断方式键盘扫描CPU要不间断地对键盘进行扫描工作,直到有键按下为止,其间CPU不能干任何其它工作。利用定时器产生定时中断,CPU响应中断后对键盘进行扫描,当有键按下时,向CPU发出中断申请,CPU响应中断后对键盘进行扫描各条键的输入线仅与CPU的输入口相连不同CPU的中断口相接与CPU的输入口相连且同CPU的中断口相接

第七十六页,共120页。系统首先判断有无按键按下,有键按下,则延时10ms消除抖动,再查询按键状态并执行相应的操作,然后等待按键释放。程序扫描方式下页上页返回第七十七页,共120页。利用定时器产生定时(10ms)中断,CPU响应中断对键盘进行扫描,并在有键闭合时转入该键的功能处理程序。

定时扫描方式下页上页返回第七十八页,共120页。前两种方式下,CPU可能空扫描或不能及时响应键输入。

中断扫描方式有键按下时,产生中断信号给CPU,CPU响应中断,执行中断扫描并进行按键处理。下页上页返回第七十九页,共120页。中断方式矩阵键盘接口(2)第八十页,共120页。键输入中存在的问题及解决办法

(1)键抖动

解决办法:硬件方法――采用RS触发器图2-3-2(b)

软件方法――软件延时。(2)重键(两个或多个键同时按下)处理办法:当只有一个键按下时才读取键盘的输出,并且认为最后仍被按下的键是有效的正确按键。第八十一页,共120页。R-S触发器第八十二页,共120页。3.2.1非编码键盘独立连接式非编码键盘CPU接口+V10kΩ*4第八十三页,共120页。结构特点排列成4*4矩阵式结构每条列线接上拉电阻无键按下时,行线与列线不相连当某个键按下时,该按键所在的行、列相连第八十四页,共120页。1.独立式键盘接口电路查询方式程序清单见教材P84第八十五页,共120页。矩阵式键盘接口电路第八十六页,共120页。2.矩阵式非编码键盘识别按键的方法行扫描法线反转法行线x2x1x0y0y1y2y3列线0489512376AB10KΩ*4+5V行码列码0键:11011101键:11011012键:11010113键:11001114键:10111105键:1011101A键:0111011第八十七页,共120页。扫描法4*8矩阵键盘接口电路下页上页返回第八十八页,共120页。扫描法处理步骤识键

消抖从PC口依次使键盘的一根行线为0(该行线所在行即为行号),输出不同的扫描字,然后读取PA值,若PA口全为1,则无键闭合,否则,为0的口线,其所在的列线,即为列号。译键

PC输出00H,读PA状态。若PA口全为1,则无键闭合;若有口线为0,则有键闭合。有键闭合时,软件延时10~20ms,重新识键,有键闭合时,执行下一步,否则退出。下页上页返回等待释放为了保证键闭合一次,CPU仅做一次处理,在程序中需要等到待闭合键释放后再执行相应的键处理程序。第八十九页,共120页。8155扩展I/O口组成的行列式键盘8155扩展I/O口组成的行列式键盘特点:8条键扫描输出列线接到PA口,4条键输入行线接PC口。第九十页,共120页。(2)键盘扫描子程序的功能:①判断键盘上有无键按下――PA口输出全扫描字00H,读PC口状态:若PC0~PC3为全“1”则键盘无键按下,若不全为“1”则有键按下。②去键的机械抖动影响――在判断有键按下后,软件延时一段时间(5~10ms)后再判断键盘状态,如果仍为有键按下状态,则认为有一个稳定的键按下,否则按键抖动处理。③判别闭合键的键号――对键盘的列线进行扫描,即逐列置“0”电平。PA口依次输出列扫描字:FEH、FDH、FBH……7FH。每输出一个扫描字,紧接着读PC口状态:若PC0~PC3为全“1”,则列线输出为“0”的这一列上没有键闭合,否则这一列上有键闭合。④确定闭合键的键号――等于为低电平的列号加上为低电平的行的首键号。CPU对键的一次闭合仅作一次处理,采用的方法为等待键释放以后再将键号送入累加器A中。(3)键盘扫描子程序清单第九十一页,共120页。线反转法并行接口11010000+5V+5V并行接口11011011+5V+5V第九十二页,共120页。向所有行线输出低电平行设为输出,且输出低电平;列设为输入,读入列线状态。列设为输出,且输出低电平;行设为输入。读入行线状态。

根据两次读数,合成一个代码,即特征码(特征码中隐含着按键的位置),建立键码与特征码关系。识键译键输入各列线状态列线状态全为高电平,则无键按下;列线状态中有低电平,则有键按下。第九十三页,共120页。下页上页返回第九十四页,共120页。矩阵式非编码键盘按键的识别方法扫描法――图3-3-9(a)反转法――图3-3-9(b)每条作为键输入线的行线(或列线)通过一个上拉电阻接到+5V上,并与该行(或列)各按键的测试端相连行线和列线都要通过上拉电阻接+5V每条作为键扫描输出的列线(或行线)都不接上拉电阻和+5V,只与该列(或行)各键的接零端相连。第一步让所有键扫描输出列线(或行线)均置0电平,检查各键输入线电平是否有变化。将行线编程为输入线、列线编程为输出线,并使输出线输出全“0”,则行线中电平由高变到低所在行为按键所在行。第二步键扫描输出线逐线置“0”电平,其余各输出线均置高电平,检查各条键输入线电平的变化,如果某输入线由高电平变为零电平,则可确定此输入线与此输出线交叉点处的按键被按下。同第一步完全相反,将行线编程为输出线,列线编程为输入线,并使输出线输出全“0”,则列线中电平由高到低所在列为按键所在列。确定按键所处的行列值需多部操作只需两步操作第九十五页,共120页。8155扩展键盘显示器接口电路第九十六页,共120页。3.2.2编码键盘编码键盘的基本任务是识别按键,提供按键读数,一个高质量的编码键盘还应具有反弹跳、处理同时按键等功能。静态编码器—普通编码器如74148。可编程键盘/显示接口如8279。第九十七页,共120页。1.静态式编码器接口A0’A1’A2’键0123456700001111001100110101010111101234567101112131234897674148EIA0A1A2A2’A1’A0’第九十八页,共120页。2.8279键盘/显示器接口

用8279芯片可方便的构造编码式键盘系统,它具有结构简单、功能强、节省时间与节省存储单元等特点。第九十九页,共120页。

(1)8279的功能能同时进行键盘与显示器操作;扫描式键盘与显示器工作方式;自动消除键抖动;具有双键互锁及N键有效功能;键盘可扩充为128个按键;显示器位数最多可为16位;具有左端输入或右端输入的显示格式。第一百页,共120页。8279逻辑图第一百零一页,共120页。

(2)8279的引脚功能如下

D0~D7:双向数据线,用于传输CPU和8279间的数据及命令。CLK:时钟信号。为8279提供内部时钟。RESET:复位信号,高电平有效。:片选信号,低电平时允许CPU对其读写。:读、写信号,低电平有效。IRQ:中断请求信号,高电平有效。在键盘方式下,当FIFO/传感器RAM中有数据时,IRQ=1。CPU每次从RAM中读出数据时,IRQ变为0;如果读后RAM中仍有数据,则IRQ再次恢复为1。在传感器方式下,每当检测到传感器状态变化时IRQ为1。第一百零二页,共120页。

SL0~SL3:扫描信号。用来扫描键盘或传感器以及显示器。它们可以设定为编码(16选1)或译码(4选1)输出。RL0~RL7:回馈信号。它们是键盘矩阵或传感器矩阵的列(或行)信号输入线。但在选通方式下,它们为8位输入数据线。OUTA0~OUTA3;OUTB0~OUTB3:显示数据输出线。两组可以独立使用,也可以合并使用。合并使用时,OUTA3是最高位,OUTB0是最低位,合并后用作8位数字段码输出。SHIFT:换档输入信号。在键盘工作方式时,用来扩充键开关的功能,作为换档功能键的输入。在传感器方式和选通方式SHIFT无效。第一百零三页,共120页。CNTL/STB:控制/选通信号。在键盘工作方式时用来扩充键开关的功能,作为控制功能键的输入。在选通方式时在该信号的上升沿,把来自RL0~RL7的数据存入FIFORAM中。在传感器方式下,该信号无效。:显示消隐信号。在更换显示数字或使用消隐命令时,该信号可使显示器熄灭。:命令/数据选择端。=1时,CPU写入的信息为命令,CPU读出的信息为状态。=0时,CPU读写的字节均为数据。第一百零四页,共120页。(3)数据输入方式8279数据输入有3种方式,即键扫描方式、传感器扫描方式和选通输入方式。

键扫描方式:扫描线为SL0~SL3,回馈线为RL0~RL7。每按下一个键,便由8279自动编码,并送入先进先出堆栈FIFO,同时产生中断请求信号IRQ。键的编码格式如下:第一百零五页,共120页。

8279的扫描输出有两种方式:译码扫描和编码扫描。所谓译码扫描,即4条扫描线在同一时刻只有一条是低电平,并且以一定的频率轮流更换。如果用户键盘的扫描线多于4条,则需采用编码扫描方式。此时SL0~SL3输出的是0000~1111的二进制代码。它们不能直接用于键盘扫描,而必须经过低电平有效输出的译码器译码。例如,将SL0~SL2输入到3-8线译码器74LS138,即可得到可用的扫描信号(由8279内部逻辑所决定,不能直接用4-16线译码器对SL0~SL3进行译码以扫描键盘/传感器阵列,即在编码扫描时SL3仅用于显示器)。第一百零六页,共120页。

传感器扫描方式:扫描线及回馈线分别为SL0~SL2、RL0~RL3。将对开关阵列中每个结点的通断状态(传感器状态)进行扫描,回馈数据存于FIFO的8个存储单元,存储单元的地址与扫描信号的顺序一致。当开关阵列中任何一位状态改变时,便自动产生中断请求信号IRQ,中断服务程序将FIFO的内容读入CPU,并与原有状态比较后便可确定哪一位的状态发生了变化。所以用8279检测开关的通断状态非常方便。

选通输入方式:RL0~RL7与8255的选通并行输入端口的功能完全一样。此时,CNTL/STB端作为选通信号STB输入端,STB为高电平有效。第一百零七页,共120页。

8279在芯片内部已设置了消除键抖动和串键的逻辑电路.消抖:消抖电路检测到有键闭合时,等待10ms再次检测,若该键仍然闭合,则将闭合键的编码送入FIFO堆栈。串键:一种为两键互锁方式,即当第一键按下未释放时,第二键又被按下,则第二键为无效键;而当两键同时按下时,后释放的键为有效键。第二种为多键有效方式,指若多个键同时按下时,所有键依扫描顺序被识别,代码依次写入FIFO堆栈。(4)消抖和串键第一百零八页,共120页。(5)显示输出方式

8279内部设置了16×8显示RAM,每个单元存储一个字符的8位段码。当向显示RAM某一单元写入显示字符段码后,8279的硬件自动管理显示RAM的输出及同步扫描信号。显示RAM每一单元的字符段码D7~D0从OUTA3~OUTB0端输出。显示器的位扫描信号由SL0~SL3得到。

显示器的扫描信号与键盘输入扫描信号是公用的,当实际的显示位数多于4时,必须采用编码扫描输出。8279可外接8个或16个LED显示器,当实际的显示器数目少于8时,也必须设置成8字符或16字符显示模式之一。第一百零九页,共120页。显示器的数字输入方式有两种,即左端输入方式及右端输入方式。左端输入方式中,显示器的位置编号与显示RAM的地址一一对应,即显示RAM中“0”地址的内容在“0”号(最左端)位置显示,CPU依次从“0”地址或某一地址开始将字符段码写入显示RAM。地址大于“15”时,再从0地址开始写入。写入过程如图4-15所示。第一百一十页,共120

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论