计算机控制技术教程——第3章人机交互接口技术.ppt_第1页
计算机控制技术教程——第3章人机交互接口技术.ppt_第2页
计算机控制技术教程——第3章人机交互接口技术.ppt_第3页
计算机控制技术教程——第3章人机交互接口技术.ppt_第4页
计算机控制技术教程——第3章人机交互接口技术.ppt_第5页
已阅读5页,还剩46页未读 继续免费阅读

下载本文档

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

文档简介

第三章 人机交互接口技术 一、键盘接口技术 二、接口技术 三、接口技术 3.1 键盘接口技术 v键盘的分类 编码键盘 非编码键盘 v键盘设计需要解决的几个问题 按键的确认 重击和连击的处理 按键防抖技术 v少量功能键的接口技术 v矩阵键盘的接口技术 3.3.1 键盘设计的需解决的几个问题 v按键的确认 每一个键对应一个开关输入装置 键的闭合与否,取决于机械开关的通断状态 反映在电压上就是高低电平,如果高电平表示键 释放,则低电平表示键按下 3.3.1 键盘设计的需解决的几个问题 v重键和连击的处理 重键:同时按下两个以上的键 v最先按下为有效 v最后释放为有效 v多键无效 连击:多次按下同一个键 v等键释放后再去执行相应的程序 由设计者意 愿决定,通 过软件做相 应处理 3.3.1 键盘设计的需解决的几个问题 v按键防抖动技术 什么是按键的抖动 硬件防抖动 软件防抖动 3.3.1 键盘设计的需解决的几个问题 硬件防抖动 v滤波防抖动 v双稳态防抖动 软件防抖动:通过软件延时避过抖动时间 v第一次检测有键按下时,先软件延时(10ms 20ms),然后再确定该键电平是否维持闭合状态 ,若保持闭合状态,则确认此键按下 3.1.2 少量功能键的接口技术 v独立式按键 对于具有少量功能键的系统,多采用相互独立的 接口方法,即每个按键对应一个输入线 例题:设某个系统有个功能键,采用中断方式 的硬件接口电路 v硬件接口见图3.4 v8155地址: 控制字:EF00H; 口:EF01H; 口:EF02H; 口:EF03H v程序清单 3.1.2 少量功能键的接口技术 程序清单: ORG 0000H AJMP MAIN ; ORG 0003H ;外部中断0入口地址 AJMP KEYJMP ; ORG 0100H ; MAIN: SETB IT0 ;中断0边沿触发方式 SETB EX0 ;允许外部中断0 SETB EA ;开总中断 MOV DPTR,#0EF00H ;指向8155命令口 MOV A,#02H ;设A口为输入口 MOVX DPTR,A ;控制字写入命令寄存器 HERE: AJMP HERE ; 模拟主程序 3.1.2 少量功能键的接口技术 ORG 0200H ;中断入口 KEYJMP: MOV R3,#08H ;设置循环次数 MOV DPTR,#0EF01H ;指向8155A口 MOV R4,#00H ;计数器寄存器清零 MOVX A,DPTR ;读入状态字 KYAD1: RRC A ;带进位循环右移,找出低电平位 JNC KYAD2 ;PA(i)=0,转向KYAD2 INC R4 ;计数器加1 DJNZ R3,KYAD1 ;8次移位结束否?为结束继续右移 RETI ; KYAD2: MOV DPTR,#JMPTABL ;功能键入口地址表首址 MOV A,R4 ; RL A ;地址偏移量乘2 JMP A+DPTR ;功能键处理程序入口地址 JMPTABL:AJMP SB0 ;跳转到8个功能键处理程序 AJMP SB1 ; AJMP SB2 ; AJMP SB3 ; AJMP SB4 ; AJMP SB5 ; AJMP SB6 ; AJMP SB7 ; SB0: RET SB1: RET SB2: RET SB3: RET SB4: RET SB5: RET SB6: RET SB7: RET 3.1.2 少量功能键的接口技术 v 功能开关接口技术 又称为静态开关、拨码开关 开关的状态在系统上电(或复位)时由CPU读入,并 存于RAM单元中,此后CPU不再理会开关的状态 功能开关用于提前设置系统功能,输入重要数据 等 硬件电路接口:见图3.5 3.1.3 矩阵键盘接口技术 v矩阵键盘的接口 3.1.3 矩阵键盘接口技术 v程控扫描法 判断是否有键按下 延时10ms20ms去除键抖动 若有键闭合,则求出该键键值 等待按键释放,转按键处理程序 v定时扫描法 CPU以固定的间隔对键盘扫描1次,当发现有键按下时求键值,进行按 键处理 采用单片机内部定时器,定时时间到,产生中断信号,在定时中断服务程 序中扫描键盘 v中断扫描法 当没有键按下时,CPU不对键盘进行扫描 有键输入时,触发外部中断 在中断响应程序中查出键值,转按键处理程序 v串行接口的非编码键盘 利用单片机的串行口进行键盘扫描 节省单片机的并行I/O口资源 3.1.3.1 程控扫描程序设计 KEYPRO: ACALL DISUP ;调用显示子程序 ACALL KEXAM ;检查是否有键按下 JZ KEYPRO ;无键按下,继续等待 ACALL D10ms ;有键按下,延时10ms,防止抖动 ACALL KEXAM ;再次检查是否有键按下 JZ KEYPRO ;无键按下,继续等待 KEY1: MOV R2,#0FEH ;输出使X0行为低电平 MOV R3,#00H ;列值寄存器清零 MOV R4,#00H ;行值寄存器清零 KEY2: MOV DPTR,#8200 ;指向8155C口 MOV A,R2 ;扫描第一行 MOVX DPTR,A ; MOV DPTR,#8000 ;指向8155C口 MOVX A,DPTR ;读入列值 CPL A ;取反 ANL A,#0FFH ; JNZ KEY3 ;若有键按下,转求列值 MOV A,R4 ;无键按下,行值寄存器加8 ADD A,#08H ; MOV R4,A ; MOV A,R2 ;使下一行为低电平 RL A ; MOV R2,A ; JB ACC.4,KEY2 ;4个行扫描完毕?未完继续 AJMP KEYPRO ;4行扫描完毕,等待下次按键 KEY3: CPL A ;恢复列值模型 KEY4: RRC A ; JNC KEY5 ; INC R3 ;求列值 AJMP KEY4 KEY5: ACALL D10ms ; ACALL KEXAM ; JNZ KEY5 ;等待键释放 MOV A,R4 ;计算键值 ADD A,R3 ; MOV BUFF,A ;存键值 AJMP KEYADR ;转查找功能键入口 D10ms: MOV R5,#14H ; 延时10ms子程序 DL: MOV R6,#0FFH ; DL0: DJNZ R6,DL0 ; DJNZ R5,DL ; RET ; KEXAM: MOV DPTR,#8200H;指向8255C口 MOV A,#00H ;使所有行为低电平 MOVX DPTR,A ; MOV DPTR,#8000H;指向8255A口 MOVX A,DPTR ;读入列值 CPL A ;累加器取反 ANL A,#0FFH ; RET 3.1.3.1 程控扫描程序设计 KEYADR: MOV A,BUFF ; CJNE A,#0FH,KYARD1 ; AJMP DIGPRO ;键值等于F,转数字键处理 KYARD1: JC DIGPRO ;键值小于F,转数字键处理 KEYTBL: MOV DPTR,#JMPTBL;建立功能键数字地址表指针 CLR C ;清进位 SUBB A,#10H ;求相对地址 RL A ; JMP A+DPTR ; JMPTBL: AJMP AAA ; AJMP BBB ; AJMP CCC ; AJMP DDD ; AJMP EEE ; AJMP FFF ; AJMP GGG ; AJMP HHH ; AJMP III ; AJMP JJJ ; AJMP KKK ; AJMP LLL ; AJMP MMM ; AJMP NNN ; AJMP OOO ; AJMP PPP ; DIGPRO: RET AAA: RET BBB: RET CCC: RET DDD: RET EEE: RET FFF: RET GGG: RET HHH: RET III: RET JJJ: RET KKK: RET LLL: RET MMM: RET NNN: RET OOO: RET PPP: RET 3.1.4 键盘特殊功能的处理 v键盘锁定技术 防止失误按键给系统带来的影响,常常给键盘加锁 查询标志位法 控制键值锁存器的通断 v双功能键和多功能键处理 为了节省功能键的数量,经常采用多功能键 双档键的方法 按键计数 复合键 3.2 LED显示接口技术 vLED数码管结构和显示原理 vLED动态显示接口技术 vLED静态显示接口技术 v硬件译码显示电路 vLED光柱模拟显示器件(了解) 3.2.1 LED数码管结构和显示原理 vLED显示器的结构及原理 结构及外形:见图3.14 v字型:7段显示数码管、米字型数码管 v驱动方法:共阳极、共阴极 显示原理及编码:见表3.1 数码管驱动电流:十几几十微安 5位LED数码显示管5BS251:见图3.15 3.2.1 LED数码管结构和显示原理 vLED数码管的显示方法 按显示的特点分类 v动态显示:定时对显示器件进行扫描,利用视觉暂留 现象实现持续显示 v静态显示:计算机一次输出显示模型,利用锁存器保 持数据,直到再次更新数据 按接口分类 v并行接口:利用单片机并行口设计显示接口 v串行接口:利用单片机通用串行口设计显示接口 按译码方式分类 v软件查表法:通过软件查表找出对应的显示码 v硬件译码:利用带显示译码的LED数码显示芯片,单 片机可直接输出BCD码进行显示 3.2.2 LED动态显示接口技术 v并行动态显示电路及程序设计举例 硬件接口:见图3.16 流程图 地址: v8155A口:FD01H(1111,1101,0000,0001) v8155B口:FD02H(1111,1101,0000,0010) 显示子程序 3.2.2 LED动态显示接口技术 动态显示子程序: DISPLY: MOV R0,#30H ;显示缓冲区首地址送R0 MOV R2,#20H ;位选码指向最左一位(0010,0000) DISPLY1:MOV A,R0 ;取出要显示的数 MOV DPTR,#SEGTBL;指向换码表首址 MOVC A,A+DPTR ;取出显示码 MOV DPTR,#0FD01H;8155A口地址 MOVX DPTR,A ;从8155A口输出显示码 MOV A,R2 ;取位选码 INC DPTR ;8155B口地址 MOVX DPTR,A ;从8155B口输出位选码 ACALL DIMS ;延时1MS MOV A,R2 ; JNB ACC.0,DISPLY2;6位都显示完了吗?未完继续 RET DISPLY2:INC R0 ;求下一个待显示的数的RAM地址 MOV A,R2 ;求下一个位选码 RRC A ; MOV R2,A ; AJMP DISPLY1 ; DIMS: MOV R3,#7DH ;延时1MS子程序 DL1: NOP NOP DJNZ R3,DL1 ; RET SEGTBL: DB 3FH ;对应于字符0 DB 06H ;对应于字符1 DB 5BH ;对应于字符2 DB 4FH ;对应于字符3 DB 66H ;对应于字符4 DB 6DH ;对应于字符5 DB 7DH ;对应于字符6 DB 07H ;对应于字符7 DB 7FH ;对应于字符8 DB 67H ;对应于字符9 DB 77H ;对应于字符A DB 7CH ;对应于字符B DB 39H ;对应于字符C DB 5EH ;对应于字符D DB 79H ;对应于字符E DB 71H ;对应于字符F 3.2.2 LED动态显示接口技术 v串行动态显示电路及程序设计举例 硬件接口:见图3.18 软件设计 v串口初始化 v显示子程序 3.2.2 LED动态显示接口技术 ORG 8000H DISPLY: MOV R0,#50H ;指向显示缓冲区 MOV R1,#01H ;指向最右边一位 LOOP: MOV P1,R1 ;送扫描位选信号 MOV A,R0 ;取被显示数 ADD A,#12H ;加上字形表的偏移量 MOVC A,A+P ;取字型码 MOV SBUF,A ;输出显示码 MOV R3,#02H ;延时1MS DL0: MOV R4,#0FH ; DL1: DJNZ R4,DL1 ; DJNZ R3,DL0 ; INC R0 ;指向下一个显示缓冲单元 MOV A,R1 ;指下一个位选码 RL A ; MOV R1,A ; JNB ACC.6,LOOP ;6位都显示完了吗? RET ;是,返回 SEGTAB: DB 3FH,06H,5BH ;0,1,2 DB 4FH,66H,6DH ;3,4,5 DB 7DH,07H,7FH ;6,7,8 DB 6FH,7DH,7CH ;9,A,B DB 39H,5EH,79H ;c,d,E DB 71H,80H,40H ;F, . , - DB 00H,73H ;空,P 3.2.3 LED静态显示接口技术 v并行接口静态显示电路及程序设计 接口电路:见图3.19 v总线驱动器:74ls244 v数据锁存器:74ls377 地址:4000H4005H(0100,00000100,0101) 程序设计: v串行接口静态显示电路及程序设计 硬件接口电路:见图3.20 3.2.3 LED静态显示接口技术 v并行接口静态显示程序设计: ORG 8000H SIXDPY: MOV R0,#30H ;建立显示缓冲区地址指针 MOV 33H,#03H ;设置循环次数 MOV DPTR,#4000H;指向最左边一位 LOOP: MOV A,R0 ;取显示内容 ANL A,#0F0H ;取BCD码高4位去显示 RR A ; RR A ; RR A ; RR A ; ADD A,#11H ;查表得到显示码 MOVC A,A+PC ; MOVX DPTR,A ; MOV A,R0 ;取BCD码低4位去显示 ANL A,#0FH ; INC DPH ;求下一个显示位地址 ADD A,#08H ;查表得到显示码 MOVC A,A+PC ; MOVX DPTR,A ; INC R0 ;求下一个要显示的BCD码 INC DPH ;求下一个显示位地址 DJNZ 33H,LOOP ;判断6位显示模型是否已送完 RET SEGTAB: DB 3FH,06H,5BH,4FH ;0,1,2,3 DB 66H,6DH,7DH,07H ;4,5,6,7, DB 7FH,6FH,77H,7CH ;8,9,A,b DB 39H,5EH,79H,71H ;c,d,E,F DB 80H,40H,00H,73H ;.,-,空,P 3.2.4 硬件译码显示电路 v由硬件进行显示译码,只需输出BCD码即可 v静态硬件译码显示电路应用实例:见图3.22 v锁存、译码、驱动一体的8位LED驱动器ICM7218 MODE=1:从ID7ID4写控制字 MODE=0:从ID3ID0输入8位16进制码和BCD码 在写入8个字后,内部逻辑自动将8个字按顺序存入RAM,8个字将分 别按次序在第18位显示。8个数据必须写完,否则LED不亮。 3.3 LCD的显示接口技术 v LCD为英文Liquid Crystal Display的缩写,即液 晶显示器,是一种数字显示技术,可以通过液晶和 彩色过滤器过滤光源,在平面面板上产生图象。 3.3 LCD的显示接口技术 v从显示形式对LCD分类 字段型: v即“日”字型的LCD,用于显示数字和字母。 v通常市面上有售4位、6位、8位等LCD显示模块。 点阵字符型: v点阵显示字母、图形、特殊用户定义符号。 v每个字符为5x7、5x8、5x11的象素点阵; v显示行数一般有1行、2行、4行三种 v每行可显示字符有8个、16个、20个、24个等等。 点阵图形型 v可显示完整的图形或者非固定的汉字 v常有的点阵有:80X32、80x64、128x128等等,种类非常之多。 专用型 v为某种特殊应用而设计,用于显示少量、固定的汉字或图形。 v例如钟表上的汉字的定制,微波炉上的商标图形。 v有专门的厂家可以随意定制LCD的图形形状。 3.3 LCD的显示接口技术 v按采光方式分类: 自然采光方式 v把液晶器件做成反射式结构,利用自然光进行显示。 v便宜,低能耗,用于电子手表,计算器,液晶表头 背光源采光方式 v在液晶显示器件背面设计一个平面光源,利用背光源 采光。 v如手机,电脑显示器 3.3.1 LCD显示器工作原理 v液晶的结构 3.3.1 LCD显示器工作原理 早在1888年,人们就发现液晶这一呈液体状的化学物质, 象磁场中的金属一样,当受到外界电场影响时,其分子会 产生精确的有序排列。如果对分子的排列加以适当的控制 ,液晶分子将会允许光线穿越。 LCD显示屏都是由不同部分组成的分层结构。位于最后面 的一层是由荧光物质组成的可以发射光线的背光层。背光 层发出的光线在穿过第一层偏振过滤层之后进入包含成千 上万水晶液滴的液晶层。 液晶层中的水晶液滴都被包含在细小的单元格结构中,一 个或多个单元格构成屏幕上的一个像素。当LCD中的电极 产生电场时,液晶分子就会产生扭曲,从而将穿越其中的 光线进行有规则的折射,然后经过第二层过滤层的过滤在 屏幕上显示出来。 通常,在彩色LCD面板中,每一个像素都是由三个液晶单 元格构成,其中每一个单元格前面都分别有红色,绿色, 或兰色的过滤器。这样,通过不同单元格的光线就可以在 屏幕上显示出不同的颜色。 3.3.1 LCD显示器工作原理 3.3.1 LCD显示器工作原理 3.3.1 LCD显示器工作原理 3.3.1 LCD显示器工作原理 3.3.1 LCD显示器工作原理 a b 3.3.1 LCD显示器工作原理 a b 3.3.1 LCD显示器工作原理 3.3.2 LCD的驱动方式 v液晶的显示是由于在显示像素上施加了电场的缘故,而这个电场则通过 在显示像素的上下两电极上施加电压差产生。 v在显示像素上建立直流电场是非常容易的事,但直流电场将导致液晶材 料的化学反应和电极老化,从而迅速降低液晶的显示寿命,因此必须建 立交流驱动电场,并且要求这个交流电场中的直流分量越小越好,通常 要求直流分量小于50mV。 v在实际应用中,由于采用了数字电路驱动,所以这种交流电场是通过脉 冲电压信号来建立的。 v像素上交流电场的强弱用交流电压的有效值表示,当有效值大于液晶的 阈值电压时,像素呈显示态;当有效值小于阈值电压时,像素不产生电 光效应;当有效值在阈值电压附近时,液晶将呈现较弱的电光效应,此 时将会影响液晶显示器件的对比度。 v液晶显示的驱动就是用来调整施加在液晶显示器件电极上的电位信号的 相位、峰值、频率等,建立驱动电场,以实现液晶显示器件的显示效果 。 3.3.1 LCD显示器的驱动方式 v静态驱动法(见图3.20) 一个独立的背极BP 每个字段有独立的引脚 v动态(多极)驱动法 v二者相比较: 静态驱动响应速度快、耗电少、驱动电压低。 但静态驱动驱动电极度数必须与显示笔段数相同, 因而只能用于显示字数不多的场合。 动态(多极)驱动法 动态(多极)驱动法 动态(多极)驱动法 3.3.3 4位LCD静态驱动芯片ICM7211 vICM7211段码型液晶显示控制器是一种4位的驱动器,其内 部不含A/D转换,比较适用于数字的信号显示,并且一个芯 片可以支持4个液晶段码的显示。常见的ICL7106是属于表 头专用的,其输入信号必须是模似值,这就显得应用的不方 便,在很多纯数字化系统中,在多位显示的系统中, ICM7211的价值就得以充分体现。 v应用实例: 硬件接口:见图3.24 软件设计:在第四位显示BCD码9 MOV A,#39H;DS2:DS1=11,B3B0=1001 MOV DPTR,#4000H; 选中第一片芯片 MOVXDPTR,A;送出被显示数 3.3.4 点阵式LCD接口技术 vMGLS128-64的硬件描述 硬件结构见图3.26 128(列)*164(行)点阵 由两个液晶驱动器HD61202构成,分别负责左右半 面 3.3.4 点阵式LCD接口技术 vHD61202及其兼容控制驱动器的特点: 1) 内藏6464=4096位显示RAM ,RAM中每位数 据对应LCD 屏上一个点的亮、暗状态; 2) HD61202 及其兼容控制驱动器是列驱动器具有 64路列驱动输出; 3) HD61202 及其兼容控制驱动器读写操作时序与 68系列微处理器相符,因此它可直接与68 系列微 处理器接口相联; 4) HD61202 及其兼容控制驱动器的占空比为1/32- 1/64。 3.3.4 点阵式LCD接口技术 vMGLS-12664的引脚功能 电源 vVDD 电源正,接5V vVSS电源负,接-5V或地 vVO电源控制端,用来调节显示屏灰度 控

温馨提示

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

评论

0/150

提交评论