83键标准键盘简要介绍

下边将对83键标准键盘作简要介绍。

83键标准键盘,排列为16行×8列的键盘矩阵,由键盘内的Intel8048单片微处理器控制。Intel单片微处理器内部主要有:8位的CPU,64×8位的RAM,1K×8的ROM,8位的数据总线DB7~DB0,两个8位的并行端口P17~P10和P27~P20,以及测试端口T1,和T2关于Intel8048单片微处理器内部的详细结构,可查阅有关Intel8048资料。

标准键盘的简化逻辑电路如图78所示。

图中,单片微处理器Intel8048采用行列扫描法对键盘矩阵进行扫描,即Intel8048从数据总线DB6~DB0。端口输出7位计数信号CNT01,~CNT64,由O000000~1111111循环计数。其中4位计数值+CNT04、十CNT08、+CNT16和CNT32送到4/16行译码器8M3(74159)的输入端口A、B、C、D,产生负脉冲步进信号,加到键盘矩阵的16根行线上;用3位计数值+CNT04、+CNT08和+CNT16送到3/8列译码器12M4(74156)的输入端口A、B、C,产生负脉冲步进信号,加在键盘矩阵的8根列线上。最高计数位+CNT64用来控制行扫描或列扫描。当十CNT64为低电平时,使行译码器开启,产生步进驱动信号加在行线上;当+CNT64为高电平,且十CNT32为低电平时,使列译码器开启,产生步进驱动信号加在列线上,从而实现对键盘矩阵进行行、列扫描。

当某键被按下时,通过检测电路,产生一个高电平有效的按键状态信号+KEYDEPRESSED,送到Intel8048的测试端口T1,则8048停止扫描,并以当前计数输出值作为按键的位置码,即按键扫描码。在8048端口P21输出的键盘时钟KBD CLOCK的同步下,由8048端口P22串行输出按键的扫描码,送往键盘接口电路。

8048端口P10。接KBD CLOCK信号,用以不断地监视键盘时钟线的状态。主机可以通过键盘接口电路,使键盘时钟线为低电平。如果低电平超过20ns,说明主机要进行键盘的软复位。这时,8048执行软复位,并将10101010(AAH)码送到主机,表示复位成功;否则,显示键盘故障代码。8048端口P11接KBD DATA信号,用以检测键盘数据线的状态。主机可以通过键盘接口电路控制其状态。当它为高电平时,表示键盘可以进行按键扫描码的传输;当它为低电平时,表示禁止传输。

标准键盘的接口电路,一般设在主机系统板上,通过一个5芯DIN插座与键盘螺旋状电缆的5芯DIN插头相连。插座的布局如图7.9所示,各引脚定义见表7.1。

一旦键盘上有键被按下,由键盘将按键的扫描码通过DIN:键盘数据线和DIN:键盘时钟线,以串行方式送到键盘接口电路。

由于键盘输入具有随机性,相对主机CPU是异步的,因此主机系统均以中断请求方式支持键盘的随机输入,即每当键盘接口电路从键盘收到串行的按键的扫描码,并转换为并行的按键扫描码后,由键盘接口电路向主机CPU发出硬件中断请求。若主机CPU响应该中断请求,则主机CPU中断原先正在执行的程序,转而执行键盘中断程序。并在该中断程序的控制下,从键盘接口电路读取按键扫描码,转换为相应的ASCII码,保存在键盘缓冲区或仅设置某种键盘状态(如某控制键)。

标准键盘的接口电路如图7.10所示。

由图7.10可见,标准键盘接口电路主要由串/并转换移位寄存器(74LS322)、一个中断请求触发器、两个D触发器、可编程并行接口芯片8255A-5的PA7~PA0和PB7-PB0接口,以及一些门电路组成。

主机系统通过对可编程并行接口芯片8255A-5进行初始编程,使其并行端口PA7~PA0为输入,PB7~PB0为输出,且均占用主机CPU的I/O端口地址,分别为60H、61H和62H。因此,主机CPU可以通过编程PB7~PB0来实现对键盘接口电路的控制。这里可以控制键盘数据线和时钟线为不同的电平,以达到禁止键盘或允许键盘是否工作。当编程使PB6=0时,键盘时钟线为低电平,禁止键盘输出;而编程使PB6=1时,使键盘时钟线为高电平,则允许键盘输出。当电路中跨接E、的中间接头连向PB2时,若PB6=1,使键盘数据线为低电平,禁止键盘输出;而若PB2=O,使键盘数据线为高电平,则允许键盘输出。实际使用中,系统一般设置Es跨接线接地,PB2不起作用,所以不使用键盘数据线来封锁键盘输出。

豫ICP备19006514号 网站地图 免责声明:如果侵犯了你的权益,请发邮件至:419017772@qq.com,我们会及时删除侵权内容,谢谢合作!