PS2设备通信协议_第1页
PS2设备通信协议_第2页
PS2设备通信协议_第3页
PS2设备通信协议_第4页
PS2设备通信协议_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

PS2设备通信协议时序图PS2接口和协议接口简介1981年IBM推出了IBMPC/XT键盘及其接口标准。经过多年演变成6脚mini-DiN连接器接口,封装上更小巧,用双向串行通讯协议并且提供有可选择的第三套键盘扫描码集,同时支持17个主机到键盘的命令。现在,市面上的键盘都和PS/2及AT键盘兼容PS/2接口硬件物理连接器 这两种连接器都只有四个脚有意义。它们分别是Clock(时钟脚)、DATA数据脚、+5V(电源脚)和Ground(电源地)。在PS/2键盘与PC机的物理连接上只要保证这四根线一一对应就可以了。PS/2键盘靠PC的PS/2端口提供+5V电源,另外两个脚Clock(时钟脚)和DATA数据脚都是集电极开路的,所以必须接大阻值的上拉电阻。它们平时保持高电平,有输出时才被拉到低电平,之后自动上浮到高电平。电气特性PS/2通讯协议是一种双向同步串行通讯协议。通讯的两端通过Clock(时钟脚)同步,并通过DATA(数据脚)交换数据。任何一方如果想抑制另外一方通讯时,只需要把Clock(时钟脚)拉到低电平。如果是PC机和PS/2键盘间的通讯,则PC机必须做主机,也就是说,PC机可以抑制PS/2键盘发送数据,而PS/2键盘则不会抑制PC机发送数据。一般两设备间传输数据的最大时钟频率是33kHz,大多数PS/2设备工作在10~20kHz。推荐值在15kHz左右,也就是说,Clock(时钟脚)高、低电平的持续时间都为40μs。每一数据帧包含11~12个位,具体含义如表1所列。表1数据帧格式说明

1个起始位总是逻辑0

8个数据位,低位在前

1个奇偶校验位(奇校验)

1个停止位总是逻辑1

1个应答位仅用在主机对设备的通讯中奇校验如果数据位中1的个数为偶数,校验位就为1;如果数据位中1的个数为奇数,校验位就为0PS/2设备和PC机的通讯PS/2设备的Clock(时钟脚)和DATA数据脚都是集电极开路的,平时都是高电平。当PS/2设备等待发送数据时,它首先检查Clock(时钟脚)以确认其是否为高电平。如果是低电平,则认为是PC机抑制了通讯,此时它必须缓冲需要发送的数据直到重新获得总线的控制权(一般PS/2键盘有16个字节的缓冲区,而PS/2鼠标只有一个缓冲区仅存储最后一个要发送的数据)。如果Clock(时钟脚)为高电平,PS/2设备便开始将数据发送到PC机。一般都是由PS/2设备产生时钟信号。发送时一般都是按照数据帧格式顺序发送。其中数据位在Clock(时钟脚)为高电平时准备好,在Clock(时钟脚)的下降沿被PC机读入。PS/2设备到PC机的通讯时序如图2所示。Ps2设备到主机的通信图中绿色的信号表示由Ps2设备产生的。也就是说PS2设备在产生时钟的同时向主机送出数据,主机在PS2CLK信号的下降沿读取每个位。当PS2CLK频率为15kHz时,从PS2CLK(时钟脚)的上升沿到数据位转变时间至少要5μs。数据变化到PS2CLK(时钟脚)下降沿的时间至少也有5μs,但不能大于25μs,这是由PS/2通讯协议的时序规定的。(一般不用考虑,这由键盘或者鼠标产生)主机(即PC)到PS/2设备的传输主机若想影响传输,必须能够控制总线时钟!对于主机而言,控制PS/2总线有三种状态状态PS2DATAPS2CLKNoteIdle高高InhibitTransmission高低为了传输能够发送串行数据到一位寄存器输出端,控制器要求PS2设备产生PS2CLKHostSendRequest低高主机到PS/2设备的传输

PS2控制器必须进入主机发送请求(HostSendRequest)的状态。这可以通过以下动作实现:PS2CLK线首先被拉低至少在一个时钟周期(进入禁止传输InhibitTransmission状态)PS2DATA线随后被拉低(提供的起始位帧传送)PS2CLK线随后被释放(仍然保持PS2DATA低)。PS/2设备定期检查数据和时钟线是否为这种状态,当检测到,开始产生PS2CLK信号。在从主机向PS/2设备发送数据时,PS2一帧数据由10个域构成。见时序图从主机到PS/2设备的数据的传输时序图

绿色信号由ps2设备产生,黄色信号由主机产生由于PS/2设备能提供串行同步时钟,因此,如果主机发送数据,则主机要先把时钟线和数据线置为请求发送的状态。主机通过下拉时钟线大于100μs来抑制通讯,并且通过下拉数据线发出请求发送数据的信号,然后释放时钟,PS/2设备检测到需要接收的数据时,它会产生时钟信号并记录下面8个数据位和一个停止位。主机此时在时钟线变为低时准备数据到数据线,并在时钟上升沿锁存数据。Ps2键盘如果它发现有键被按下,释放或按住,键盘将发送扫描码的信息包到计算机。扫描码有两种不同的类型通码和断码。当一个键被按下或按住就发送通码,当一个键被释放就发送断码。每个按键被分配了唯一的通码和断码。这样主机通过查找唯一的扫描码就可以测定是哪个按键。每个键一整套的通断码组成了扫描码集,有三套标准的扫描码集分别是第一套第二套和第三套。所有现代的键盘默认使用第二套扫描码。键盘缺省设置状态在上电或软件复位(见Reset命令)后键盘执行诊断自检叫做BAT(基本保证测试)并载入如下的缺省值:击打延迟为500ms

击打速率为10.9cps*第二套扫描码集*置所有按键为机打/通码/断码Ps2鼠标的工作模式和协议数据包格式Ps2鼠标四种工作模式Reset模式,当鼠标上电或者主机发出reset命令(ff)时,进入这种模式Stream模式:鼠标默认的模式,当鼠标上电或者复位完成后,自动进入此模式Remote模式:和主机交互模式Wrap模式,用于测试鼠标和主机连接是否正确流模式下数据包格式ByteBitDescription10Leftbuttonstatus;1=pressed1Rightbuttonstatus;1=pressed2Middlebuttonstatus;1=pressed3Reserve4Xdatasign;1=negative5Ydatasign;1=negative6Reserve7Reserve20-7Xdata(D0-D7)30-7Ydata(D0-D7)带滚轮的鼠标的数据包格式ByteBitDescription10Leftbuttonstatus;1=pressed

1Rightbuttonstatus;1=pressed

2Middlebuttonstatus;1=pressed

3

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论