鼠标学习笔记(1)ADNS5090基本功能介绍

昨天拆了一个鼠标,其中的核心光流芯片丝印是:A5090 B1201A。这个芯片是Avago(现Broadcom)的ADNS-5090型光电导航传感器芯片。

这里是它的Datasheet技术手册:
https://www.application-datasheet.com/pdf/broadcom/adns-5090.pdf

ADNS-5090基本功能描述

The Avago Technologies ADNS-5090 is a low power, small form factor optical mouse sensor. It has a low-power architecture and automatic power management modes, mak
ing it ideal for battery, power-sensitive applications – such as cordless input devices.

ADNS-5090是一颗低功耗、小体积的光学鼠标传感器。它具备低功耗架构和自动电源管理机制,因而适用于电池供电、功耗敏感型应用,例如无线输入设备(无线鼠标)。

The ADNS-5090 is capable of high-speed motion detection – up to 30ips and 8G. In addition, it has an on-chip oscillator and LED driver to minimize external components.

这颗芯片具有高速运动检测能力 – 支持最高30ips(英寸/秒)的速度检测和8G的加速度检测。额外的,芯片本身内置震荡晶振和LED驱动,以减少外围元件、降低电路复杂度。

The ADNS-5090 along with the ADNS-5110-001 lens, LED clip, and HLMP-EG3E-xxxxx LED form a complete and compact mouse tracking system. There are no moving parts and this translates to high reliability and less maintenance for the end user. In addition, precision optical alignment is not required, facilitating high volume assembly.

这颗ADNS-5090芯片,可搭配ADNS-5110-001镜头模组、LED固定架、HLMP-EG3E-xxxxx系列LED灯,构成一套完整的轨迹跟踪系统(鼠标)。

整套总成没有机械移动结构,意味着具有更高的稳定性、可靠性,更低的维护、维修成本。无需精密的光学对准,因而适用于大规模生产与手动批量组装。

The sensor is programmed via registers through a fourwire serial port. It is housed in an 8-pin staggered dual inline package (DIP).

通过四线串行接口可对此传感器(ADNS-5090)进行寄存器访问从而对其编程。整颗芯片是8引脚错列式双列直插封装。

NOTE: The ADNS-5090 Low Power Optical Mouse Sensor is not designed for use with blue LEDs. The ADNS-4000 product is available from Avago for use with Blue LEDs

注意:5090传感器不适合与蓝光LED搭配使用。适合于蓝光LED的相似传感器是ADNS-4000型号。

额外的困惑:DIP-8我见过的基本就是对称双列,这里的ADNS-5090为什么要非对称、错列封装?

每天学习一些新的知识,尽可能保持自己的学习动力。

Related Posts

树莓派(4)内置变压器的RJ45网口

手中的树莓派3B+,相比3B多了一个PoE受电功能,可以直接从PoE网口上获取电能。究其原因是这台电脑的RJ45网口并不是简单的网口,它内置了一套隔离变压器系统。 我现在手中的这台,RJ45上面丝印是TRJG0926HENL,但是按照这个丝印找不到完全相似的,但我找到了一个LPJG0926HENL,应该是完全一样、可以平替的,商品在这里。 当然淘宝有更便宜的,不过淘宝上面那些便宜的会注明是原装正品9元、高仿品8元。我觉得它们这样注明了原装品和高仿品,反而让我不敢下单购买。谁知道这些所谓的“原装正品”会不会是“高高仿品”? 索性还是从相对更稳妥一些的IC一站式采购平台购买,更稳妥、安全一些。反正这个RJ45也不是很贵,单颗26元左右,我想买回来一颗上手把玩一阵,价格上还是可以接受的。 从这个地址能够看到Pi3B+中相关部分的电路图,主板上引出来的4Pin并没有奥秘在其中,只是单纯的将RJ45中相关的引脚直接引出来就可以了,所以等RJ45到了我手,可以很方便的仿照这个电路将4Pin找到,并通过现在手中现成的PoE-HAT取电出来,如果不出意外,应该能够成功取出5V2.5A的电来。

鼠标学习笔记(2)ADNS5090功能特性

功能特性: 1、低功耗架构;2、小型化尺寸;3、可对轮询周期、响应时间进行编程调整;可在不同模式之间切换以达到节能模式;4、可根据表面环境的明亮度,智能的调整LED电流;5、高速的动作检测能力,可达30ips和8G的性能;5、动作检测的外部中断输出功能;6、内置晶振;7、分辨率可达1750cpi;8、可支持低压(2.8V)运行;9、四线串口接口;10、外围组件构成简单。 应用领域: 1、光学光电鼠标、光学光电轨迹球;2、集成的输入设备;3、电池供电的输入设备。 对上面这些介绍中的专业术语、物理量(例如cpi、ips等)并不清楚是什么含义。等到后面学习、遇到再重新理解。以上翻译基本就是按照datasheet中的英文,直接翻译的。具体都是什么含义现在可以说是“一无所知”。

树莓派(3)新入手了一块3B+的主板

