PS2接口标准及嵌入式编程..doc

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
PS2接口标准及嵌入式编程.

PS2接口标准及嵌入式编程随着计算机工业的发展,作为计算机最常用输入设备的键盘也日新月异。1981年IBM推出了IBM pc/XT键盘及其接口标准。该标准定义了83键,采用5脚DIN连接器和简单的串行协议。实际上,第一套键盘扫描码集并没有主机到键盘的命令。为此,1984年IBM推出了IBM AT键盘接口标准。该标准定义了84~101键,采用5脚DIN连接器和双向串行通讯协议,此协议依照第二套键盘扫描码集设有8个主机到键盘的命令。到了1987年,IBM又推出了ps/2键盘接口标准。该标准仍旧定义了84~101键,但是采用6脚mini-DIN连接器,该连接器在封装上更小巧,仍然用双向串行通讯协议并且提供有可选择的第三套键盘扫描码集,同时支持17个主机到键盘的命令。现在,市面上的键盘都和ps/2及AT键盘兼容,只是功能不同而已。? ?ps/2接口硬件 2.1 物理连接器 一般,具有五脚连接器的键盘称之为AT键盘,而具有六脚mini-DIN连接器的键盘则称之为ps/2键盘。其实这两种连接器都只有四个脚有意义。它们分别是Clock(时钟脚)、DATA(数据脚)、+5V(电源脚)和Ground(电源地)。在ps/2键盘与pc机的物理连接上只要保证这四根线一一对应就可以了。ps/2键盘靠pc的ps/2端口提供+5V电源,另外两个脚Clock(时钟脚)和DATA(数据脚)都是集电极开路的,所以必须接大阻值的上拉电阻。它们平时保持高电平,有输出时才被拉到低电平,之后自动上浮到高电平。现在比较常用的连接器如图1所示。 2.2 电气特性 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个数据位 (LSB)低位在前 1个奇偶校验位 奇校验 1个停止位 总是逻辑1 1个应答位 仅用在主机对设备的通讯中 表中,如果数据位中1的个数为偶数,校验位就为1;如果数据位中1的个数为奇数,校验位就为0;总之,数据位中1的个数加上校验位中1的个数总为奇数,因此总进行奇校验。 2.3 ps/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所示。 当时钟频率为15kHz时,从Clock(时钟脚)的上升沿到数据位转变时间至少要5μs。数据变化到Clock(时钟脚)下降沿的时间至少也有5 μs,但不能大于25 μs,这是由ps/2通讯协议的时序规定的。如果时钟频率是其它值,参数的内容应稍作调整。 上述讨论中传输的数据是指对特定键盘的编码或者对特定命令的编码。一般采用第二套扫描码集所规定的码值来编码。其中键盘码分为通码(make)和断码 (Break)。通码是按键接通时所发送的编码,用两位十六进制数来表示,断码通常是按键断开时所发送的编码,用四位十六进制数来表示。 3 ps/2接口的嵌入式软件编程方法 ps/2设备主要用于产生同步时钟信号和读写数据。 3.1 ps/2向pc机发送一个字节 从ps/2向pc机发送一个字节可按照下面的步骤进行: (1)检测时钟线电平,如果时钟线为低,则延时50μs; (2)检测判断时钟信号是否为高,为高,则向下执行,为低,则转到(1); (3)检测数据线是否为高,如果为高则继续执行,如果为低,则放弃发送(此时pc机在向ps/2设备发送数据,所以ps/2设备要转移到接收程序处接收数据); (4)延时20μs(如果此时正在发送起始位,则应延

您可能关注的文档

文档评论(0)

bhzs + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档