基于FPGA 的PS2鼠标控制器设计

上传人:仙*** 文档编号:79965108 上传时间:2022-04-24 格式:DOC 页数:7 大小:9.62MB
返回 下载 相关 举报
基于FPGA 的PS2鼠标控制器设计_第1页
第1页 / 共7页
基于FPGA 的PS2鼠标控制器设计_第2页
第2页 / 共7页
基于FPGA 的PS2鼠标控制器设计_第3页
第3页 / 共7页
点击查看更多>>
资源描述
基于FPGA 的PS/2 鼠标控制器设计1 PS/2介绍 PS/2 接口作为传统的鼠标键盘接口已经被大部分人所熟知,虽然随着 USB接口键鼠的普及,绝大多数 PC用户均选择了 USB的键鼠,但目前主流 PC中依旧保留了PS/2键鼠的接口,由于 PS/2接口实现简单,使用方便的特点,在许多领域如工控机等仍旧采用 PS/2接口来完成基本的人机交互。 1.1 PS/2 的接口特性 PS/2 接口多用于鼠标和键盘,IBM是开发和使用最早的。PS/2 接口从物理上有两种类型的连接器,它们分别是5脚的 DIN和6脚的MINI-DIN,如图1-1所示。图1-1 PS/2 接口连接器引脚定义1.2 PS/2 的接口协议PS/2鼠标接口采用一种双向同步串行协议。即每在时钟线上发一个脉冲,就在数据线上发送一位数据。在相互传输中,主机拥有总线控制权,即它可以在任何时候抑制鼠标的发送。方法是把时钟线一直拉低,鼠标就不能产生时钟信号和发送数据。在两个方向的传输中,时钟信号都是由鼠标产生,即主机不产生通信时钟信号。如果主机要发送数据,它必须控制鼠标产生时钟信号。方法如下:主机首先下拉时钟线至少 100 s抑制通信,然后再下拉数据线,最后释放时钟线。通过这一时序控制鼠标产生时钟信号。PS/2接口的鼠标一般工作在10KHz-20KHz时钟频率,不同厂家制造的鼠标工作的时钟频率不同,推荐值在15kHz左右,也就是说,Clock(时钟脚)高、低电平的持续时间都为40s。PS/2接口分为两种通讯模式:设备到主机的通讯、主机到设备的通讯。时序如图1-2。当时钟为高时,设备驱动数据线改变状态,在时钟信号的下降沿数据被控制器锁存。图 1-3为主机到设备的通讯时序。图1-2鼠标到主机的通信时序图1-3主机到的鼠标通信时序1.3 PS/2 的鼠标工作模式PS/2 鼠标有四种工作模式,它们分别为:Reset 模式:当鼠标上电或主机发复位命令给它时,进入 Reset 模式;Stream 模式:这是鼠标的默认模式,当鼠标上电或复位完成后,鼠标自动进 Stream 模式,鼠标大部分就是用此模式工作;Remote模式:只有当主机发送了设置命令后,鼠标才进入 Remote 模式;Wrap模式:Wrap 模式只用于测试鼠标与主机连接是否正确。 1.4 PS/2 的数据帧格式鼠标在实际工作中,会把及时收到的数据状态发送给主机,让主机做出相应的动作。发送的数据包格式如图1-4所示。 图1-4 鼠标发送数据格式鼠标发送数据的具体方式如下:Byte1 中的 Bit0、Bit1、Bit2 分别表示左、右、中键的状态,状态值表示释放,表示按下;Byte2 和Byte3分别表示轴和轴方向的移动计量值,是二进制补码值;Byte4的低四位表示滚轮的移动二进制补码值,高四位作为扩展符号位。这种数据包由带滚轮的三键三维鼠标产生,若是不带滚轮的三键鼠标,产生的数据包没有 Byte4,其余的相同。数据帧格式如图 1-5所示。 图 1-5 数据帧格式2 硬件相关介绍2.1 PS/2 接口 DE2-115 包含一个标准的 PS/2 接口,可以用来外接 PS/2 鼠标或键盘。图 2-1给出了 PS/2 接口相关的原理图。图 2-1 PS/2 接口原理图PS/2 接口相关的引脚配置信息可以在图 2-2中找到。图 2-2 PS/2 接口引脚配置2.2 按键及拨码开关电路DE2-115提供了四个按钮开关,如图1-8所示。每个按钮开关都通过一个施密特触发器进行了去抖处理。四个施密特触发器的输出信号,分别为KEY0、KEY1、KEY2、KEY3,直接连接到了Cyclone IV E FPGA。当按钮没有被按下的时候,它的输出是高电平,按下去则给出一个低电平。得益于去抖动电路,这些按钮开关适合用来给内部电路提供(模拟的)时钟信号或者复位信号。图1-8 KEY电路示意图图1-9 按键消抖DE2-115开发板上还有18个拨动开关,如图1-10所示。这些开关没有去抖电路,它们可以作为对电平敏感的电路的输入数据。每个开关都直接连接到Cyclone IV E。当拨动开关在DOWN位置(靠近开发板边缘)的时候输出为低电平,当在UP位置是输出为高电平。图1-10 拨码开关电路示意图2.3 LED电路DE2-115开发板共有27个直接由FPGA控制的LED.18个红色的LED位于18个拨动开关的正上方,8个绿色LED可以在按钮开关的上方找到(第九个LED位于七段数码管的中间)。每一个LED都由Cyclone IV E FPGA的一个引脚直接驱动,其输出高电平则点亮LED,输出低电平LED熄灭。图1-11给出了LED和Cyclone IV E FPGA之间的连接示意图。图1-11 LED 电路示意图Cyclone IV E FPGA到拨动开关间的详细引脚连接信息请参考附录。2.4 数码管电路DE2-115配有八个七段数码管。它们被分成两组,每组四个,用来作为数字显示用。正如图1-12所示,七段数码管的每个引脚(共阳模式)均连接到Cyclone IV E FPGA。FPGA输出低电压的时候,对应的字码段点亮,反之则熄灭。每个数码管的字段都从0到6依次编号,对应我们常用的数码管7段的编号abcdefg。图1-12 数码管电路示意图3 设计方案3.1 设计任务 完成以下功能: 接入PS/2鼠标 ,按下 KEY0以使能鼠标数据发送,按下KEY1清零位移数据显示。当鼠标有移动时,可以观察到七段数码管显示的数字跟随变动。当按下左中右键时,相应的绿色LED 灯LED2:0会点亮。 3.2 系统框图整个系统的框图如下所示,按键控制数码管清零,鼠标通过 PS/2接口4根信号线向FPGA输入信号,FPGA识别信号并按程序点亮 LED灯并显示数码管。
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 管理文书 > 施工组织


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!