外设天下 - 电脑外设发烧友聚集地

我的人缘0
21
发表于 2009-4-29 00:11 只看该作者

看来这个问题很尖锐啊~~~~

第一。必须是PS2口的键盘。能够通过改装+电阻进减少延迟
第二。电脑主板必须支持。
通过测试软件。
一般的延迟是270毫秒
通过改装的话。能把延迟缩短到达到70毫秒~~
至于用处大不大。在于个人
举个很简单的例子
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa 按100个a 如果一直按删除键。延迟长的需要3秒中删完。 延迟短的2.1秒就完成了。
在游戏中也可以使用~~好处就不用多说了吧~~~
当然这个具体怎么操作。
我不知道~~~~~~~~~~~~~~~~~~~~~
希望大家踊跃想办法。
突破这一技术难题~~~~~~~
我的人缘0
22
发表于 2009-4-29 00:19 只看该作者

转了一下人家的帖子

改装键盘图文介绍
图文介绍

--------------------------------------------------------------------------------

大家现在已经通过跑跑与延迟这篇文章了解到了键盘延迟的重要性,我们经过实际测试知道,未经修改的PKB3000键盘最短延迟也高达275ms,是不利于我们游戏的,那么改造成我们需要的200ms以下的呢?



我们是通过改变键盘电路中的PS/2频率发生的装置,来提高PS/2的扫描频率而实现的.所以一,USB键盘是无法修改的,使用笔记本的玩家请勿购买.第二,如果键盘频率过快(延迟小于150ms时),有小部分主板可能无法正确识别使用,最好的办法是改装成2XXms-XXms范围内可调节的.







我先来把键盘拆开..整体橡胶是每个键手感都一样的保证..只有大厂才有这样的橡胶技术







用工具改造电路,并加装调节旋钮







大功告成了!帅气么~该上机测试了
我的人缘0
23
发表于 2009-4-29 00:21 只看该作者

关于ps2的延迟理论。希望大家了解 转帖

PS/2接口协议解析及应用
PS/2接口标准的发展过程
随着计算机工业的发展,作为计算机最常用输入设备的键盘也日新月异。1981年IBM推出了IBMPC/XT键盘及其接口标准。该标准定义了83键,采用5脚DIN连接器和简单的串行协议。实际上,第一套键盘扫描码集并没有主机到键盘的命令。为此,1984年IBM推出了IBMAT键盘接口标准。该标准定义了84~101键,采用5脚DIN连接器和双向串行通讯协议,此协议依照第二套键盘扫描码集设有8个主机到键盘的命令。到了1987年,IBM又推出了PS/2键盘接口标准。该标准仍旧定义了84~101键,但是采用6脚mini-DIN连接器,该连接器在封装上更小巧,仍然用双向串行通讯协议并且提供有可选择的第三套键盘扫描码集,同时支持17个主机到键盘的命令。现在,市面上的键盘都和PS/2及AT键盘兼容,只是功能不同而已。

2 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(如果此时正在发送起始位,则应延时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。

3.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)读数据线。

下面的步骤可用于发出应答位;

(1)延时15μs;

(2)把数据线拉低;

(3)延时5μs;

(4)把时钟线拉低;

(5)延时40μs;

(6)释放时钟线;

(7)延时5μs;

(8)释放数据线。
我的人缘0
24
发表于 2009-4-29 00:30 只看该作者

呵呵。

发这个帖子。主要是为了提高大家的思维动手能力
我们对键盘鼠标产品有很深的研究。
抛去外观不讲 外形不讲
其实有很多东西我们都可以diy的
自己动手改装过的东西对于自己才是有意义有趣的呢~~
昨天我找到一个新的滚轮鼠标。里面的微动很肉
不喜欢~~
直接把里面的zip微动拆掉。
换了两个国产欧姆龙。在鼠标的按键下加了一毫米的塑料片
恩。
按键不肉了。比原来好用多了~~
这就是动手的乐趣啊~~~~
键盘鼠标都可以自己动手改呢~~
呵呵集思广益啊~~~~~~~~~~~
我的人缘0
25
发表于 2009-4-29 00:48 只看该作者
测试
PLU  键盘里面加了以个小电路板 提高响应速度的  因为自己不会改! 所以FILCO 都没用了  在用PLU      还想过把PLU 的电路板 换在FILCO ! 但是技术部够- -#
我的人缘0
26
发表于 2009-4-29 02:01 只看该作者
原帖由 mckimmy 于 2009-4-29 00:48 发表
PLU  键盘里面加了以个小电路板 提高响应速度的  因为自己不会改! 所以FILCO 都没用了  在用PLU      还想过把PLU 的电路板 换在FILCO ! 但是技术部够- -#

模具不太一样 不一定放得下去啊
我的人缘0
27
发表于 2009-4-29 11:41 只看该作者
这贴子太有建设性了.不过问题谁会改?
我的人缘0
28
发表于 2009-4-29 12:10 只看该作者
测试

研究研究

大家一起研究一下哦~~
要有一定的电路知识呢~~
我的人缘0
29
发表于 2009-4-30 11:00 只看该作者
俺再次进来收割成果。。。。起源兄费心了 我哪里倒是有详细的PS2接口键盘方面的资料,可惜我也看不明白。。。。。;mm6;
我的人缘0
30
发表于 2009-4-30 15:57 只看该作者
测试
原帖由 混沌邨 于 2009-4-30 11:00 发表
俺再次进来收割成果。。。。起源兄费心了 我哪里倒是有详细的PS2接口键盘方面的资料,可惜我也看不明白。。。。。;mm6;

。。原来你也有不明白的 哈哈~
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则