外设堂

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 12220|回复: 13

[资料] 鼠标参数的伪详细介绍~

[复制链接]
发表于 2013-12-12 21:57 | 显示全部楼层 |阅读模式
本帖内容摘自于网络,如有错误欢迎指正~
首先说下鼠标子硬件,其一般包括鼠标引擎(cpu),pcb,微动,光头,透镜,机械or光栅开关等……

那么其所代表的的各个对应的关系,以及其所表现的方式是什么呢?这就是下面所要说的内容……
u=36171460,3468026662&fm=23&gp=0.jpg
鼠标分辨率(dpi or cpi)

  什么事鼠标分辨率呢?鼠标分辨率是指鼠标的定位精度,这是我们平时接触光电鼠标听到最多的关键词,分辨率逐渐成为很多人寻购鼠标的主要依据之一。我们通常是用DPI或CPI来表示。ps:现在很多商家都没有给与其详细的解释,往往故意混淆连个不同概念去误导玩家……

3WH}A6C{S3@G9LNWW07CCTB.jpg
dpi:(dots per inch)中文直译为“每英寸像素”!是指鼠标内的解码装置(引擎既cpu)所能辨认每英寸(1 inch=2.54cm)长度内像的素数(像素是屏幕的基础单位)。
   那么具体到鼠标上的表现是什么呢?假设该鼠标默认为400dpi,那么就是指鼠标移动一英寸其引擎读取以及处理了400个单位的像素,也就是数在win系统默认6的速度下,鼠标指针移动了400个像素!
  假设你使用的桌面分辨率是800*600,那么你的鼠标只需在鼠标垫上移动2英寸(5.08CM),你的光标就可以从屏幕横向的一端移动到另一端(800个像素点),对于其他分辨率也相同。那么400DPI和800DPI在同样分辨率下到底有什么区别呢? 假如仍以800*600的分辨率和WINDOWS默认鼠标速度为基础,400DPI鼠标移动一英寸的同时,反馈给系统400个点的数据,光标可以横向移动半个屏幕的距离。而800DPI的鼠标移动一英寸,反馈给系统800个点的数据,光标可以横向移动一个屏幕的距离。特别注意:在这两种情况下,在横向移动的过程中,屏幕光标的行走路线上的每一个点都可以被定位到,只要你的手可以精细地控制鼠标,理论上你可以移动到屏幕上任何一个点。也就是说,高DPI的鼠标虽然使你鼠标移动更少的距离就可以换来光标的大范围移动,但这种类似“加快光标移动速度”的过程中,没有牺牲你的定位精度,你仍然可以定位到屏幕上的任何一个点,只要你能精细地控制自己的手!


总结:1,低DPI调高鼠标速度,是不能取得和高DPI鼠标相同的定位效果的!2,调高鼠标速度,是以牺牲光标定位精确度为代价的,在轻微提高鼠标速度时,这种现象可能不很明显,但是一旦将鼠标速度调到非常高,那么就会严重影响定位》(ps:本人测试发现第二的表现不明显,不知道xd门以为如何?)(pss:好像在哪里看见过一个动态图片,上面就有给小白扫盲的~)
1302010406_918621c9.jpg
cpi:(count per inch)既 每英寸采样率,其实说起来这个跟dpi确实不容易区分,因为其表现的方式一样,区别主要是定不一样~
那么cpi具体是什么呢?其实这是由芯片生产厂商安捷伦定义的标准!可以用来表示光电鼠标在物理表面上每移动1英寸(约2.54厘米)时其传感器所能接收到的坐标数量。比如,罗技MX518光电鼠标的分辨率为1600 cPI,也就是说当使用者将鼠标移动1英寸时,其光学传感器就会接收到反馈回来的1600个不同的坐标点,经过分析这1600个不同坐标点的反馈,鼠标指针同时会在屏幕上移动1600个像素点。反过来,鼠标指针在屏幕上移动一个像素点,就需要鼠标物理移动1/1600英寸的距离。所以,CPI高的鼠标在高分辨率的屏幕下有更好的表现。

  PS:当然并不是说cpi比dpi好或者dpi比cpi好,这两个其实所表达的意思都差不多的~
pss:其实我也有点迷糊,望大神补充……
   ce83N7eg1yhKM.jpg
鼠扫描率  (fps):

鼠标扫描既图像处理速。     扫描率×COMS分辨率=图像处理速度,       鼠标扫描率也叫鼠标的采样频率,指鼠标传感器每秒钟能采集并处理的图像数量。扫描率也是鼠标的重要性能指标之一,一般以“FPS”为单位。也就是鼠标图像处理速度单位FPS。FPS全称是frame per second,即每秒多少帧。一般来说扫描率超过6000FPS之后,可以不用鼠标垫也能流畅使用。
该参数具体是由光头跟引擎一区工作完成的!
而我们说平常所说的a5050 a9800等并不能代表fps……这只是芯片决定了该参数(我有点饶舌……)

这里就要说道光头跟引擎的工作原理了……
首先说下光电鼠标的大概原理和构成:光学感应器、光学透镜、发光二极管、接口微处理器、轻触式按键、滚轮、连线、PS/2或USB接口、外壳等


1,鼠标传感器的发光部分一般是普通的二极管,(激光,不可见光的光头都是一种表现方式),其将光投射到鼠标底部CMOS光头对着的鼠标垫上,使其反射光,从而成像。

2,反射的像经过鼠标底部的透镜(放大),被CMOS光头捕获,同时DSP(数字处理芯片),根据CMOS光头矩阵的中所捕获的前后两幅像之间的变化,经过计算,向PC反馈鼠标在X轴和Y轴方向上的移动,例如(X: 30;Y:-20 )。关于CMOS光头矩阵,实际上是类似于下面图片里左边的这样一个格子,每一格的长度和宽度都是一个采样像素点,不同的鼠标,CMOS矩阵的大小可能不同,比如IE系列用的是22*22的CMOS矩阵,而MX系列用的是30*30的CMOS矩阵。通过前后两次光头成像的图片放在CMOS矩阵里进行比较,DSP就可以得出鼠标移动的数据,比如在下面的这个例子里,通过在矩阵里比较前后两幅图片,可以发现鼠标进行了(X:-4;Y-1)的移动。当前后两幅图片的相关性太小,或者完全不同的时候(一般在高速移动鼠标时可能造成这种情况),DSP无法通过比对上下两幅图片在CMOS矩阵里的关系时,那么就无法计算鼠标的移动数据也就出现了我们所说的丢帧(光标要么不动,要么乱动),比如在下面这个前后两幅画面中(心型的画面快速向左上方移动),DSP根据比对结果,就很难计算出实际上鼠标的移动,也就无法向PC反馈正确的数据。3,PC接到鼠标反馈的移动的数据,以及WINDOWS系统里设定的鼠标速度数据,进行计算,从而得到光标在屏幕上应移动的,并传递指令给显卡。

4,显卡根据收到的光标移动的数据,在每一帧显示信号里调整光标的显示的位置,并输出给显示器进行显示。首先说最简单的像素处理能力,像素处理能力就是指DSP在一秒中可以进行比对分析的像素的数量,简单算来就是用:CMOS矩阵里像素数量*扫描频率,这个概念实际上是LOGI先推的,号称每秒470万像素处理能力的MX引擎,除以CMOS矩阵30*30=900像素,得出每秒的扫描频率应该是5222次/秒。 同理,IE3如果计算像素处理能力的话,应该是用扫描频率6000次/秒*CMOS矩阵像素数量(22*22=484)= 290.4万像素/秒,抛却MS在DSP软件和计算方法设计上的功力要比LOGI强的因素,大家可以发现,没有必要太迷信这个像素处理能力的概念,因为IE3虽然像素处理能力比MX少了一大截,但是定位和移动都是如此出色。

想获得越高DPI, CMOS矩阵和DSP就需要能感应的更小的鼠标移动。当然,精度越高的光学引擎,价格自然也越贵。题外话:除了提升CMOS矩阵和DSP之外(这两个东西的提升比较高级,一般只有芯片厂家才能够调整,比如安捷伦自己),那么鼠标生产厂商有没有别的办法来提升DPI呢? 答案是有的,中间的机关就在透镜上。 这个逻辑就是,既然在同一个芯片上,不能把CMOS和DSP所能感应的最小移动幅度降低,那么把透镜放大倍数加倍,使像变大一倍(如下图),这时原来的0.00125英寸的移动,在CMOS镜头采样的时候,就变成了类似0.0025英寸的大小,从而可以被400DPI的鼠标识别了,这时400DPI的鼠标的CMOS和DSP,变得和800DPI的鼠标类似了。关于鼠标最大移动速度和丢帧的关系,正如我们前文所说,当CMOS矩阵前后两个采样的图片不能够互相比对的时候,那么DSP就不能判断鼠标进行了什么样的移动,丢帧也就产生了。以向左40英寸/秒的移动速度来做个例子,一个每秒2000次采样,400DPI的鼠标,上下两次采样中鼠标向左移动了40英寸/2000=0.02英寸,对应由于这个鼠标的CMOS矩阵每个像素的宽度是0.0025英寸。通过这个计算也可以看出,当采样频率不能提高时并且CMOS矩阵数目一定的情况下,片面增加DPI(降低CMOS矩阵里每一格的宽度),反而可能更导致丢帧。因此,鼠标DPI的提升,必须与采样频率和像素处理能力同步,才能避免丢帧的问题。



激光引擎和光学引擎的区别

从原理上来讲是类似的,但是由于激光是相干光~ 所以具有比LED光源更好的特性~ 激光引擎可以支持的表面包括:纸,木材,包装纸,粗斜纹棉布,棉布,榻榻米,地毯,金属,瓷砖,塑料,福米卡塑料,网格LED引擎可以支持的表面包括:纸,木材,包装纸,粗斜纹棉布,棉布,纯黑表面.


二关于USB

usb原装鼠标首先要明确的是,对CMOS图像进行处理的工作是由鼠标DSP来完成的,而DSP反馈给系统的信息仅仅包括X,Y轴的移动数字和按键信号,这个信息的体积非常小,可能只有几十个字节就足够,而我们所知的USB的带宽:USB .0标准规定了以下三种传输速率:低速模式传输速率为1.5Mbps,多用于键盘和鼠标。全速模式传输速率为12Mbps。高速模式传输速率为480Mbps。假如每一次鼠标反馈的数据字节有4bit,那么在125HZ的报告率下,也就是说鼠标每秒钟向PC报告125次,这个带宽占用也仅有8Kbps,即使在1000HZ的报告率下,带宽占用也仅有64Kbps, 即使是最低的USB1.0,带宽也完全够用了,所以USB的带宽是完全能够支持高的报告的.从鼠标芯片本身来讲,越高的报告率代表了越强的处理能力,就好像大家体育课报数的时候,一个队伍可以一秒报10个,另一个队伍可以一秒报100个,那第二支队伍的能力明显要高于第一支队伍。从这一点上来看,高的报告率的芯片,也是对厂家技术能力的一个体现,但是这种体现对玩家来说真的有用吗?这个问题需要回到我们上文讲到的从鼠标移动到光标移动的全过程来说起,这个过程里,对于报告速率的瓶颈在哪里呢?首先肯定不是在鼠标芯片上,因为很多芯片已经可以实现500-1000次/秒的报告速率了,也不会在CPU的处理能力和通信带宽上,这个瓶颈其实是在----显卡输出和显示器刷新率 的环节上。

众所周之,目前一般的游戏和显示器,大家在使用的时候,一般刷新率都在100上下,比如CS,也就是说,显卡每秒输出100帧图像(这一般也是常用分辨率下,显示器能支持的刷新率水平),在这100帧图像上,每帧上面都带有一个光标的坐标。也就是说,对于使用者来说,1秒钟内只能看到100帧的光标位置。假如你的鼠标每秒钟向PC报告1000次,而显卡却只会挑选其中的100次,来据调整光标的移动并显示出来,那剩余的900次都是被忽略掉的,这种情况下,1000HZ的报告率并不比125HZ的报告率有什么优势,也就是说,报告率的提高对你使用并没有带来什么质的提升。只有当显卡的输出和显示器的频率提高了(比如显示器刷新在150HZ的时候),这时125HZ的报告率才算是不够用了,而200HZ的报告率也算有了用武之地~ 但是,又有多少玩家是在这么高的刷新率下来使用的呢?又有多少显示设备,是具有可以支持这么高刷新率的显示带宽的呢?所以,就目前情况来看,USB报告率,除了彰显厂家实力之外,体现技术竞争之外,能真正起到作用的场合,还是非常的少的!


另外就是鼠标微动以及光栅滚轮,机械滚轮等的介绍了,




发表于 2013-12-13 14:36 | 显示全部楼层
沙发 ~~~ 有时候玩游戏 能发现125Hz和500Hz的差别  也可能是错觉
发表于 2013-12-14 22:27 | 显示全部楼层
学习了   以后好忽悠小伙伴
发表于 2014-1-15 14:20 | 显示全部楼层
技术贴,没看懂,学习了。
发表于 2014-1-15 14:22 | 显示全部楼层
发表于 2014-4-3 23:16 | 显示全部楼层
发表于 2016-2-6 15:20 | 显示全部楼层
发表于 2016-3-30 15:10 | 显示全部楼层
学习了
发表于 2020-9-24 19:21 | 显示全部楼层
很清晰,涨知识了
发表于 2020-11-19 00:17 | 显示全部楼层
我靠,第三张图是XAI啊,绝版的老玩意儿了
发表于 2020-11-19 09:06 | 显示全部楼层
直男选鼠标帖
发表于 2020-11-21 22:05 | 显示全部楼层
学习学习
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|外设堂 ( 辽ICP备13014379号 )辽公网安备 21010202000549号

GMT+8, 2024-11-24 02:12 , Processed in 0.102902 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表