1 / 32

第八章 人机交互设备接口

第八章 人机交互设备接口. 8.1 键盘接口 8.2 显示器及接口电路. 8.1 键盘接口. 1 、键盘分类: ( 1 )按组成键盘的按键的方式分:有机械式、电容式、导电橡胶式、薄膜式等多种 。 ( 2 )键盘按其功能的不同,通常可分成编码键盘和非编码键盘两种基本类型。. 2 .编码键盘 键盘本身带有实现接口主要功能所必需的硬件电 路。不仅能自动检测被按下的键,并完成去抖动、 防串键等功能,而且能提供与被按键功能对应的键 码 ( 如 ASCII 码 ) 送往 CPU 。 3 、 非编码键盘 键盘只简单地提供按键开关的行列矩阵。有关按键

elie
Download Presentation

第八章 人机交互设备接口

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. 第八章 人机交互设备接口 8.1键盘接口 8.2显示器及接口电路

  2. 8.1 键盘接口 • 1、键盘分类: • (1)按组成键盘的按键的方式分:有机械式、电容式、导电橡胶式、薄膜式等多种 。 • (2)键盘按其功能的不同,通常可分成编码键盘和非编码键盘两种基本类型。

  3. 2.编码键盘 键盘本身带有实现接口主要功能所必需的硬件电 路。不仅能自动检测被按下的键,并完成去抖动、 防串键等功能,而且能提供与被按键功能对应的键 码(如ASCII码)送往CPU。 3、非编码键盘 键盘只简单地提供按键开关的行列矩阵。有关按键 的识别、键码的确定与输入、去抖动等功能均由软 件完成。

  4. 一、按键的结构与特点 在微机中运用的按键,通常仅需提供逻辑的通与断, 其机械结构往往是比较简单的,构成形式可如下图所 示。 +5V VX

  5. 二、键盘接口的功能和原理 下面以机械式触点按键组成的非编码键盘为例,对键盘接口功能和原理进行介绍。 1、接口功能 键盘接口必须具有去抖动、防串键、按键识别和键码产生4个基本功能。

  6. (1).抖动:机械式按键在压键时在触点可靠地接通前(1).抖动:机械式按键在压键时在触点可靠地接通前 多次通断

  7. 防抖动:有硬件、有软件 软件防抖动通过软件延时(10ms) 硬件防抖动使用RS触发器 U0 无抖动

  8. (2).串键:多键同时按下或一键没按下又有新键按下(2).串键:多键同时按下或一键没按下又有新键按下 解决方法: 双键锁定 、N键巡回 ①双键锁定:当检测到有两个或两个以上的键被按下时,只把最后释放的键当作有效键,并产生相应键码。 ②N键轮回:当检测到有多个键被按下时,能根据发现它们的顺序依次产生相应键的键码。

  9. (3).按键识别:行扫描法、线反转法 ①行扫描法:该方法的基本思想是,由程序对键盘 进行逐行扫描,通过检测到的列输出状态来确定闭 合键。为此,需要设置输入口、输出口各一个。 ②线反转法:该方法的基本思想是通过行列颠倒两 次扫描来识别闭合键。为此,需要提供两个可编程 的双向输入/输出端口。 (4).键码产生

  10. 例如,假定有一个4×4的矩阵键盘通过并行接口芯例如,假定有一个4×4的矩阵键盘通过并行接口芯 片8255A与微机相连。8255A的A口定义为输出口,与 键盘行线相连;B口定义为输入口,与键盘列线相 连。 设8255A口地址为40H,B口地址为41H,控制寄存器 地址为43H。

  11. +5V 键盘接口 8255 E D C F PA3PA2PA1PA0 8 9 A B 4 5 6 7 1 2 3 0 CPU PB0PB1PB2PB3 行扫描法 键值=首列键号+列号

  12. 键盘扫描一般步骤: • 判断是否有键按下(行全部清0,读列值是否有0) • 若有键按下,消除抖动,确认有键按下? • 对压下键进行编码(扫描、查表) • 进行键处理 • 键释放,返回第二步

  13. MOV AL,82H ROL AL OUT 43H,AL MOV AH,AL BEGIN:MOV AL,0 IN AL,41H OUT 40,AL AND AL,CL WAIT: IN AL,41H CMP AL,CL AND AL,0FH JNZ L2 CMP AL,0FH ADD CH,BH JZ WAIT MOV AL,AH MOV CX,7FFH DEC BL LO: LOOP LO JNZ L1 ST: MOV BL,04H JMP BEGIN MOV BH,04H L2: INC CH MOV AL,0FEH RCR AL MOV CL,0FH JC L2 MOV CH,0FFH MOV AL,CH L1: OUT 40H,AL JMP LEYTABLE

  14. +5V 8255 E D C F PA3 PA2 PA1 PA0 8 9 A B 4 5 6 7 1 2 3 0 PB4 PB5 PB6 PB7 PB0 PB1 PB2 PB3 线反转法 键0的编码=11101110 键1的编码=11101101

  15. 三、PC微机键盘及接口 1、PC微机键盘特点 PC微机常用的键盘有101键的增强型键盘和102键的 扩展键盘。不论键数的多少均具有如下特点: ①键盘由单片机、译码器和16行X 8列的键开关矩阵 三大部分组成。 ②按键采用电容开关,即按键时的上下动作使电容 量发生变化,从而实现开关接通或断开的目的。

  16. ③它是一种由单片机扫描、编码的智能化键盘。但③它是一种由单片机扫描、编码的智能化键盘。但 是,它不能直接提供与键功能对应的键值或键码, 必须由主机在键处理程序中将键盘提供的扫描码 转换为反映键功能的ASCII码。 ④它是一个与主机箱分开的独立部件,通过一根五 芯电缆与主机相连接。

  17. 2.PC微机键盘的功能 ①串行接受键盘送来的扫描码,完成串并转换后保存 ②收妥一个键盘扫描码后,立即产生一个中断请求信号 ③保存的扫描码可供CPU读取,并通过软件进行相应转换处理 ④接受CPU的命令,输出到键盘,并接受键盘回送的响应信号

  18. +5V SE DS S/P D0 DI OE CLR CLK G OA OB PA7PA6 PB7 PB6 PA0 OH +5V 1 OH CLK DATA RESET GND +5V D CLR R Q D CLK CLR PR IRQ1 Q D CLR R Q PCLK RESET Q 微机键盘接口电路

  19. LS 322 串并转换电路 DI 串行输入,和接口中DATA连接 OA~OH 并行输出,和8255的PA0~PA7连接,供CPU读取 OH是中断源,通过中断请求触发器连8259的IRQ1,作为向CPU提出申请的中断源 PB7 允许读取扫描码(为0),清除中断请求信号(高到低跳变) PB6 为1该接口电路能工作 接口中的CLK经过两级同步和LS322的CLK相连。

  20. 工作原理: • 当PB7和IRQ1为0时,LS322接受串行数据(DATA),实现串并转换。 • 收到8位扫描码,LS322的OH为1,使得IRQ1有效,向CPU提出中断申请,同时中断请求触发器的Q端输出0,使DI 为0,通知接口暂时不送扫描码。 • CPU接受到中断请求信号,通过8255的A口读取数据,并使PB7产生1到0跳变,清除LS322和中断请求触发器。

  21. 8255初始化 MOV AL,99H;模式0,A口、C口输入 OUT 63H,AL ;B口输出 MOV AL,80H ;PB7=1 OUT 61H,AL MOV AL,40H ;PB7=0,PB6=1 OUT 61H,AL

  22. IRQ1中断服务程序 IN AL,60H PUSH AX IN AL,61H MOV AH,AL OR AL,80H OUT 61H,AL XCHG AH,AL OUT 61H,AL POP AX MOV AH,AL ;AH为键扫描码

  23. PC微机键盘 硬中断 中断号为09H 软中断 中断号为16H(p308 表11.3)

  24. 8.2 显示器及接口电路 常用的显示器有LED显示器、液晶显示器、CRT显 示器 LED显示器有7段、米字型

  25. 各个LED可按共阳极或共阴极连接,如图下所示。它们应分别用不同的段码,经不同的驱动电路来驱动。各个LED可按共阳极或共阴极连接,如图下所示。它们应分别用不同的段码,经不同的驱动电路来驱动。 对于共阳极显示器,其段驱动电路的输出为低电平时,该段的LED导通并点亮,段驱动电路应能吸收额定的段导通电流。 在共阴极显示器的情况下,其段驱动电路的输出为高电平时,该段的LED导通并点亮,段驱动电路应能供给额定的段导通电流。

  26. +5v 译码/驱动器74LS247 译码/驱动器74LS249 abcdefg abcdefg 段码输入 段码输入 ABCD ABCD 共阴显示 共阳显示

  27. 七段LED显示接口 • 动态:各个显示器对应的段码接同一I/O口,灯位控制端由不同I/O口控制。 • 静态:各个显示器的段码由不同的I/O控制,灯位控制端接成固定电平。

  28. 静态接口 +5V +5v 译码/驱动器74LS247 译码/驱动器74LS249 abcdefg abcdefg 段码输入 段码输入 ABCD ABCD 共阴静态显示 共阳静态显示

  29. 动态接口 abcdefg ABCD 段码输出 七段显示器 I/O口 8 2 灯位控制

  30. 段码的转换: • 软件译码 • 专用接口芯片

  31. 软件译码 把0~9的十进制数转换成七段码 TABLE DB 40H,79H,24H,30H,19H DB 12H,02H,78H,00H,18H MOV AL,5 MOV BX,OFSET TABLE XLAT TABLE

  32. 显示原理 静态显示:把要显示的数的段码送相应的 I/O口,不需要动态扫描 动态显示:选择第一个要显示的LED灯 位,送出该灯位对应的段码,延时1MS, 选择第二个要显示的LED灯位,送出该灯 位对应的段码,延时1MS,依次类推。动 态显示需要不断扫描。

More Related