PS2键盘鼠标识别器毕业设计PPT.ppt_第1页
PS2键盘鼠标识别器毕业设计PPT.ppt_第2页
PS2键盘鼠标识别器毕业设计PPT.ppt_第3页
PS2键盘鼠标识别器毕业设计PPT.ppt_第4页
PS2键盘鼠标识别器毕业设计PPT.ppt_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

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

文档简介

PS/2键盘鼠标识别器,姓 名:赵宏志 班 级:通信092 学 号:0906220242 指导老师:赵立权,目录,一、课题的目的以及意义 二、PS/2键盘、鼠标协议 三、PS/2键盘接口设计 四、PS/2鼠标接口设计 五、结论,一、课题的目的以及意义,1.什么是PS/2 PS/2接口是计算机发展到一定阶段的一种接口规范,是1987年,IBM推出的键盘接口标准,支持双向串行通讯协议。键盘和鼠标上的口是Male(公的),称为Plug(插头)。主板上的接口是Female(母的),称为Socket(插座)。因此,这两个就分别是Plug Socket,简称PS而已,又因为其支持双向通信协议,故称为PS/2接口。一般情况下,PS/2接口的鼠标为绿色,键盘为紫色。,2.为什么研究PS/2 在单片机系统中,经常使用的键盘都是专用键盘。此类键盘为单独设计制作的,成本高,使用硬件连接线多,而且可靠性不高,这一状况在那些要求键盘按键较多的应用系统中更为突出。与此相比,在PC系统中广泛应用PS/2键盘具有价格低,通用可靠而且连接线少(仅使用2根信号线)的特点,并且可满足多种系统的要求。因此在单片机系统中应用PS/2键盘是一种很好的选择。,二、PS/2键盘鼠标协议,5脚DIN连接器,6脚DIN连接器,1.PS/2的物理接口,2.PS/2键盘鼠标协议,从键盘/鼠标发送到主机的数据在时钟信号的下降沿(当时钟从高变到低的时候)被读取;从主机发送到键盘/鼠标的数据在上升沿(当时钟从低变到高的时候)被读取。不管通讯的方向怎样,键盘/鼠标总是产生时钟信号。如果主机要发送数据,它必须首先告诉设备开始产生时钟信号(这个过程在下一章节中被描述)最大的时钟频率是33KHZ,而且大多数设备工作在10-20KHZ。如果你要制作一个PS/2设备,我推荐你把频率控制在15KHZ左右。这就意味着时钟应该是高40微秒低40微秒。 所有数据安排在字节中,每个字节为一帧,包含了11-12个位。这些位的含义如下:,数据帧格式说明,如果数据位中包含偶数个1,校验位就会置1;如果数据位中包含奇数个1,校验位就会置0。数据位中1的个数加上校验位总是为奇数(这就是奇校验)这是用来进行错误检测的。,3.设备到主机的通讯过程,数据帧格式,设备到主机每位在时钟的下降沿被主机读入,4.主机到设备的通讯,被发送的包有点不同于主机到设备通讯过程首先,PS/2设备总是产生时钟信号。如果主机要发送数据,它必须首先把时钟和数据线设置为“请求发送”状态,如下示: 1)通过下拉时钟线至少100微秒来抑制通讯。 2)通过下拉数据线来应用“请求发送”然后释放时钟。 设备应该在不超过10毫秒的间隔内就要检查这个状态。当设备检测到这个状态,它将开始产生时钟信号,并且时钟脉冲标记下输入八个数据位和一个停止位。主机仅当时钟线为低的时候改变数据线,而数据在时钟脉冲的上升沿被锁存。当发生在设备到主机通讯的过程中时正好相反。,主机到设备的通信,详细过程如下,三、PS/2键盘接口设计,1.怎么确定按键 扫描码:键盘的处理器花费很多的时间来扫描或监视按键矩阵。如果它发现有键被按下,释放或按住,键盘将发送“扫描码”的信息包到计算机。扫描码有两种不同的类型:“通码”和“断码”。当一个键被按下或按住就发送通码;当一个键被释放就发送断码。每个按键被分配了唯一的通码和断码,这样主机通过查找唯一的扫描码就可以测定是哪个按键。每个键一整套的通断码组成了“扫描码集”。,第二套扫描码集部分按键的通码断码,2.实例说明具体流程 通码和断码是以什么样的序列发送到你的计算机,使得字符“G”出现在你的字处理软件里呢?因为这是一个大写字母,需要发生这样的事件次序:按下“Shift”键按下“G”键,释放“G”键,释放“Shift”键。与这些时间相关的扫描码如下“Shift”键的通码(12h),“G”键的通码(34h),“G”键的断码(F0h,34h),“Shift”键的断码(F0h,12h)。因此,发送到你的计算机的数据应该是:12h,34h ,F0h,34h,F0h,12h。,与MCS-51产品指令系统完全兼容;4k字节可重擦写Flash闪速存储器;1000次擦写周期;有10年数据保留时间;全静态操作:0Hz24MHz;三级加密程序存储器;1288字节内部RAM;32个可编程I/O口线;2个16位定时/计数器;6个中断源;可编程串行UART通道;低功耗空闲和掉电模式;片内振荡器和时钟电路,3.芯片介绍,P3.0接PS/2数据线;P3.2(INT0)接PS/2时钟线。因为单片机的P3口内部是带上拉电阻的,所以PS/2的时钟线和数据线可以直接与单片机的P.0,P3.2相连接。,4.PS/2键盘与单片机的连接图,5.软件设计程序,驱动及键盘码的映射和部分按键服务程序由中断服务程序完成,键盘键值通过全局变量传递给主程序,主程序只要查询标志位,当有键按下时,执行相应的程序,在这里,笔者完成了全拼的输入法程序,并通过了试验验证。,四、PS/2鼠标接口设计,1.如何确定鼠标移动并移动多少 标准的PS/2鼠标支持下面的输入:X(左右)位移,Y(上下)位移,左键,中键和右键。鼠标以一个固定的频率读取这些输入并更新不同的计数器,然后标记出反映的移动和按键状态。标准的鼠标有两个计数器保持位移的跟踪:X位移计数器和Y位移计数器。可存放9位的2进制补码并且每个计数器都有相关的溢出标志。它们的内容连同三个鼠标按钮的状态一起以三字节移动数据包的形式发送给主机。位移计数器表示从最后一次位移数据包被送往主机后有位移量发生。当鼠标读取它的输入的时候,它记录按键的当前状态,然后检查位移。如果位移发生,它就增加(对正位移)或减少(对负位移)X和/或Y位移计数器的值。如果有一个计数器溢出了,就设置相应的溢出标志。,2.位移数据包 标准的PS/2鼠标发送位移和按键信息给主机采用如下,位移计数器是一个9位2的补码整数.它的最高位作为16符号位出现在位移数据包的第一个字节里。这些计数器在鼠标读取输入发现有位移时被更新。这些值是自从最后一次发送位移数据包给主机后位移的累计量(即最后一次包发给主机后,位移计数器被复位)。位移计数器可表示的值的范围是-255到+255.如果超过了范围,相应的溢出位就被设置,并且在复位前,计数器不会增减。,3.PS/2鼠标工作模式,PS/2鼠标有4种工作模式: 复位模式。当上电或收到复位指令FFH后鼠标即处于此模式。鼠标进行自检和初始化,再向主机发送 0xFA,0xAA,0x00H。一些参数将恢复到默认值:采样率为100次/s、非自动速度、流模式、分辨率为4计数/mm、禁止状态。 流模式。如果有按键或滚轮动作,即向系统发送信息,最大发送速率就是可编程的采样率。 遥控模式。只有在主机发送了模式设置命令0xFO后,鼠标才进入这种模式。 卷绕(Wrap)模式。这种模式只用于测试鼠标与主机连接是否正确,在该模式下鼠标收到什么就返回什么,除非收到退出卷绕指令ECH或复位指令FFH。 正常工作时可以采用遥控模式,定时向鼠标读取数据。大多数应用系统使用流模式,即程序中的缺省模式,该模式下鼠标有任何动作都将自动报告给主机。,4.鼠标的数据传送帧过程详解,1.不论是PS/2鼠标发送信息还是接收指令,都是由PS/2鼠标生成CLK定时信号。 2.数据从PS/2鼠标到系统:只有当CLK和DATA都为1时,PS/2鼠标才会发送数据,每帧数据由 11位组成,每1位都在CLK的下降沿有效,直到CLK的上升沿。 3.数据从系统到PS/2鼠标:当系统需要发送指令至PS/2鼠标时,先由系统强制将CLK为低电平至少100bts,然后从DATA送出起始位0,再释放CIK。PS/2鼠标检测到CLK的上升沿和DATA=0,即发 出11个CLK时钟(频率约11KHz),系统应该在CLK的每个上升沿之前将指令逐位送到 DATA线 。,数据传送帧格式,5.单片机和PS/2鼠标的硬件接口,由于PS/2接口中CLK和DATA信号都是双向的,PS/2鼠标的CLK和DATA采用开漏输出,并且有内部上拉电阻。单片机和PS/2鼠标的硬件接口非常简单,以89C51单片机为例,PS/2鼠标的CLK接到 89C51的INT0,INOT作为外部中断下沿触发。DATA接到P10或其他

温馨提示

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

评论

0/150

提交评论