《微机原理与接口技术》 第9章人-机交互接口 教案 作者:李芷 2003.5.10
第 9 章 人-机交互接口 教 案 作者:李芷 2003.5.10 《微机原理与接口技术》
第9章人机交互接口 o9.1输入设备接口 o92输出设备接口 9.3磁盘存储器接口
第9章 人-机交互接口 9.1 输入设备接口 9.2 输出设备接口 9.3 磁盘存储器接口
91输入设鲁接口 o9.1.1非编码键盘接口 ◎9.1.2PC机键盘接口 o9.1.3鼠标接口
9.1 输入设备接口 9.1.1 非编码键盘接口 9.1.2 PC机键盘接口 9.1.3 鼠标接口
9.1.1非编码键盘接口 ◆微机键盘有两种类型。 编码键盘:用硬件检测按键,以并行或串行方式给CPU提 供与按键对应的键码。编码键盘接口简单,使用方便,但 价格较高。通用微机系统一般都使用它 非编码键盘:只提供键盘行、列的位置值,靠软件完成按 键识别和键值的确定。非编码键盘是最便宜的微机输入设 备。单片机、工业控制计算机一般都使用它 非编码键盘的键盘通常以i×j的矩阵形式排列按键。非编 码键盘接口对按键的识别和键码的产生,一般通过软、硬 件结合来完成,有行扫描法和线反转法两种方法
9.1.1 非编码键盘接口 ◆ 微机键盘有两种类型。 编码键盘:用硬件检测按键,以并行或串行方式给CPU提 供与按键对应的键码。编码键盘接口简单,使用方便,但 价格较高。通用微机系统一般都使用它。 非编码键盘:只提供键盘行、列的位置值,靠软件完成按 键识别和键值的确定。非编码键盘是最便宜的微机输入设 备。单片机、工业控制计算机一般都使用它。 ◆ 非编码键盘的键盘通常以i×j的矩阵形式排列按键。非编 码键盘接口对按键的识别和键码的产生,一般通过软、硬 件结合来完成,有行扫描法和线反转法两种方法
非编码键盘的行扫描法和线凤转法 ◆行扫描法 行扫描法首先通过程序向键盘的所有行逐行输出低电平(逐行扫描), 若无按键闭合,则所有列的输出均为高电平;若有一个按键闭合,就会 将所在的列钳位在低电平,再通过程序读入列的状态,判断是哪一个按 键闭合了。然后根据按键所在的行、列位置找到该键的编码。行扫描法 的行线为输出端口、列线为输入端口 ◆线反转法 线反转法的第一步,通过程序先向所有的行输出低电平,然后读入所有 列的状态,若读入的列状态全部为高电平,说明没有键按下;若读入的 列中有一个为低电平,其余为高电平,说明为低电平的那一列有按键按 下。第二步,行、列颠倒,即先向所有的列输出低电平,然后读入所有 行的状态。同理,可以判断出是哪一行有按键按下。通过两次扫描就可 以知道是哪行、哪列的按键闭合了,由此可以得到该键的编码。 线反转法的行线、列线均为双向端口
非编码键盘的行扫描法和线反转法 ◆行扫描法 行扫描法首先通过程序向键盘的所有行逐行输出低电平(逐行扫描), 若无按键闭合,则所有列的输出均为高电平;若有一个按键闭合,就会 将所在的列钳位在低电平,再通过程序读入列的状态,判断是哪一个按 键闭合了。然后根据按键所在的行、列位置找到该键的编码。行扫描法 的行线为输出端口、列线为输入端口。 ◆线反转法 线反转法的第一步,通过程序先向所有的行输出低电平,然后读入所有 列的状态,若读入的列状态全部为高电平,说明没有键按下;若读入的 列中有一个为低电平,其余为高电平,说明为低电平的那一列有按键按 下。第二步,行、列颠倒,即先向所有的列输出低电平,然后读入所有 行的状态。同理,可以判断出是哪一行有按键按下。通过两次扫描就可 以知道是哪行、哪列的按键闭合了,由此可以得到该键的编码。 线反转法的行线、列线均为双向端口
非编码键盘接口电路例 mh h t +5V 0列1列 2列 3列 PA 0行 PA 1行 PA2 2行 PA 3行 PA 4行 8255 PB PB PB (90H-93H PB
非编码键盘接口电路例 PA0 PA1 PA2 PA3 PA4 8255 PB0 PB1 PB2 PB3 D7~D0 CS (90H~93H) 0行 1行 2行 3行 4行 0列 1列 2列 3列 +5V
9.1.2PC机键盘接口 BMPC系列微机的键盘介于编码键盘和非编码键盘两者之间 PC机键盘接口使用一片 Intel8048(或8049)单片机,自动识别按键 的闭合与释放,生成相应的行、列位置扫描码,串行传送给主机 (1)有20个键扫描码的缓冲和出错的自动重发能力(具有编码键盘的 绝大部分特征)。 (2)尽管PC机键盘功能很强,但向主机提供的毕竟只是按键的行、列 位置码,而反映键定义的键码是由8088CPU用软件完成的(具备非 编码键盘的特征) ◆PC机键盘工作过程: 当在键盘上按下一个键时,键盘向键盘接口电路发串行扫描码 键盘接口把串行扫描码转换成并行的系统扫描码,存入接口的输出缓 冲器;然后通过8259的R1,向主机发中断请求; 主机调用IR1中断NT09H中断处理程序,读取键盘接口传送的系统扫 描码,并转换成字符的ASCⅡ码,或者是命令键组合功能键的扩 展码,存入BIOS的键盘缓冲区
9.1.2 PC机键盘接口 ◆ IBM PC系列微机的键盘介于编码键盘和非编码键盘两者之间。 ◆ PC机键盘接口使用一片Intel 8048(或8049)单片机,自动识别按键 的闭合与释放,生成相应的行、列位置扫描码,串行传送给主机。 ⑴ 有20个键扫描码的缓冲和出错的自动重发能力(具有编码键盘的 绝大部分特征)。 ⑵ 尽管PC机键盘功能很强,但向主机提供的毕竟只是按键的行、列 位置码,而反映键定义的键码是由8088 CPU用软件完成的(具备非 编码键盘的特征)。 ◆ PC机键盘工作过程: 当在键盘上按下一个键时,键盘向键盘接口电路发串行扫描码; 键盘接口把串行扫描码转换成并行的系统扫描码,存入接口的输出缓 冲器;然后通过8259的IR1,向主机发中断请求; 主机调用IR1中断INT 09H中断处理程序,读取键盘接口传送的系统扫 描码,并转换成字符的ASCII码,或者是命令键/组合功能键的扩 展码,存入BIOS的键盘缓冲区
PC机键盘接口电路 Vdd D7~D0 RD IOR 五 键 PROG WR EA CS CS 插 Vss 控 Ac A 2 座 制 2「键盘数据 TEST 器 P14 RAMSEL 15 跨接器开关 显示器类型开关 键盘时钟 TEST(8042) l6 键盘锁定开关 PCLKI XTAL PCLK2 XTAI PPPPPP 20 系统复位 A20选通 RS RESET 输出缓冲器满
PC机键盘接口电路 PCLK1 PCLK2 RST 5 4 3 2 1 五 芯 插 座 +5V 键盘数据 键盘时钟 Vcc Vdd D7~D0 SS PROG EA Vss TEST1 P27 TEST0 (8042) P26 XTAL1 XTAL2 RESET 键 盘 控 制 器 RD WR CS A0 P14 P15 P16 P17 P20 P21 P24 IOR IOW CS A2 RAM/SEL 跨接器开关 显示器类型开关 键盘锁定开关 系统复位 A20选通 输出缓冲器满
9.13跟标接口 ◆鼠标器是以计算机屏幕信息作为对象进行选取操作和执行命令的,使 用频率最高的一种输入部件 ◆鼠标器从工作原理上分,有机械式、光电式两种。机械式鼠标基座安 装有一个圆球,当鼠标器在平面移动时,圆球在转动过程中带动X Y方向的计数盘转动,从而向计算机发出X,Y方向的位移坐标:光电 式鼠标基座安装有两对发光和光电接收晶体管,鼠标必须在一个特 殊的网格垫上移动,光电接收管计数鼠标移动的网格数,从而获得X, Y方向的位移信息,送给计算机。鼠标器还可以从接口上分,有MS 串行鼠标器、PS/2鼠标器、总线式鼠标器 ◆MS鼠标器没有专门的电源,直接使用RS-232C信号线提供的电平 作电源;通信使用TXD,RxD,RTS,DTR等信号线。对于MS鼠标 器的异步串行通信参数为:1200波特率、7位数据位、无奇偶校验 位、1位停止位。MS鼠标器用3个字节描述Ⅹ,Y的位移等信息, 其中,3个字节的D位任意,D位为标志位,LB为1表示鼠标 左键按下,RB为0表示鼠标右键按下
9.1.3 鼠标接口 ◆鼠标器是以计算机屏幕信息作为对象进行选取操作和执行命令的,使 用频率最高的一种输入部件。 ◆鼠标器从工作原理上分,有机械式、光电式两种。机械式鼠标基座安 装有一个圆球,当鼠标器在平面移动时,圆球在转动过程中带动X, Y方向的计数盘转动,从而向计算机发出X,Y方向的位移坐标:光电 式鼠标基座安装有两对发光和光电接收晶体管,鼠标必须在一个特 殊的网格垫上移动,光电接收管计数鼠标移动的网格数,从而获得X, Y方向的位移信息,送给计算机。鼠标器还可以从接口上分,有MS 串行鼠标器、PS/2鼠标器、总线式鼠标器。 ◆ MS鼠标器没有专门的电源,直接使用RS-232C信号线提供的电平 作电源;通信使用TxD,RxD,RTS,DTR等信号线。对于MS鼠标 器的异步串行通信参数为:1200波特率、7位数据位、无奇偶校验 位、1位停止位。MS鼠标器用3个字节描述X,Y的位移等信息, 其中,3个字节的D7位任意,D6位为标志位,LB为1表示鼠标 左键按下,RB为0表示鼠标右键按下
9.2输出设音接口 ◎921LED数字显示器接口 922CRT显示器和显示适配器 o923针式打印机接口
9.2 输出设备接口 9.2.1 LED数字显示器接口 9.2.2 CRT显示器和显示适配器 9.2.3 针式打印机接口