接口技术人机接口.ppt
《接口技术人机接口.ppt》由会员分享,可在线阅读,更多相关《接口技术人机接口.ppt(61页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、接口技术人机接口现在学习的是第1页,共61页一、键盘接口的功能和原理一、键盘接口的功能和原理1.1.接口功能接口功能 键盘接口键盘接口必须具有去抖动、防串键、按键识别和键码产生必须具有去抖动、防串键、按键识别和键码产生4 4个基本功能。个基本功能。(1 1)去抖动)去抖动 每个按键在按下或松开时,都会产生短时间的抖动。抖动的持每个按键在按下或松开时,都会产生短时间的抖动。抖动的持续时间与键的质量相关,一般为续时间与键的质量相关,一般为520ms。所谓去抖动所谓去抖动是指在识别被按键和释放键时必须避开抖动状是指在识别被按键和释放键时必须避开抖动状态,只有处在稳定接通或稳定断开状态才能保证识别正确
2、无误。态,只有处在稳定接通或稳定断开状态才能保证识别正确无误。去抖动问题可通过软件延时或硬件滤波电路(去抖动问题可通过软件延时或硬件滤波电路(RCRC滤波或滤波或RSRS去抖)解去抖)解决。决。现在学习的是第2页,共61页(2 2)防串键)防串键 防串键防串键是为了解决多个键同时按下或者前一按键没有释放是为了解决多个键同时按下或者前一按键没有释放又有新下时产生的问题。又有新下时产生的问题。双键锁定:双键锁定:当检测到有两个或两个以上的键被按下时,当检测到有两个或两个以上的键被按下时,只把最后释放的键当作有效键,并产生相应键码。只把最后释放的键当作有效键,并产生相应键码。N N键轮回:键轮回:当
3、检测到有多个键被按下时,能根据发现它当检测到有多个键被按下时,能根据发现它们的顺序依次产生相应键的键码。们的顺序依次产生相应键的键码。(3 3)被按键识别)被按键识别 行扫描法:行扫描法:该方法的基本思想是,由程序对键盘进行逐该方法的基本思想是,由程序对键盘进行逐行扫描,通过检测到的列输出的列输出状态来确定闭合键。行扫描,通过检测到的列输出的列输出状态来确定闭合键。线反转法:线反转法:该方法的基本思想是通过行列颠倒两次扫描该方法的基本思想是通过行列颠倒两次扫描来识别闭合键。多用来识别闭合键。多用Z-80PIOZ-80PIO芯片实现芯片实现现在学习的是第3页,共61页(4 4)键码产生)键码产生
4、 一般在内存区中键立一个键盘编码表,通过查表获得被按键的键码一般在内存区中键立一个键盘编码表,通过查表获得被按键的键码。2.2.接口原理接口原理 检查是否有键按下,其方法是:输出扫描码,使所有行线为检查是否有键按下,其方法是:输出扫描码,使所有行线为0 0。然后读入列线状态,检查是否有列线为。然后读入列线状态,检查是否有列线为0 0。若有,则表明有行线。若有,则表明有行线和列线接通,意味着有键按下。和列线接通,意味着有键按下。去抖动:当有键按下时,延时去抖动:当有键按下时,延时20ms20ms左右,待抖动消失后,在稳定状态左右,待抖动消失后,在稳定状态下进行被按键识别。下进行被按键识别。被按键
5、识别:从第被按键识别:从第0 0行第行第0 0列开始,顺序对所有按键编号。通过逐列开始,顺序对所有按键编号。通过逐行扫描确定被按键的编号。行扫描确定被按键的编号。产生键码:根据扫描得到的键编号查找键盘编码表,获得与被按产生键码:根据扫描得到的键编号查找键盘编码表,获得与被按键功能对应的键码。键功能对应的键码。现在学习的是第4页,共61页 例如,例如,假定有一个假定有一个3434的矩阵键盘通过并行接口芯片的矩阵键盘通过并行接口芯片8255A8255A与与微机相连。微机相连。8255A8255A的的A A定义为输出口,与键盘行线相连;定义为输出口,与键盘行线相连;B B口定口定义为输入口,与键盘列
6、线相连。接口硬件如图义为输入口,与键盘列线相连。接口硬件如图10.110.1所示。所示。PA0PA1PA2PB3PB2PB1PB08255ACPU行0行1行2列0列3列1 列2图10.1 非编码键盘接口现在学习的是第5页,共61页 设设8255AA8255AA口地址为口地址为60H60H,B B口地址为口地址为61H61H,控制寄存器地,控制寄存器地址为址为63H63H,则实现接口有关功能的程序如下:,则实现接口有关功能的程序如下:;8255A初始化初始化 MOV AL,82H ;方式;方式0,A口输出,口输出,B口输入口输入 OUT 63H,AL ;检查是否有键按下;检查是否有键按下BEGI
7、N:MOV AL,0 ;低电平有效;低电平有效 OUT 60H,ALWAIT:IN AL,61H AND AL,0FH CMP AL,0FH ;低电平有效;低电平有效 JZ WAIT 现在学习的是第6页,共61页 MOV CX,7FFH ;延时去抖动;延时去抖动L0:LOOP L0 ;识别被按下的键识别被按下的键ST:MOV BL,03H ;行数送行数送BL MOV BH,04H ;列数送列数送BH MOV AL,0FEH ;扫描码,扫描码,0行为行为0 MOV CL,0FH ;列线屏蔽码送列线屏蔽码送CL MOV CH,0FFH ;置键号初值为置键号初值为-1L1:OUT 60H,AL ;扫
8、描一行扫描一行 ROL AL DEC BL MOV AH,AL ;修改扫描码并送修改扫描码并送AH保存保存 IN AL,61H 现在学习的是第7页,共61页 AND AL,CL CMP AL,CL ;读入列线值,检查是否有列填线为读入列线值,检查是否有列填线为0 JNZ L2 ;有列线为有列线为0时转去找该列线时转去找该列线 ADD CH,BH ;否则,指向该行末列键号否则,指向该行末列键号 MOV AL,AH ;取回扫描码取回扫描码 DEC BL JNZ L1 ;行数减行数减1,未完成转下一行,未完成转下一行 JMP BEGIN L2:INC CH ;该列非该列非0,检查下一列,检查下一列
9、RCR AL JC L2 ;该列非该列非0,检查下一列,检查下一列 MOV AL,CH ;该列为该列为0,键号送,键号送AL现在学习的是第8页,共61页 JMP KEYTABLE ;转查找键盘编码表子程序,;转查找键盘编码表子程序,获取与键功能对应的键码获取与键功能对应的键码二、可编程键盘二、可编程键盘/LED/LED接口芯片接口芯片827982791.1.内部结构及各部分功能内部结构及各部分功能 82798279芯片的内部结构框图如图芯片的内部结构框图如图10.210.2所示。图中各组成部所示。图中各组成部分功能如下:分功能如下:(1 1)I/OI/O控制及数据缓冲器控制及数据缓冲器(2 2
10、)控制与定时寄存器及定时控制)控制与定时寄存器及定时控制(3 3)扫描计数器)扫描计数器(4 4)键盘去抖与控制及返回缓冲器)键盘去抖与控制及返回缓冲器(5 5)FIFO RAM及状态寄存器及状态寄存器(6 6)显示)显示RAMRAM、显示寄存器、显示地址寄存器、显示寄存器、显示地址寄存器现在学习的是第9页,共61页数据缓冲器I/O控制FIFO RAM的状态寄存器显示地址寄存器168显示RAM片选总线控制与定时寄存器88FIFORAM键盘去抖与控制显示寄存器定时控制扫描计数器返回缓冲器时钟CLK复位ResetOUTA03OUTB03BDSL03RL03SHIFTCNTL/STBD07RDWRC
11、SA0IRQ图10.2 8279芯片的内部结构框图现在学习的是第10页,共61页2.外部特性外部特性 电信号连接示意图可知电信号连接示意图可知,4040条引线中与条引线中与CPUCPU一侧相关的共一侧相关的共15条,与键盘、显示接口相关的条,与键盘、显示接口相关的共共2323条,电源、地各一条。条,电源、地各一条。8279RL0RL7SHIFTCNTL/STBSL0SL3OUTA03OUTB03BDD0D7IRQRDWRCSA0CLKRESET+5VGND CPU键盘显示器现在学习的是第11页,共61页D0D7:双向数据线,用于CPU和8279芯片之间传送数据、命令和状态信息。CLK:系统时钟
12、,为8279芯片提供内部定时。RESET:复位线,高电平时复位8279芯片到:16个字符显示(左进方式);编码扫描键盘(双键锁定);时钟设置为31.CS-:片选线,由I/O端口地址译码器产生低电平时8279芯片被选中。RD-:读信号,低电平有效。WR-:写信号,低电平有效。A0:地址线,为0时选中数据口;1时选中命令/状态口。IRQ:中断请求线,高电平有效,向CPU申请中断。现在学习的是第12页,共61页SLSL0 0SLSL3 3:扫描线,用来扫描键盘或显示器,可编程设定为编码输出或扫描线,用来扫描键盘或显示器,可编程设定为编码输出或译码输出。译码输出。编码扫描:编码扫描:SLSL3 3-S
13、L-SL0 0输出扫描计数,经外部译码器的译码后最多输出扫描计数,经外部译码器的译码后最多可为键盘和显示器提供可为键盘和显示器提供1616个扫描信号。个扫描信号。译码扫描:译码扫描:SLSL3 3-SL-SL0 0输出可直接作为键盘和显示器的扫描信号,此时输出可直接作为键盘和显示器的扫描信号,此时键盘矩阵为键盘矩阵为4 4*8 8,显示字符为,显示字符为4 4位。位。RLRL0 0RLRL7 7:返回线,用作键盘矩阵列线的返回信号输入。返回线,用作键盘矩阵列线的返回信号输入。SHIFTSHIFT:移位信号,是键盘数据的移位信号,是键盘数据的D D6 6位,用于扩充键的功能,如作为上、位,用于扩
14、充键的功能,如作为上、下档功能键。下档功能键。CNTLCNTL:控制线。是键盘数据的控制线。是键盘数据的D D7 7位,用于扩充键的控制功能位,用于扩充键的控制功能-控制功能控制功能键。键。OUTAOUTA0 0OUTAOUTA3 3,OUTBOUTB0 0OUTBOUTB3 3:A/BA/B组显示信号输出线,与扫描线组显示信号输出线,与扫描线SLSL0 03 3同步,实现分时数据显示,即刷新各显示字符。同步,实现分时数据显示,即刷新各显示字符。BD-BD-:显示消隐线,显示数据切换时或收到消隐命令时,将显示消隐。显示消隐线,显示数据切换时或收到消隐命令时,将显示消隐。现在学习的是第13页,共
15、61页3.3.命令字命令字 当引脚当引脚A A0 0=1=1时,时,CPUCPU向向82798279芯片写入命令字。芯片写入命令字。82798279芯片可芯片可执行的命令共有执行的命令共有8 8条,它们决定了条,它们决定了82798279芯片的操作方式。芯片的操作方式。命令字格式如下:命令字格式如下:特 征 位命 令 参 数D7 D6D5D4D3D2D1D0(1 1)设置键盘及显示方式)设置键盘及显示方式 设置键盘及显示方式命令字格式为:设置键盘及显示方式命令字格式为:0 0 00 0 0 D D2 2 D D1 1 K K2 2 K K1 1 K K0 0D D4 4D D3 3(D D2
16、2D D1 1):用来设定显示输出方式,定义如表):用来设定显示输出方式,定义如表10.110.1所示。所示。D D4 4D D3 3(K K2 2K K1 1):设定键盘输入方式,定义如表):设定键盘输入方式,定义如表10.210.2所示。所示。D D0 0(K K0 0):键盘扫描方式。):键盘扫描方式。K K0 0=0=0为编码扫描;为编码扫描;K K0 0=1=1为译码扫描。为译码扫描。现在学习的是第14页,共61页D2 D1 方 式 0 0 0 1 1 0 1 1 8个字符显示,左进方式16个字符显示,左进方式8个字符显示,右进方式16个字符显示,右进方式 K2 K1 方 式 0 0
17、 0 1 1 0 1 1 扫描键盘输入,双键锁定扫描键盘输入,N键轮回扫描传感器输入选通输入表10.1 显示输出方式表10.2 键盘输入方式D2D2:0-0-左进方式左进方式 1-1-右进方式右进方式D1D1:0-80-8个字符个字符 1-161-16个字符个字符左进:左进:显示位置从最左一位即最高位开始,逐个向右顺序输出显示位置从最左一位即最高位开始,逐个向右顺序输出右进:右进:显示位置从最右一位即最低位(个位)开始,高位从右边进入,逐次显示位置从最右一位即最低位(个位)开始,高位从右边进入,逐次左移。左移。=计算器显示方式计算器显示方式N N键轮回:键轮回:根据发现顺序依次将相应键盘数据送
18、入根据发现顺序依次将相应键盘数据送入FIFO RAMFIFO RAM现在学习的是第15页,共61页 D D4 4D D0 0(PPPPPPPPPP):用来设定对外输入用来设定对外输入CLKCLK的分频系数的分频系数N N(N N值可为值可为2 23131),以便获得),以便获得82798279芯片内部要求的芯片内部要求的100kHz100kHz的基本频率的基本频率D7D6D5D4D3D2D1D0001AIA1A2A0D D4 4(AIAI):自动地址增量标志位。当):自动地址增量标志位。当AI=1AI=1时,每次读出后地址时,每次读出后地址 自动加自动加1 1指向下一存储单元指向下一存储单元A
19、I=0AI=0时,读出后地址不变。时,读出后地址不变。D D2 2D D1 1D D0 0(A A2 2A A1 1A A0 0):在键盘方式中无意义,都写):在键盘方式中无意义,都写0.0.(2 2)设置时钟频率)设置时钟频率D7D6D5D4D3D2D1D0010PPPPP(3 3)读)读FIFO RAMFIFO RAMD7D6D5D4D3D2D1D0CNTLSL2ShiftSL1SL0RL1RL2RL0键盘数据格式:键盘数据格式:现在学习的是第16页,共61页(4 4)读显示)读显示RAMRAMD7D6D5D4D3D2D1D0011AIA3A1A2A0 D D4 4(AIAI):自动地址增
20、量标志。):自动地址增量标志。AI=1AI=1时读后地址自动增时读后地址自动增1 1;AI=0AI=0时,读后地址不变。时,读后地址不变。(5 5)写显示)写显示RAMRAM 100 AI A 100 AI A3A A0(6 6)禁写显示)禁写显示RAM/RAM/消隐消隐 101 101 IW IWA IW IWB BL BLA BL BLB IW=1 IW=1时,显示时,显示RAMRAM禁止写入该组,禁止写入该组,CPUCPU写数据不影响该组显示写数据不影响该组显示 BL=1BL=1时,该组显示被消隐,时,该组显示被消隐,=0=0时显示恢复时显示恢复(7 7)清除)清除 110 CD110
21、CD2 CD CD1 CD CD0 C CF C CA C CF:清空清空FIFO RAMFIFO RAM,使,使IRQIRQ复位复位 C CA总清位,显示总清位,显示RAMRAM清除方式清除方式CDCD1-0CD2 CD1 CD0 方 式1 0 1 0 11 1 0 全部清除(为00)置成20H(为)置成全1(为FF)不清除,CA=1,则CD1-0仍有效表10.3 显示RAM清除方式现在学习的是第17页,共61页(8)结束中断)结束中断/设置错误方式设置错误方式 111 E N N键轮回方式下,当键轮回方式下,当E=1E=1时,设置一种特殊错误方式:在时,设置一种特殊错误方式:在827982
22、79消抖周期内发现多消抖周期内发现多件同时按下时,将状态字中件同时按下时,将状态字中S/ES/E位置位置1 1,并产生中断请求信号和阻止写入,并产生中断请求信号和阻止写入FIFO FIFO RAMRAM4.4.状态字状态字主要用来指示主要用来指示FIFO RAMFIFO RAM中的字符数和有无错误发生。其格式为:中的字符数和有无错误发生。其格式为:Du:Du:显示无效,当执行显示无效,当执行RAMRAM清除时置位清除时置位S/ES/E:多键同时按下:多键同时按下O O:FIFOFIFO满时,再写入即置位满时,再写入即置位U U:FIFOFIFO空,即字符个数空,即字符个数=0=0F F:FIF
23、OFIFO满,即字符个数满,即字符个数=8=8NNNNNN:FIFOFIFO有几个字符待取走有几个字符待取走 0-70-7D7D6D5D4D3D2D1D0Du0S/EUFNNN5.82795.8279芯片应用举例芯片应用举例 TP86ATP86A单板微型计算机使用单板微型计算机使用82798279芯片作为键盘及芯片作为键盘及LEDLED显示显示器接口,电路原理图如图器接口,电路原理图如图10.410.4所示。所示。现在学习的是第18页,共61页8279RL0SHIFTCNTLOUTA03OUTB03D0D7RDWRCSA0CLKRESETTP86SL0SL1SL2SL3RL0键盘矩阵A74LS
24、45BCD74LS45段驱动器(反相)A B CY0Y1Y20007+5V译码器74LS156图10.4 TP86单板机键盘/显示器接口电路译码器现在学习的是第19页,共61页 键盘输入程序段,执行下面程序段后可在内存键盘输入程序段,执行下面程序段后可在内存400H400H单元中找到被按单元中找到被按下键的代码。下键的代码。MOV DX,0FFEAH MOV AL,00H ;设定键盘输入,编码扫描方式;设定键盘输入,编码扫描方式 OUT DX,AL MOV AL,39H ;扫描频率扫描频率 OUT DX,AL MOV AL,0D3H ;OUT DX,AL ;显示;显示RAM清清0LOOP1:M
25、OV DX,0FFEAH IN AL,DX 现在学习的是第20页,共61页 TEST AL,10H ;检查是否有键入代码 JNZ LOOP1 ;无再查 MOV AL,40H ;有键入代码,指定读FIFO OUT DX,AL MOV DX,0FFE8H IN AL,DX ;读出数据 MOV DI,400H ;DI指向存放按键代码的 内存单元 MOV DI,AL ;存入内存400H单元 HLT ;暂停显示输出程序段,执行下面程序段后从0位开始显示19991208八个字符,假定八个字符的字形码存于内存300H开始的8个单元中。现在学习的是第21页,共61页 MOV SI,300H ;设置显示字符内存
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 接口 技术 人机
限制150内