一.电气特性 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 个起始位 总是逻辑0 8 个数据位 (LSB)低位在前 1 个奇偶校验位 奇校验 1 个停止位 总是逻辑1 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(如果此时正在发送起始位,则应延时40μs); (5)输出起始位(0)到数据线上。这里要注意的是:在送出每一位后都要检测时钟线,以确保PC机没有抑制PS/2设备,如果有则中止发送; (6)输出8个数据位到数据线上; (7)输出校验位; (8)输出停止位(1); (9)延时30μs(如果在发送停止位时释放时钟信号则应延时50μs); 通过以下步骤可发送单个位: (1)准备...