大家好,
我买了一个标有" m3pryw0f" 的传感器,以为是 MPL3115A2。I2C 地址是正确的,但当我读取 WHO I AM 时,结果却是 0x0E,而不是 0xC4。此外,在按照快速启动步骤操作后,传感器似乎无法识别超过 1 米的高度变化,尽管它应该显示 0.3 米的显著变化。最后,当我读取压力测量值 LSB 的低 4 位时,它们并不像数据手册上说的那样为 0(即使传感器没有移动,它们也会随机变化)。
我买的传感器可能不是 MPL3115A2 吗?这个标记是什么意思?如能得到任何帮助,我们将不胜感激。
您好,
首先,M3PR 是 MPL3115A2 的正确零件标记。
当您读取 WHO_AM_I 寄存器 (0x0C) 时,您是否有逻辑分析器或示波器来了解 I2C 总线上发生了什么?查看您的源代码(至少是初始化和数据处理例程)可能也会有所帮助。
要实现 30 厘米分辨率,必须设置最大过采样(OS[2:0] = 0x07)。
看看我的 MPL3115A2 和 KL25Z示例项目,你会发现它很有用。
希望对您有所帮助。
此致,
托马斯
PS: 如果我的回答有助于解决您的问题,请标记为"正确" 或 "有帮助"。谢谢。