关于VL53L0X测距的问题?

2019-07-21 00:26发布

串口打印出来的信息:
SPADS Calibration Error,Restart this step
The SPADS Calibration Start...
Calibration is error!!---------------------------------------------------------------
IIC调出来可以读寄存器地址0x00c0的数据是0xEEAA,也改了寄存器地址为0x54,再读出来也没错,但是到了SPADS校准这里就出现问题了。
Debug发现在VL53L0X_StaticInit()函数里的VL53L0X_get_info_from_device()这个函数里
        if (((option & 1) == 1) &&
                        ((ReadDataFromDeviceDone & 1) == 0)) {
                        Status |= VL53L0X_WrByte(Dev, 0x94, 0x6b);
                        Status |= VL53L0X_device_read_strobe(Dev);//执行到这句的时候 我Dev的设备地址会变成别的,多调试几次还有几率出现0x54(设定的IIC寄存器的设备地址)。
                        Status |= VL53L0X_RdDWord(Dev, 0x90, &TmpDWord);
为什么会出现这个情况呢 ?
初始化的时候也用到了VL53L0X_get_info_from_device();这个函数,就没报错。

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。