PS2 PC键盘编程参考资料.pdfVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
PS2 PC键盘编程参考资料

PS/2 PC 键盘编程参考资料 一. 电气特性 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 的个数总为 奇数,因此总进行奇校验。 1 / 7 三.PS/2 发送数据到PC 的时序 键盘接口时序 (a) 键盘发送时序;(b) 键盘接收时序 注:在时钟的下降沿读取数据.以下可做具体写程序参考 1.从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)准备数据位(将需要发送的数据位放到数据线上); (2)延时20μ s ; (3)把时钟线拉低; (4)延时40μ s ; (5)释放时钟线; (6)延时20μ s 。 2 / 7 2.PS/2 设备从PC 机接收一个字节 由于PS/2 设备能提供串行同步时钟,因此,如果PC 机发送数据,则PC 机 要先把时钟线和数据线置为请求发送的状态。PC 机通过下拉时钟线大于 100μ s 来抑制通讯,并且通过下拉数据线发出请求发送数据的信号,然后释放时钟。当 PS/2 设备检测到需要接收的数据时,它会产生时钟信号并记录下面 8 个数据位 和一个停止位。主机此时在时钟线变为低时准备数据到数据线,并在时钟上升沿 锁存数据。而PS/2 设备则要配合PC 机才能读到准确的数据。具体连接步骤如下: (1)等待时钟线为高电平。 (2)判断数据线是否为低,为高则错误退出,否则继续执行。 (3)读地址线上的数据内容,共8 个 bit,每读完一个位,都应检测时钟线是 否被PC 机拉低,如果被拉低则要中止接收。 (4)读地址线上的校验位内容,1 个bit。 (5)读停止位。 (6)如果数据线上为0 (即还是低电平),PS/2 设备继续产生时钟,直到接收 到 1 且产生出错信号为止(因为停止位是 1,如果PS/2 设备没有读到停止位, 则表明此次传输出错)。 (7)输出应答位。 (8)检测奇偶校验位,如果校验失败,则产生错误信号以表明此次传输出现 错误。 (9)延时45 μ s,以便PC 机进行下一次传输。 读数据线的步骤如下: (1)延时20μ s ; (2)把时钟线拉低; (3)延时40μ s ; (4)释放时钟线; (5)延时20μ s ; (6)读数据线。 下面的步骤可用于发出应答位;

文档评论(0)

ranfand + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档