新手入门
- 积分
- 15
- 金钱
- 15
- 注册时间
- 2021-7-29
- 在线时间
- 3 小时
|

楼主 |
发表于 2021-8-9 14:21:33
|
显示全部楼层
我想问的是最初的测距的值是什么变量,怎么测得的,下面我摘录了一些代码,Distance_data的值来自于数据指针pdata->RangeMilliMeter,而pdata和pRangingMeasurementData是同地位的数据指针,可以看到pRangingMeasurementData->RangeMilliMeter的值应该就是测距的值,但是和它有关的tmpuint16部分的代码就看不明白了,尤其是这一句
tmpuint16 = VL53L0X_MAKEUINT16(localBuffer[11], localBuffer[10]);
文件里也找不到VL53L0X_MAKEUINT16这个函数。。。。
Distance_data = pdata->RangeMilliMeter;
if (RangeFractionalEnable) {
pRangingMeasurementData->RangeMilliMeter =
(uint16_t)((tmpuint16) >> 2);
pRangingMeasurementData->RangeFractionalPart =
(uint8_t)((tmpuint16 & 0x03) << 6);
} else {
pRangingMeasurementData->RangeMilliMeter = tmpuint16;
pRangingMeasurementData->RangeFractionalPart = 0;
} |
|