第3节 键盘简介
第3节 键盘简介
- 键盘的功能:及时发现被按下的键,并将该按键的信息送入主机。
- 键盘之所以可以识别按键信息,是因为键盘内部具有扫描电路、产生被按下键代码的编码电路、将代码送入主机的接口电路。
- 当一个键被按下时,控制电路根据其位置,将字符信号转换成二进制码,传给主机。
键盘扫描码
- 键盘的处理器扫描按键矩阵。如果发现有键被按下、释放或按住,键盘将发送相应的扫描码的信息包到主机。
- 扫描码有两种不同的类型:通码和断码。当一个键被按下或按住就发送通码,当一个键被释放就发送断码,
每个按键被分配了唯一的通码和断码,这样主机通过查找唯一的扫描码就可以测定是哪个按键。每个键的通断码组成了扫描码集。
- 有三套标准的扫描码集,所有现代的键盘默认使用第二套扫描码


- 只要一个键被按下,这个键的通码就被发送到计算机。多数第二套通码只有一个字节宽,但也有少数扩展按键的通码是两字节或四字节宽,这类通码的第一个字节总是E0h。
- 只要键一释放,断码就会被发送。每个键都有它自己唯一的通码和唯一的断码。多数第二套断码有两字节长,它们的第一个字节是F0h 第二个字节是这个键的通码。
扩展按键的断码通常有三个字节,它们前两个字节是E0h,F0h ,最后一个字节是这个按键通码的最后一个字节。

- 如果按了一个键,这个键的通码被发送到计算机;当你按下并按住这个键,则键盘将一直发送这个键的通码直到它被释放或者其他键被按下。
- 在第一第二套扫描码里没有Pause/Break 键的断码,当这个键按下时,发送它的通码;当它释放时,什么都不发送。
举例:大写字符G:
- 这个字符的按键:按次序按下Shift 键、按下G 键、释放G 键、释放Shift 键;
- 这些时间相关的扫描码如下:Shift 键的通码12h ,G键的通码34h,G 键的断码F0h 34h,Shift 键的断码F0h 12h;
- 因此从键盘发送到出来的数据应该是12h 34h F0h 34h F0h 12h。
常用的PS/2连接器引脚定义

键盘接口信号
键盘>>主机

主>>键盘

PS/2相关参考资料
- PS/2接口规范
--网络学堂
- PS/2键盘/鼠标Core:
--http://www.opencores.org/projects.cgi/web/ps2/overview
--http://www.birdcomputer.ca/Cores/PS2Kbd.html
<<上一节 下一节>>