2024年6月14日发(作者:)
PS2键盘接口协议
2009-06-03 16:11
一.电气特性
PS/2 键盘接口为 6 针母插,外观为:
上图为接口底座引脚图
1 DATA Key Data
2 n/c Not connected
3 GND Gnd
4 VCC Power , +5 VDC
5 CLK Clock
6 n/c Not connected
二.数据格式
1个起始位
8个数据位
1个奇偶校验位
1个停止位
1个应答位
总是逻辑0
(LSB)低位在前
奇校验
总是逻辑1
仅用在主机对设备的通讯中
表中,如果数据位中1的个数为偶数,校验位就为1;如果数据位中1的个数
为奇数,校验位就为0;总之,数据位中1的个数加上校验位中1的个数总为奇
数,因此总进行奇校验。
ps2设备的clock和data都是集电极开路的,平时都是高电平。当ps2设备
等待发送数据时,它首先检查clock是否为高。如果为低,则认为PC抑制了通
讯,此时它缓冲数据直到获得总线的控制权。如果clock为高电平,ps2则开始向
PC发送数据。
一般都是由ps2设备产生时钟信号。发送按帧格式。数据位在clock为高电平时
准备好,在clock下降沿被PC读入。
数据从键盘/鼠标发送到主机或从主机发送到键盘/鼠标,时钟都是PS2设备产
生.主机对时钟控制有优先权,即主机想发送控制指令给PS2设备时,可以拉低时
钟线至少100μS,然后再下拉数据线,最后释放时钟线为高。PS2设备的时钟线
和数据线都是集电极开路的,容易实现拉低电平。
PC在时钟的下降沿读取数据.
PS: ps2协议是现在大多数鼠标,键盘与PC通讯的标准协议,鼠标的通讯更
为简单些,只是传送的数据内容不一样而已。
三.数据发送时序
键盘接口时序(a) 键盘发送时序;(b) 键盘接收时序
从PS/2向PC机发送一个字节可按照下面的步骤进行:
(1)检测时钟线电平,如果时钟线为低,则延时50μs;
(2)检测判断时钟信号是否为高,为高,则向下执行,为
低,则转到(1);
(3)检测数据线是否为高,如果为高则继续执行,如果为
低,则放弃发送(此时PC机在向 PS/2设备发送数据,所以PS/2设备要
转移到接收程序处接收数据);
(4)延时20μs(如果此时正在发送起始位,则应延时4
0μs);
(5)输出起始位(0)到数据线上。这里要注意的是:在送
出每一位后都要检测时钟线,以确保PC机没有抑制PS/2设备,如果有则中
止发送;
(6)输出8个数据位到数据线上;
(7)输出校验位;
(8)输出停止位(1);
(9)延时30μs(如果在发送停止位时释放时钟信号
则应延时50μs);
通过以下步骤可发送单个位:
(1)准备数据位(将需要发送的数据位放到数据线
上);
(2)延时20μs;
(3)把时钟线拉低;
(4)延时40μs;
(5)释放时钟线;


发布评论