更新时间:2022-08-25 12:10
键盘的功能就是及时发现被按下的键,并将该键的信息送入计算机。实际上,这一工作是由键盘控制电路来完成,即由发现下按键位置的键扫描电路,由编码电路产生被按下键代码,并将产生代码送入计算机的接口电路,但在产生代码过程中,有两种不同的代码,依据传送代码,计算机键盘分为编码键盘和非编码键盘。
1、编码键盘是键盘控制电路在某个键被按下时,应能提供该按键所代表的信息代码(如ASCII码),并以并行或串行信号输给CPU。编码键盘响应快,但它以复杂的硬件结构为代价,而且其复杂性随着按键功能的增加而增加。
2、非编码键盘只简单提供键盘矩阵中被按键的行列坐标,作为键盘接口的输入信息。整个键盘的输入过程全部由软件(键盘控制程序)控制完成。它可以通过软件为键盘的某些按键重新定义,为扩充键盘功能提供了极大的方便,得到广泛使用,微机所采用的便是非编码键盘。
按键的输入,键盘的电源由主机提供,一旦通电,键盘控制电路就在固化于计算机ROM中的键盘控制程序的控制之下开始进行扫描、接收等工作,具体包括以下内容:
按键行列坐标的获得
主程序首先调用查询程序,通过查询接口逐行扫描键位矩阵,同时检测行列的输出,如有按键动作发生,由对应的交连信号确定某闭合键的坐标,即得到被按键盘对应的行列坐标码。
行列坐标的传送
主程序调用传送程序将得到的行列坐标码通过键盘与主机第三条连线传送给位于主机内的键盘接口电路。
译码
主程序调用译码程序将键盘接口内的行列坐标码翻译为相应的编码信息。
键盘接口对编码信息的处理,当键盘将信息传送给键盘接口时,键盘接口要做以下工作:
1、向中断控制器发送键盘中断请求信号
键盘输入信息经接口传向CPU,是采用中断方式完成的。接口在接到键盘传来的信息后向中断控制器发一键盘中断请求信号(09H号中断),中断控制器对键盘接口口中断请求进行处理,传向CPU。
2、向并行接口芯片传送数据
键盘为接口传送数据时以串行方式提供的,CPU内部数据以并行方式传送,在给CPU提供数据时须将串行数据化为并行数据,因此,键盘接口将数据传向具有串并转换功能的并行接口芯片,并行芯片在接收到数据后将数据转换为并行数据并保存。
3、向键盘发信息
键盘在接收和传送按键时,每次只能以一个键的单位进行,即在接收到一个键值后要等该值被CPU接收才能继续接收下一键值,为了确保这一过程的实现,键盘接口在接收到键盘传送来的信息后会向键盘通过连线发送一禁止键盘工作的信号,这一信号持续时间极短,对用户不会产生影响。