考虑到树莓派4B实在有些昂贵,所以我最终没有购买,而是选择了一个相对更便宜的树莓派3B+。得益于前些天新买的一个带有POE功能的交换机,现在桌子上摆放着的3B+是没有通过电源供电、而是直接从网线取电运行的。 我原本以为使用了POE这样“先进”的技术,桌面上能够更整洁一些,然而事实是:桌面上并没有因为少了一根电源线而有任何更整洁的迹象,恰恰相反——因为桌子上瞬间又多了显示器、键盘、鼠标……所以现在我的桌面更加凌乱了。 使用电脑这么多年,总是幻想着桌面能够整洁到好像“苹果广告海报”那样干净、清爽。然而现实非常残酷,桌面上总会因为各种各样的线材而凌乱不堪。几乎每半年左右,就要彻头彻尾的收拾一遍,但好景不长,无论收起来多少东西,始终是乱七八糟。无线,只是一个可望不可及的愿望。 现在既然用上了3B+,那么显然之前的3B又没有用武之地了。更让我感到烦躁的是,我还有个第一代的树莓派,也一直在吃灰啊。这么多食之无味、弃之可惜的小硬件,也同样在侵占着空间,可我又实在想不出有什么办法能利用它们,这可该如何是好? 树莓派自从3B+型号开始,便开始支持了POE特性。但是最初官方提供的POE HAT,似乎存在着比较严重的问题(https://www.martinrowan.co.uk/2018/09/raspberry-pi-official-poe-hat-fail-if-you-want-to-use-the-usb-ports/),导致树莓派官方对其进行了召回。后来又推出了改进版本,并有人进行了这个改进版的评测(https://www.martinrowan.co.uk/2018/11/raspberry-pi-poe-hat-official-modified-version/)。 上面提到的这两篇文章,我想如果有时间,应该详细的阅读一下,以便对POE这个技术,有所了解。 树莓派3B+是2018年3月发布的,之后在2018年8月24日,官方宣布POE HAT设备发布。然而这款POE HAT却被网友讨论存在着诸多的缺陷: 主要缺陷是在使用POE供电的树莓派3B+上,任何一个USB接口都无法再稳定的工作,一旦通过USB接口接入设备,树莓派便会发出过流检测警告、甚至因电流过流而触发保护动作; 次要的问题是这款官网的POE HAT存在着明显的电感啸叫问题、散热风扇控制逻辑存在缺陷、以及硬件外形与树莓派主板和外壳存在兼容性干涉等。 上面提到的主要问题和次要问题中,主要问题是致命的:在实际的应用场景中,利用树莓派及它的USB连接外部设备,是十分常用的情形。无法正常使用将严重的影响树莓派的实际应用价值。 在这篇文章的总结及后续追踪中,比较明确的提出了问题产生的本质原因:POE HAT的DCDC芯片MP8007在输出端缺少滤波、从而产生了较大的纹波,此纹波直接影响到树莓派主板上的USB控制芯片,从而引发了问题。 备忘:带有隔离机制的POE PD模块: https://www.mouser.com/datasheet/2/472/ug485_si3404c3isofbevb-2507996.pdf

树莓派(2)放弃第一代、改用3B

前几天摆弄树莓派1,结果发现它实在是太慢了,幸运的是找到了一个更新的型号。我并不知道找到的是3B,我一直以为找到的是4B。结果今天准备再摆弄摆弄的时候,感觉它和网上的图片不一样,于是仔细看了一下,才发现原来是RaspberryPi3B。 而且我今天才知道原来即便是“第三代”,也分成Raspberry Pi 3B和Raspberry Pi 3B+两个不同的型号。 这里我有几个不理解的地方:3B和3B+有什么区别么?既然有区别,为什么还都要称为“第三代”、而不是直接依据区别就直接升代?另外,3B中的B又是什么意思? 为什么3B和3B+都是“第三代”? 原因在于它的核心架构并没有升级,依然是在相同的硬件架构体系下的“性能优化”,所以只会在尾缀上进行调整,不会升代。 可以理解成3B+中的“加号”就是Plus的意思,是“加强版”。这里主要加强了CPU的封装散热形式,此外就是网卡支持了POE供电机制,还有其他一些细节升级,我并没有过多的挖掘。 其中的B这个字母,是“完整版”的含义,除了B,还有A是精简版的含义。例如同样是第三代,既有3A精简版、又有3B完整版两种不同的硬件裁切版本。 了解了这些之后,我又有了入手一个Raspberry 4B+的念头了。

树莓派(1)都已经2025年了,我还在摆弄Pi1

今天翻箱倒柜,发现只有一个树莓派1在身边,好在经过一番折腾,把它收拾好了、用上了。 SD卡,16GB的,Class4速度,使用镜像安装工具,将RaspberryOS的Lite版装上; 键盘我手中虽然很多,但是试了几个USB的,都不能正常使用。后来找到一个非常便宜的USB小键盘,能用。这一点并不奇怪,现在很多USB键盘的协议都有缺陷,反而是廉价的那款键盘,更古老,协议中没有错误。 因为第一代树莓派没有Wifi,所以无法联网。好在我手中还有一个USB网卡,而且手中恰巧还有一条网线,更巧的是网线还足够长,更为幸运的是我的交换机上恰巧还有一个富裕的网口,所以也顺利的连上网了。 显示器很多,但多数都太老旧、只有VGA接口。找到一台有Hdmi接口的,而且我手中并不缺少Hdmi的线,随便找了一条就装好了。 以上就是今天的工作,虽然没有做任何实质的事情,但是至少将树莓派点亮了。接下来我将重新学习这台小电脑,争取用3-6个月的时间,把它用熟练。

电池管理芯片的使用依然存在着问题

利用电池管理芯片对锂电池进行充电、进行初级升压操作的电路部分,在修复了之前的问题之后,依然存在着(又出现了)新的问题,主要表现和可能的原因分析如下: 一、使用电池供电时,输出电压5.10V正常,但是一旦接入负载,输出电压会马上掉下去 这个“马上掉下去”也不一定每一次都会彻底掉光,有的时候掉下去了、然后去掉负载之后输出电压又能慢慢恢复成5.1V;有的时候掉下去了,撤掉负载之后就再也恢复不回来5.1V,而是会一点点彻底掉到1、2V左右。 彻底掉下去、一直掉电到1-2V,是可以理解的:现象很像是电池管理芯片停摆、不在工作了。输出电压只靠输出位置的电容给出,而此时没有接入负载,所以电容一点点的掉电、掉到1-2V左右停止。看上去虽然还有2V的输出电压,其实是浮电,没有驱动力,本质上就是芯片不工作、没有了输出电压; 有的时候接入负载掉电、撤掉负载之后输出电压又能自己一点点的恢复成5.1V,感觉就是在上面提到的电源管理芯片停摆之后,芯片自己又慢慢恢复了工作。 所以上面两个现象,本质上应该是一样的:就是电源管理芯片不工作了。而电源管理芯片之所以不工作,最大的可能是:电源管理芯片检测到了电池欠压、于是进入了欠压保护、从而停摆、不在通过电池进行电压的输出。 我接入的电池是4V的电量,不可能出现欠压的情况,由此推断很可能是电池管理芯片误判电池欠压、进而停摆。而且这个芯片检测到电池欠压、停摆之后,只有通过电源进行充电之后,才能重新恢复工作,这与我遇到的情况是相同的:一旦输出电压掉下去之后,只要再充电一下,就能够恢复到5.1V的输出水平。 所以现在的问题是:为什么带上负载之后,电源管理芯片会判定电池欠压了呢? 初步判断是我的电路图中有错误,有某些必要的动力线太细引起的电池电压欠压误判。但是这个猜测现在还没有时间仔细查看,等有时间了会重新看一下电路图,查找一下具体的原因。 二、还有一个很奇怪的现象,带着电池的同时,通过电源充电状态下,输出电压是4.6V 这个电源管理芯片是支持“边充边放”的,所以通过电源给如充电电压时,它的工作状态,正常的应该是:1、通过电源管理芯片给电池充电;2、输出电压位置应该保持5V的电压,这个输出5V无论是通过电源过去的、还是通过电池过去的,总之芯片可以持续输出一个5V的标准电压。 但是实际情况是电源接入的时候,输出电压只有4.6V。这里的4.6V并不是浮电,而是实打实有驱动力的4.6V,原因是我的负载是一个DCDC升压器,目的是将电源管理芯片视为一级升压器完成对电池从4V到5V的升压,然后二级升压器完成从5V到11.6V的升压。 当接入负载时,输出端的确出现了11.6V的电压,这意味着“负载”、也就是“二级升压器”部分的电路是正常工作的,它吃入4.6V的电压、输出11.6V的电压。工作正常。 所以我的困惑是为什么此时电源管理芯片仅能够输出4.6V的电压?这是不合理的,预期正确的输出应该是5V才对。这里我就死活想不明白了,如果也是某些线径太细引起的,似乎有些说不通——也可能说得通: 电源给电池充电是正常的,电池管理芯片的输出是通过电池进行升压输出,这是它期望升压到5V(如前文的5.1V),并且为后面的负载进行电力输出。但是电源管理芯片一旦输出端向外输出电力,电池电压马上会被拉低,于是芯片停摆,输出电压从5V降低到诸如3.2V、芯片停摆。 然而此时的电源是一直接通的,因而芯片在判定电池欠压之后马上给除了一个非常大的充电电流,对电池进行充电,同时重新激活了芯片的DCDC部分,输出部分又重新回复到5V,如此输出部分相当于是一个PMW型的输出,从而不可能达到稳定的5V输出,也不会掉电,就在PWM的平均作用下,形成了4.6V的输出电压,并且这个输出是持续、具有驱动力的,因而可以为后面的负载(二级DCDC提供电力)。 三、总结上面的现象,将怀疑重点确定 通过上面的推测,最可能的就是芯片到输出这段位置上,有一条线画错了,画得太细了。回头有时间了,要检查一下。