接口技术人机接口课件.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 ;检查是否有键按下;检查是否有键按下BEGIN:MOV AL,0
7、 ;低电平有效;低电平有效 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 ;扫描一行扫描一行 ROL
8、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,检查下一列,检查下一列 RCR AL JC L2 ;
9、该列非该列非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/STBD07RDWRCSA0IRQ图10.2 8279芯片
11、的内部结构框图第10页,此课件共61页哦2.外部特性外部特性 电信号连接示意图可知电信号连接示意图可知,4040条引线中与条引线中与CPUCPU一侧相关的共一侧相关的共15条,与键盘、显示接口相关的条,与键盘、显示接口相关的共共2323条,电源、地各一条。条,电源、地各一条。8279RL0RL7SHIFTCNTL/STBSL0SL3OUTA03OUTB03BDD0D7IRQRDWRCSA0CLKRESET+5VGND CPU键盘显示器第11页,此课件共61页哦D0D7:双向数据线,用于CPU和8279芯片之间传送数据、命令和状态信息。CLK:系统时钟,为8279芯片提供内部定时。RESET:复
12、位线,高电平时复位8279芯片到:16个字符显示(左进方式);编码扫描键盘(双键锁定);时钟设置为31.CS-:片选线,由I/O端口地址译码器产生低电平时8279芯片被选中。RD-:读信号,低电平有效。WR-:写信号,低电平有效。A0:地址线,为0时选中数据口;1时选中命令/状态口。IRQ:中断请求线,高电平有效,向CPU申请中断。第12页,此课件共61页哦SLSL0 0SLSL3 3:扫描线,用来扫描键盘或显示器,可编程设定为编码输出或译扫描线,用来扫描键盘或显示器,可编程设定为编码输出或译码输出。码输出。编码扫描:编码扫描:SLSL3 3-SL-SL0 0输出扫描计数,经外部译码器的译码后
13、最多可为输出扫描计数,经外部译码器的译码后最多可为键盘和显示器提供键盘和显示器提供1616个扫描信号。个扫描信号。译码扫描:译码扫描:SLSL3 3-SL-SL0 0输出可直接作为键盘和显示器的扫描信号,输出可直接作为键盘和显示器的扫描信号,此时键盘矩阵为此时键盘矩阵为4 4*8 8,显示字符为,显示字符为4 4位。位。RLRL0 0RLRL7 7:返回线,用作键盘矩阵列线的返回信号输入。返回线,用作键盘矩阵列线的返回信号输入。SHIFTSHIFT:移位信号,是键盘数据的移位信号,是键盘数据的D D6 6位,用于扩充键的功能,如作为上、位,用于扩充键的功能,如作为上、下档功能键。下档功能键。C
14、NTLCNTL:控制线。是键盘数据的控制线。是键盘数据的D D7 7位,用于扩充键的控制功能位,用于扩充键的控制功能-控制功能控制功能键。键。OUTAOUTA0 0OUTAOUTA3 3,OUTBOUTB0 0OUTBOUTB3 3:A/BA/B组显示信号输出线,与扫描线组显示信号输出线,与扫描线SLSL0 03 3同步,实现分时数据显示,即刷新各显示字符。同步,实现分时数据显示,即刷新各显示字符。BD-BD-:显示消隐线,显示数据切换时或收到消隐命令时,将显示消隐。显示消隐线,显示数据切换时或收到消隐命令时,将显示消隐。第13页,此课件共61页哦3.3.命令字命令字 当引脚当引脚A A0 0
15、=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 2D D1 1):用来设定显示输出方式,定义如表):
16、用来设定显示输出方式,定义如表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 0 1 1 0 1 1 扫描键盘输入,双键锁定扫描键盘
17、输入,N键轮回扫描传感器输入选通输入表10.1 显示输出方式表10.2 键盘输入方式D2D2:0-0-左进方式左进方式 1-1-右进方式右进方式D1D1:0-80-8个字符个字符 1-161-16个字符个字符左进:左进:显示位置从最左一位即最高位开始,逐个向右顺序输出显示位置从最左一位即最高位开始,逐个向右顺序输出右进:右进:显示位置从最右一位即最低位(个位)开始,高位从右边进显示位置从最右一位即最低位(个位)开始,高位从右边进入,逐次左移。入,逐次左移。=计算器显示方式计算器显示方式N N键轮回:键轮回:根据发现顺序依次将相应键盘数据送入根据发现顺序依次将相应键盘数据送入FIFO RAMFI
18、FO 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指向下一存储单元指向下一存储单元AI=0AI=0时,读出后地址不变。时,读出后地址不变。D D
19、2 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):自动地址增量标志。):自动地址增量标志。AI=1AI=1时读后地址自动增时
20、读后地址自动增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 CD2 CD CD1 CD CD0 C CF C CA C CF
21、:清空清空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时,设置一种特殊错误方式:在时,设置一种特殊错误方式:在82798279消抖周期内发现多件消抖周期内发现多件同时按下时,将状态字中同时按
22、下时,将状态字中S/ES/E位置位置1 1,并产生中断请求信号和阻止写入,并产生中断请求信号和阻止写入FIFO RAMFIFO RAM4.4.状态字状态字主要用来指示主要用来指示FIFO RAMFIFO RAM中的字符数和有无错误发生。其格式为:中的字符数和有无错误发生。其格式为:Du:Du:显示无效,当执行显示无效,当执行RAMRAM清除时置位清除时置位S/ES/E:多键同时按下:多键同时按下O O:FIFOFIFO满时,再写入即置位满时,再写入即置位U U:FIFOFIFO空,即字符个数空,即字符个数=0=0F F:FIFOFIFO满,即字符个数满,即字符个数=8=8NNNNNN:FIFO
23、FIFO有几个字符待取走有几个字符待取走 0-70-7D7D6D5D4D3D2D1D0Du0S/EUFNNN5.82795.8279芯片应用举例芯片应用举例 TP86ATP86A单板微型计算机使用单板微型计算机使用82798279芯片作为键盘及芯片作为键盘及LEDLED显显示器接口,电路原理图如图示器接口,电路原理图如图10.410.4所示。所示。第18页,此课件共61页哦8279RL0SHIFTCNTLOUTA03OUTB03D0D7RDWRCSA0CLKRESETTP86SL0SL1SL2SL3RL0键盘矩阵A74LS45BCD74LS45段驱动器(反相)A B CY0Y1Y20007+5
24、V译码器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:MOV DX,0FFEAH IN AL,DX 第20页,此课件共61页哦 TE
25、ST 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 ;设置显示字符内存区地址指针;设置显示字符内存区地址指针 MOV CX,08H ;设置显示字符数;设置
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 接口 技术 人机 课件
限制150内