我正在使用带有 lps25hb 的 nucleo f401re。目前我得到的值非常错误,这是由读取寄存器引起的。
例如当我调用由两个字节组成的温度寄存器时
HAL_I2C_Mem_Read(&hi2c1, LPS25HB_I2C_ADD_H, LPS25HB_TEMP_OUT_L,
I2C_MEMADD_SIZE_8BIT, bufp, 2, 1000);
它仅将 LPS25HB_TEMP_OUT_L 读取到 bufp p 数组。如果我分别调用 LPS25HB_TEMP_OUT_L 和 LPS25HB_TEMP_OUT_H 这两个寄存器,它工作正常。因此我怀疑我在传感器的自动递增寄存器地址设置中遗漏了什么。
提前致谢。
2023-2-2 11:32:31
不,我必须更改 LPS25HB_TEMP_OUT_L 的最高有效位,因此类似于 0x80 | LPS25HB_TEMP_OUT_L
不,我必须更改 LPS25HB_TEMP_OUT_L 的最高有效位,因此类似于 0x80 | LPS25HB_TEMP_OUT_L
举报