您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > 微机原理与接口技术人机接口技术课件
《微机原理与接口技术》第13章人机交互接口技术主编:周国运机械工业出版社2011.9本章内容13.1键盘及其接口13.2显示器及其接口13.3打印机及其接口13.4微机其它外设及接口人机交互是指人与计算机之间建立联系、交流信息的有关操作。通过输入设备,人们把要执行的命令或数据送给计算机,这些设备如键盘、鼠标、扫描仪等。通过输出设备,又从计算机获得易于理解的信息,这些设备如显示器、打印机等。本章讲述几种常见人机交互设备的结构、工作原理、性能特点、接口及应用等知识。13.1键盘及其接口键盘是从英文打字机演变而来的,是计算机最常用的、也是最主要的标准输入设备。PC系列微机的键盘主要包括26个大小写字母键、0~9数字键、功能键、组合控制键、光标控制键、标点符号及特殊符号键。13.1.1键盘的分类和特点一、键盘按结构分类(1)机械触点式键盘机械触点式键盘就是通常所说的机械式键盘,每个按键下有两个触点,平时这两个触点不接触,相当于断路,当该按键被按下时,两个触点直接接触,使电路闭合导通,产生信号。其本质是把机械上的通断转换成电气上的逻辑关系。这类键盘手感差,易磨损,故障率较高,寿命短。13.1键盘及其接口(2)电容式键盘电容式键盘触点之间不直接接触,当按键被按下时,改变电容器电极之间的距离,在触点之间形成两个串联的平板电容,使脉冲信号通过。能自动检测被按下键并提供对应键码,以并行或串行方式送给CPU。这类键盘击键时无噪声,开关寿命长,可靠性好,响应速度快,工作频率高,灵敏度和稳定性也较好,但较贵。13.1键盘及其接口二、键盘的编码形式(1)编码式键盘该键盘带有硬件电路,有专门的控制电路,当某个按键被按下时,能自动检测并产生相应的代码,以并行或串行方式送给CPU。还有去抖动和防止多键、串键等保护装置。这类键盘接口简单,使用方便,响应速度快,但硬件电路复杂,价格高,而且按键代码固定,不易修改和扩充。13.1键盘及其接口(2)非编码式键盘该键盘没有独立的硬件电路,只提供键盘的行列矩阵,采用软件识别按键并产生代码,键盘只使用简单的硬件来识别按键,向PC机提供按键的位置代码,然后由软件把这些位置代码转换为规定的编码。这种键盘响应速度不如编码式键盘快,但它可以通过软件为按键重新定义编码,扩充键盘功能方便,在自己开发的系统中广泛采用。13.1键盘及其接口13.1.2PC机键盘接口PC机键盘具有两个基本特点:一是按键开关为无触点的电容开关,通过按键动作使电容量发生变化,来检测按键的断开和接通;二是键盘由单片机程序扫描并识别按下的键,然后再向键盘接口发送所按下键的扫描码。键盘接口的作用:接收键盘送来的扫描码;产生键盘中断;对键盘初始化、测试、复位等。PC常用的键盘接口有3种:(1)标准接口一般用于早期的AT主板上,也称作AT接口。标准接口为圆形,比PS/2接口要大,称为大口。(2)PS/2接口PS/2接口为具有6针的圆形插座,目前PC上一般都具有连接键盘的PS/2接口。(3)USB接口具有即插即用,支持热插拔等优点,很多设备都采用了USB接口,键盘也不例外。13.1键盘及其接口一、键盘设计中应注意的问题(1)键抖动在操作按键时会产生机械抖动,一般持续几毫秒到十几毫秒,抖动的产生会使一次按键被软件错误地判断为多次按键,所以在扫描键盘的过程中,必须想办法消除键抖动,否则会引起错误。去抖动的方法通常有两种,软件延时和硬件去抖动电路。13.1键盘及其接口13.1.3简单键盘接口软件延时法:发现有键按下或释放时,软件延时一段时间(5ms~20ms),再检查看是否有按键按下。若检查不到,则说明为干扰;若检查到,说明信号已经稳定,可对按键做识别。硬件消抖动:在键开关与计算机接口之间加一个消抖动电路,如双稳电路、单稳电路(输出脉宽要大于抖动时间)等。由于硬件去抖动增加了电路的复杂性,每个按键都要一个去抖动电路,这种方法只适用于键数目较少的场合。键数目较多时,采用软件延时法去抖动。13.1键盘及其接口(2)重键重键是指在同一时刻有两个或多个键同时按下而产生的不确定或错误问题。解决重键可采取:•无效处理,当发现有一个以上按键同时按下时,认为此次按键输入无效;•等待释放,将最后释放的按键作为有效键处理;•硬件封锁,当发现有一按键按下时,硬件电路即刻封锁其他按键的输入,直到该键处理完毕。13.1键盘及其接口(3)防止一次按键多次处理当键扫描速度和键处理速度较快时,一个按下的键还未来得及释放,键扫描和处理程序就已执行了多遍,造成按一次键有多个键值输入的错误。为避免这种情况,必须保证按一次键,CPU只对该键处理一次。(4)键值的确定最方便的方法是利用按键所在的行、列值,形成一个查表。查表得到相应的键值;或者利用行、列值进行变换,得到一个该键惟一对应的编码,再查表得到相应的键值。13.1键盘及其接口二、行扫描法识别按键行扫描法需要两个并行口,行线接输出口,列线接输入口,如图13-1。行扫描法的原理是:通过程序向键盘的所有行逐行输出低电平,若无键按下,则所有列的输入均为高电平。若有键按下,就会将所在的列钳位在低电平。通过程序读入列线的状态,就可判断有无键按下及哪一个键。键盘行扫描法的操作过程如下:13.1键盘及其接口13.1键盘及其接口PA0PA1PA2PA3PB0PB1PB2PB3+5V行首键号01234567BAD98CEF第0行第1行第2行第3行行号第0列第1列第2列第3列列号10Ω图13-1扫描法原理图8255A(1)查询是否有键按下所有行输出低电平,然后输入全部列值;若读入的列值全是1,则说明没有键按下,否则说明有键按下。(2)识别按下键所在的行使某一行输出低电平,其余的行输出高电平,然后读入列值。若读入的列值不是全1,则说明此行有键按下,否则此行无键按下。逐行输出低电平,直到找出按下键所在的行号。(3)找出按下键所在的列对于上面读取的不为全1的列值,逐位判断是否为0,为0的位号就是按下键的列号。13.1键盘及其接口(3)行扫描法识别按键程序对图13-1的4×4键盘使用行扫描法编程识别按键。设16个按键的键值从左到右、从上到下,分别为0,1,2,3,4,5,6,…,0FH,无键按下返回0FFH,返回值在BL中,假定8255A的端口地址分别为60H~63H。键盘扫描子程序如下:13.1键盘及其接口KEY:MOVAL,82HOUT63H,AL;A口输出,B口输入MOVAL,0OUT60H,AL;A口输出全扫描字0INAL,61H;读取B口ANDAL,0FH;屏蔽掉高4位CMPAL,0FHJZNKEY_P;输入低4位若全为1无键按下,返回0FFHCALLDELAY;调用延时程序,去抖13.1键盘及其接口MOVAL,0;确认有键按下OUT60H,AL;A口输出全扫描字0INAL,61H;读取B口ANDAL,0FH;屏蔽掉高4位CMPAL,0FH;输入低4位若全为1JZNKEY_P;则为抖动引起返回0FFHMOVBL,0;键值初值0MOVCL,0EH;扫描字,最低位为0MOVDL,4;扫描次数13.1键盘及其接口SCAN:MOVAL,CLOUT60H,AL;送出扫描字ROLAL,1MOVCL,AL;扫描字左移,为下次做准备INAL,61H;读取列值ANDAL,0FHCMPAL,0FHJNZFCOLMOVAL,BLADDAL,4MOVBL,AL;不在该行,键值加413.1键盘及其接口DECDLJNZSCAN;进行下次扫描JMPDONEFCOL:RCRAL,1;AL带进位右移JNCDONE;进位为0是该键,;且BL中为键值INCBL;找下一列,键值加1JMPFCOLNKEY_P:MOVBL,0FFHDONE:RET13.1键盘及其接口13.1键盘及其接口E+5V01234567BAD98CF8255APA0PA1PA2PA3PB0PB1PB2PB3(a)行输出列输入+5V01234567BAD98CF8255APA0PA1PA2PA3PB0PB1PB2PB3(b)列输出行输入三、行列反转法识别按键1、电路(1)判断是否有键按下所有行输出低电平,然后输入全部列值;若读入的列值全是1,则说明没有键按下,否则说明有键按下。(2)行列输出、输入反转操作改变行列的输入/输出方式,行线为输入,列线为输出。将上面读入的列值从列线输出,然后再从行线读入行值。(3)行列值合并识别按下的键行值和列值组合起来的16位二进制数,形成了按键的识别码。通过查表操作,将识别码在表中的位置转换为键值。13.1键盘及其接口2、按键识别(4)行列反转法识别按键程序用行列反转法对图13-2所示的键盘编程识别按键。设有键按下时16个按键的键值从左到右、从上到下,分别为0,1,2,3,4,5,6,…,0FH,无键按下返回0FFH,返回值在BL中,假定8255A的端口地址分别为60H~63H。子程序如下:13.1键盘及其接口KEY:MOVAL,82HOUT63H,AL;A口输出,B口输入MOVAL,0OUT60H,AL;A口输出全扫描字0INAL,61H;读取B口ANDAL,0FH;屏蔽掉高4位CMPAL,0FHJZNKEY_P;若低4位全为1,返回FFHCALLDELAY;调用延时程序,去抖13.1键盘及其接口MOVAL,0;确认是否抖动OUT60H,AL;A口输出全扫描字0INAL,61H;读取B口ANDAL,0FH;屏蔽掉高4位CMPAL,0FHJZNKEY_P;若低4位全为1则为抖动MOVBL,AL;保存列MOVAL,90HOUT63H,AL;使8255的A口输入,B口输出13.1键盘及其接口MOVAL,BLOUT61H,AL;将列置从B口输出INAL,60H;读取行值ANDAL,0FHMOVAH,AL;行值存AHMOVAL,BL;列值存ALLEASI,TABLE;取键码表首地址MOVBL,0;键值初值送0MOVCX,1613.1键盘及其接口LOOP1:CMPAX,[SI]JZDONE;找到,返回键值INCSIINCSIINCBLLOOPLOOP1;进行下一次查找NKEY_P:MOVBL,0FFHDONE:RET13.1键盘及其接口;行列反转法键码表TABLE:DW0E0EH,0E0DH,0E0BH,0E07HDW0D0EH,0D0DH,0D0BH,0D07HDW0B0EH,0B0DH,0B0BH,0B07HDW070EH,070DH,070BH,0707H13.1键盘及其接口显示器是PC机最常用的输出设备,可用来显示字符、图形、图像,它可以作为计算机内部信息的输出设备,又可以与键盘配合作为输入设备。现在多数计算机主要采用液晶显示器(LCD),但在一些简单或专用的微机系统中,往往只需要显示数字,一般使用简单的数码管(LED)来构成系统的显示设备。13.2显示器及其接口13.2.1液晶显示器及其接口一、液晶显示器液晶显示器(LiquidCrystalDisplay,LCD)的成像原理与CRT显示器完全不同。LCD显示器不是用体积较大的显像管进行成像,而是利用液晶的物理特性成像。液晶的物理特性是:通电时导通,排列变得有秩序,使光线容易通过;不通电时,排列混乱,阻止光线通过。利用此原理,可制成液晶显示器。液晶显示器的主要参数如下:(1)可视角度可视角越大越好。(2)亮度目前国内的TFT液晶显示器亮度都在200cd/m2以上,亮度低则感觉暗。(3)响应时间响应时间反映了液晶显示器各像素点对输入信号反应的速度,响应时间越小越好。(4)显示色数13.2显示器及其接口二、显示卡显示卡的基本作用就是控制微机的图形输出,对图形函数进行加速。通常以附加卡的形式安装在主板扩展槽中,或集成在主板上。显示卡的性能,是指显示卡上的芯片能够提供的图形函数计算能力,这个芯片通常也称为加速器或图形处理器。显卡性能主要有:13.2显示器及其接口(1)显示分辨率显示分辨率用“每行的点数乘以每屏行数”来表示。显卡的分辨率不应低于显示器的分辨率。(2)刷新速度每秒显示画面的帧数叫显示卡的刷新率,也就是刷新速度。刷新率只要达到70~72Hz,画面都非常
本文标题:微机原理与接口技术人机接口技术课件
链接地址:https://www.777doc.com/doc-2435612 .html