电子说
目前市面上便宜的 MAX3010x 系列血氧心律脉搏传感器有数种款式(外观和颜色),而 MAX30100 款(绿板)确定是电路设计有问题(注A),导致血氧浓度和心律脉搏等读数不正确。
据我观察,绿板的 MAX30102 款也有同样问题,而黑板的则没问题。
MAX30100/MAX30102绿板电路图如下
图中 RCWL-9183 IC (注B)是将外部电源降压为3.3V,再经过一只三极管(注C)降压为 1.8V。
接下来就是问题所在
一般的 SCL/SDA 准位是 5V 或是 3.3V,而它是 1.8 V。如果你将 SCL/SDA直接连到 Arduino 或 ESP8266 、ESP32等开发板,读到的数据就会不正确,详下图
解决之道 --- 修改电路
修改绿板的电路把电压准位改为 3.3V,用刀片把连接 1.8V 的线切断(黄色箭头处,注D),再用一条导线连从电阻连到3.3V 输出端(红色箭头处)。
改好之后,可以再试一下读取血氧心跳数据和未改前有何不同。
黑板为何不必修改电路
因为黑板的电路设计确实有依照商品说明里写的有 3.3V 和 1.8V 两种电压准位可选择,如下图
它预设状态是使用 1 颗 0 奥姆电阻(黄色椭圆圈处)连接到 3.3V 电压(黄色箭头处)来让 SCL/SDA达到 3.3V 电压准位。
如果您要改为 1.8V,可以将该电阻转180度连到绿色箭头处。电路板后面也有预留电压准位选择焊板(黄色椭圆圈处),但必须先移除 0 奥姆电阻,然后再将中间焊板与1.8V焊板短路。
注A: 这款传感器设计的 SCL/SDA电压准位是从 1.8V 拉过来,而一般常见的电压准位是 5V 或 3.3V,这还是首次看到 1.8V 呢。由于我本身非电子专业背景,无法判定原设计是否错误,说不定这款模块原先就是专为 1.8V 的电子设备使用的,后来却被拿来连接 5V 的 Arduino、3.3V 的 ESP8266 和 ESP32。果真如此的话,想要当一位 Maker 也不能只是傻傻地拿到模块就用,还是要多多少少了解一下手上的模块他的电路是如何设计的。
注B: 因不同制造商,编号有多款,或是 N1IF、HX-JE...等。
注C: 此图未标出零件编号,因不同制造商,编号有多款,或是 65K5...等。
注D: 请用电表测量切断处确实断开。
后记
翻看 Digi-Key 的电路图,原始设计的电压准位应该是有 1.8V/3.3V 这两种选项,今天会有这个问题,可能是厂商在抄板制造时省略了部分细节,导致这个结果。
审核编辑:刘清
全部0条评论
快来发表一下你的评论吧 !