1 / 198

第 3 章 人机交互接口技术

第 3 章 人机交互接口技术 . 前言 3.1 键盘接口技术 3.2 红外遥控键盘接口技术 3.3 LED 显示接口技术 3.4 LED 电子显示屏技术 3.5 LCD 显示接口技术. 第 3 章 人机交互接口技术 . ① 一个安全可靠的控制系统必须具有方便的交互功 能。 是系统与操作人员之间交互的窗口。 建立联系、交换信息的 I/O 设备的接口。 ② 包括 : 键盘、显示、打印等。 ③ 操作人员通过显示的内容,及时掌握生产情况。 对应用系统进行人工干预,以使其随时能按照操作人员的意图工作。. 微机控制技术.

Télécharger la présentation

第 3 章 人机交互接口技术

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 第3章 人机交互接口技术 • 前言 • 3.1 键盘接口技术 • 3.2 红外遥控键盘接口技术 • 3.3 LED显示接口技术 • 3.4 LED电子显示屏技术 • 3.5 LCD显示接口技术

  2. 第3章 人机交互接口技术 ①一个安全可靠的控制系统必须具有方便的交互功 能。 • 是系统与操作人员之间交互的窗口。 • 建立联系、交换信息的 I/O 设备的接口。 ② 包括: 键盘、显示、打印等。 ③ 操作人员通过显示的内容,及时掌握生产情况。 对应用系统进行人工干预,以使其随时能按照操作人员的意图工作。 微机控制技术

  3. 3.1 键盘接口技术 若干按键的集合构成键盘, 是操作人员向系统提供干预命令的接口设备。 键盘分类: (1) 编码键盘 ·能自动识别按下的键并产生相应代码, 以并行/串行方式送给 CPU。 ·使用方便,接口简单,响应速度快,但较贵。 (2) 非编码键盘 ·通过软件来确定按键并计算键值。 价格便宜,因此得到了广泛的应用。 微机控制技术

  4. 3.1 键盘接口技术 3.1.1 键盘设计需解决的几个问题 3.1.2 少量功能键的接口技术 3.1.3 矩阵键盘的接口技术 3.1.4 触模式电子开关接口技术 3.1.5 键盘特殊功能的处理

  5. 3.1.1 键盘设计需解决的几个问题 1.按键的确认 ·键盘实际上是一组按键的集合。 ·每一个按键即一个开关量输入装置。 ·通过电平状态检测确定键的闭合与否。 微机控制技术

  6. 3.1.1 键盘设计需解决的几个问题 说明: 1.连击、重键客观存。 2. 按甚么原则进行确认由设计者确定 2.重键与连击的处理 按键的确定方法: (1) 按下时间最长的为当前按键 (2) 最先按下的键为当前按键, (3) 最后释放的键看成是输入键。 (4) 采用单键按下有效,多键同时按下无效。 (若系统设有复合键,另论)。 微机控制技术

  7. 3.1.1 键盘设计需解决的几个问题 3.按键防抖动技术 对于采用机械弹性开关的键盘: (1)由于机械触点的弹性作用,一个按键开关在闭合 及断开的瞬间必然伴随有一连串的抖动。 (2)其波形如 图3-1 所示。抖动过程的长短由按键的 机械特性决定,一般为 10~20ms。 微机控制技术

  8. 3.1.1 键盘设计需解决的几个问题 图3—1 按键抖动信号波形 微机控制技术

  9. 3.1.1 键盘设计需解决的几个问题 可以从硬件及软件两方面排除抖动的影响解决。 (1)硬件防抖技术 ① 滤波防抖电路 ·利用 RC 积分电路对于干扰脉冲的吸收作用。 ·只要选择好时间常数,就能在按键抖动信号 通过此滤波电路时,消除抖动的影响。 滤波防抖电路图,如图3 - 2所示。 微机控制技术

  10. 3.1.1 键盘设计需解决的几个问题 图3—2 滤波防抖电路 微机控制技术

  11. 3.1.1 键盘设计需解决的几个问题 分析: K 未按下,电容两端电压为 0,非门输出为1。 K 刚按下时: C 两端电压不可能产生突变, (尽管在触点接触过程中可能出现抖动) 适当选取 R1、R2、C 值,可保证电容 C 两 端的充电电压波动不超过非门的开启电压 ( TTL 为 0.8 V ),非门的输出将维持高电平。 同理,K 断开时,由于电容 C 经过电阻 R2 放电, C 两端的放电电压波动不会超过门的关闭电 压,因此,门的输出也不会改变。 微机控制技术

  12. 3.1.1 键盘设计需解决的几个问题 总之: 只要 R1、R2 和 C 的时间常数选取得当, 确保电容 C 由稳态电压充电到开启电压, 或放电到关闭电压的延迟时间 等于 或 大于 10ms, 该电路就能消除抖动的影响。 微机控制技术

  13. 3.1.1 键盘设计需解决的几个问题 ② 双稳态防抖电路 用两个与非门构成一个 RS 触发器 即形成双稳态防抖电路。 图3—3 双稳态防抖电路图 微机控制技术

  14. 3.1.1 键盘设计需解决的几个问题 (2)软件防抖方法 ·当第一次检测到有键按下时,先用软件延时 (10ms~20ms),而后再确认该键电平是否仍维持 闭合状态电平。若保持闭合状态电平;则确认此 键确已按下,从而消除了抖动的影响。 (3) 两种方法的比较 ·采用硬件防抖: N个键就必须配有 N个防抖电路。 ·采用硬件防抖: 费机时。 微机控制技术

  15. 3.1.2少量功能键接口技术 设计思路·对于具有少量功能键的系统, 多采用相互独立的接口方法, 即每个按键接一根输入线, 各键的工作状态互不影响。 ·采用硬件中断或 软件查询方法均可实现其键盘 接口。 采用中断方式接口的硬件电路图,如图3.4所示。 微机控制技术

  16. 采用中断方式接口的硬件电路图 图3.4 操作功能键硬件接线图 微机控制技术

  17. 3.1.2少量功能键接口技术 分析: ·按键 SB7~SB0 各具一种功能。 ·全开时,对应的各条列线全部为高电平, 使 74LS30 输出 0,反向后为 1,不产生中断。 ·其中某键被按下, 端变作高电平,申请中断。 · CPU 响应后, 用查询的方法找出被按下的功能键。 再通过软件查找出功能键服务程序的入口地址。 ·查询的过程决定了键功能的优先权。 微机控制技术

  18. 3. 1.3矩阵键盘接口技术 ① 键数量比较多的系统之中常采用矩阵式键盘。 ② 矩阵式键盘 : 由行线和列线组成, 按键设置在行、列结构的交叉点上, 行列线分别连在按键开关的两端。 列线通过上拉电阻接至正电源,以使无键按下时列线处于高 电平状态。 ③ 键盘与微型机的连接方法是采用 I/0 接口芯片/锁存器 ( 8155、8255等)/(74LS273、74LS244,74LS373等) 微机控制技术

  19. 3. 1.3矩阵键盘接口技术 键盘处理程序的关键是如何识别键码 ·微型机对按键识别的办法是“扫描”。 ·两种扫描法: 程控扫描法 中断扫描法。 微机控制技术

  20. 1. 程控扫描法 0 1 1 1 1 0 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 图3—5 采用8255A 接口的4×8 键盘矩阵 微机控制技术

  21. 3. 1.3矩阵键盘接口技术 (1)电路分析 ① 8255A 端口C 行扫描 端口A 读入列值 ② 8255A 控制口、端口A、端口B、端口C的地址: 8003H,8000H,8001H、8002H。 • 4×8 = 32个键。 键编号依次为:0、1、2、3…1E、1F,称其为键值。 ④ 通过键译码程序找出每个键的键值, 根据键值确定其是功能键还是数字键,并分别进行处理。 微机控制技术

  22. 3. 1.3矩阵键盘接口技术 (2)程控扫描方法 ① 判断是否有键按下。 ·通过 PC口 使所有的行输出均为低电平, ·从端口A 读入列值。 如果读人值为 FFH, 无键按下。 如果读人值不为 FFH, 有键按下。 ② 去除键抖动。 ·若有键按下,延时 10~20ms,再一次判断有无键按下, ·如果此时仍有键按下,则认为键盘上确有一个键被按下。 微机控制技术

  23. 3. 1.3矩阵键盘接口技术 ③ 求闭合键的键值。 ·对键盘逐行扫描。 使 PC0=0,读入列值,若等于FFH,说明该行无键按下。 再对下一行进行扫描(即令PC1=0)…… ·直至发现列值不等于FFH,则说明该行有键按下。 求出其键值。 ·求键值。 键值= 8键×行值 +列值 例如,X2 行 Y3列键被按下,求其键值。 微机控制技术

  24. 键值计算过程 (1) 求行值: · X0行,(PC0=0),行值=FFH,无键按下,行值=00H十08H; · Xl行,(PC1=0),行值=FFH,无键按下,行值=08H+08H=10H · X2行,(PC2=0),行值≠FFH),则行值寄存器=10H, (2) 求列值。 将列值读数逐位右移, ·第一次移位,移出位=1,列值=00H十01H=01H; ·第二次移位,移出位=1,列值=00H十01H+1=02H; ·第三次移位, 移出位=1,列值=01H十01H十01H=03H; ·第四次移位,移出位=0,列值=03H,不变。 (3) 将行值与列值相加 键值=行值+列值=10H十03H=13H,故该键值为13H=19D

  25. 3. 1.3矩阵键盘接口技术 ④ 为保证键每闭合一次,CPU只作一次处理, 程序中需等闭合键释放后才对其进行处理。 完成上述任务的程控扫描程序流程图, 如图3-6所示。 微机控制技术

  26. 图3—6 程控扫描法程序流程图 微机控制技术

  27. ORG 0200H • KEYPRO:ACALL DISUP ;调用显示子程序 • ACALL KEXAM ;检查是否有键按下 • JZ KEYPRO ;若无键按下,则转KEYPRO,继续等待并检查 • ACALL D10ms ;若有键按下,延时10ms,以防止抖动 • ACALL KEXAM ;再次检查是否有键按下 • JZ KEYPRO ;若无键按下,则转KEYPRO • KEY1: MOV R2,#0FEH ;输出使X0行为低电平 • MOV R3,#00H ;列值寄存器清零 • MOV R4,#00H ;行值寄存器清零 • KEY2: MOV DPTR,#8200H ;指向8255A C口 • MOV A,R2 ;扫描第一 • MOVX @DPTR,A • MOV DPTR,#8000H ;指向8255A A口 • MOVX A,@DPTR ;读入列值 • CPL A • ANL A,#0FFH • JNZ KEY3 ;有键按下,转求列值

  28. MOV A,R4 ;无键按下,行值寄存器加8H • ADD A,08H • MOV R4,A • MOV A,R2 ;求下一行为低电平模型 • RL A • MOV R2,A • JB ACC.4,KEY2 ;判断各行是否全部扫描完毕,未完,继续 • AJMP KEYPRO ;若全部扫描完毕,等待下一次按键 • KEY3:CPLA ;恢复列值模型 • KEY4:INC R3 ;求列值 • RRC A • JC KEY4 • KEY5:ACALL D10ms • ACALL KEXAM • JNZ KEY5 ;若有键按下,转KEY5,等待键释放

  29. MOV A,R4 ;计算键值 • ADD A,R3 • MOV BUFF,A ;存键值 • AJMP KEYADR ;转查找功能键入口地址子程序 • D10ms:MOV R5,#14H ;延时10ms子程序 • DL: MOV R6,#10FFH • DL0: DJNZ R6,DL0 • DJNZ R5,DL • RET • BUFF EQU 30H • KEXAM:MOV DPTR,#8200H ;指向C口 • MOV A,#00H ;输出使所有行均为低电平 • MOV @DPTR,A • MOV DPTR,#8000H ;指向A口 • MOV A,@DPTR ;读入列值数据 • CPL A • ANL A,0FFH • RET

  30. 求功能键地址转移程序 • 图3.7 求功能键地址转移程序的流程图

  31. ORG 8000H • 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 ;转相应的功能键处理程序 • BUFF EQU 30H

  32. JMPTBL AJMP AAA ;转到16个功能键的相应入口地址 • 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

  33. 3. 1.3矩阵键盘接口技术 2. 定时扫描法 ①CPU 每隔一定的时间(如10ms)对键盘扫描 一遍。 ② 发现有键被按下时,读入键盘操作,以求出键值。③ 分别进行处理。 ④ 定时时间间隔: ·由单片机内部定时/计数器产生。 ·每隔一定长度的程序设置一次键盘查询程序。 微机控制技术

  34. 3. 1.3矩阵键盘接口技术 3.中断扫描法 ① 无键按下时,键盘与 CPU 并行工作。 ② 键盘中任何键按下都会向CPU申请中断。 ③CPU 响应中断后,即转到相应的中断服务程序: ·对键进行扫描,判别键盘上闭合键的键号。 ·作相应的处理。 图3-8所示为中断扫描法硬件接线图。 微机控制技术

  35. 中断扫描方式 图3-8 中断扫描方式 原理图 微机控制技术

  36. 3. 1.3矩阵键盘接口技术 分析: ① 无键键按下时,所有列线均为 1,经 74LS30 输出一低 电平到 中断申请线,没有中断申请。 ② 某一个键按下,使 74LS30 输出为高电平,从而使 发生跳变,向 CPU申请中断。 ③CPU响应后,即转到中断扫描程序,查出键号,且作相 应处理。 ④ 与程控法比较: ·其扫描方法与程控法相同, ·只在有键按下时,才进行扫描, 提高了计算机的工作效率 微机控制技术

  37. 3.1.4 电子薄膜开关的应用 1.薄膜开关的特点 (1)色彩靓丽 (2)文字使人一目了然 (3)形意图案更加方便使用 (4)键体清秀美观 (5)透明视窗画龙点睛

  38. 3.1.4 电子薄膜开关的应用 图3.9 形意图案示例

  39. 3.1.4 电子薄膜开关的应用 2.薄膜开关的设计 (1)开关的选择 ①迷宫式

  40. 3.1.4 电子薄膜开关的应用 ②触点式 这种薄膜式键盘的结构是分成上下两个导通的触点,触点的形式可以是圆形,也可以是矩形,通常依键的形状而定。

  41. 3.1.4 电子薄膜开关的应用 (2)电路设计 ------公共总线法

  42. 3. 1.5 键盘特殊功能处理 1.键盘锁定技术 (1) 为了防止无意按键给系统带来破坏性的影响, 常常在键盘上加锁。 (2)常用的键盘锁定的方法: ① 通过标志状态位进行控制。 ② 将“锁”加在键值锁存器的控制信号上, 通过改变控制信号的状态,来控制键盘的 “锁定” 及“打开”。 微机控制技术

  43. 1.键盘锁定技术 图3—13 键盘 锁定 技术 原理图 (a) 微机控制技术

  44. 1.键盘锁定技术 图3—13 键盘 锁定 技术 原理图 (b) 微机控制技术

  45. 1.键盘锁定技术 (1)状态“锁定”方法 ① 当“锁”处于水平位置时,8031的 P1.0 位被置于 “0”状态。 ② 当“锁”为竖直位置时,P1.0 位为“1”状态。 ③ 需要进行键译码时,首先检查 P1.0 位的状态, 若其为“0”(锁定),则不进行译码(键盘不起作用)。 需要用键盘时,先将“锁”打开 (即竖直位置,P1.0 为1)。 CPU 查到 P1.0 = 1, 则扫描键盘,进而处理。 微机控制技术

  46. 1.键盘锁定技术 (2)控制键值输入法 ① 当“锁”处于锁定(垂直)位置时,与非门右输入为l, 其输出端为1,故列值不能读出,因此键盘被锁定; ② 若将“锁”打开,则与非门输出 0,从而打开 74LS244 的使能控制端 1 = 0。 CPU 可以通过 74LS244 读人键盘列值,进而对键盘的现状进行分析。 微机控制技术

  47. 2.双功能键和多功能键的设计 2.双功能键和多功能键的设计 采用双功能键或多功能键可节省键的数量。 (1)双功能键 用设置上/下档开关实现。 图 3 - 10 所示为双功能键设计原理图。 图中; 上/下档判断信号由 8255 的 PA.7 位采样。 微机控制技术

  48. (1)双功能键 图3—14 双功能键 原理图 微机控制技术

  49. (1)双功能键 在双档键程序设计中有两种处理方法。 ① 一种是根据上、下档的位置(PA.7的状态),赋予同一个键两个不同的键值,以便根据不同的键值转到相应的功能键入口子程序; ② 另一种处理方法是每个功能键只赋予一个键值,但在转到功能键处理程序之前,需根据上/下档键标志进行判断,分别转到相当的处理程序。 图中的发光二极管作为指示灯,用来区别当前键盘是处于上档键状态还是在下档键状态。 微机控制技术

  50. (2)多功能键 (2)多功能键 ① 根据一个键按下的次数,同时配合一个启动键,可 使一个键具有多种功能。 ② 作法: 选择一个 RAM 单元,对按下次数进行计数, 按下启动键后,当前计数值有效, 不同的计数值转入相应的功能程序。 微机控制技术

More Related