ST意法半导体
直播中

成尔秩

8年用户 1034经验值
私信 关注
[问答]

如何添加多个vl53l0x传感器?

我已经成功实现了一个 vl53l0x 传感器,但希望添加更多。我找到了“AN4846 Application note Using multiple VL53L0X in a single design”文档:
https://www.st.com/content/ccc/resource/technical/document/application_note/group0/0e/0a/96/1b/82/19/4f/c2/DM00280486/files/DM00280486.pdf/jcr:内容/翻译/en.DM00280486.pdf

在“VL53L0X API 管理”下,它指定:
在 vl53L0x_platform.h API 文件中,将 VL53L0x_SINGLE_DEVICE_DRIVER 宏设置为 0,以便 API 实现自动适应多设备上下文。

但是我在 vl53L0x_platform.h 文件中找不到任何名为“VL53L0x_SINGLE_DEVICE_DRIVER”的东西。

我在哪里可以找到它?或者在没有更新文档的情况下更新了文件?如果是这样,是否应该跳过此步骤?




回帖(1)

易里更

2022-12-27 14:30:40
如果你有一个工作,你就准备好了。虽然有一些技巧。
从所有处于关闭状态的传感器开始。
然后通过升高关断引脚调出第一个。传感器将到达默认地址。
发出更改地址的命令。- 设置 I2C 地址
然后调出第二个传感器。
发出更改地址的命令。
重复直到所有传感器都有不同的地址。- 我使用 0x62、0x64、0x66、0x68、0x6A...
从技术上讲,您不必更改最后一个地址,但如果您这样做,您可以使用默认地址作为健康检查。如果您对它执行 ping 操作并得到答复,则说明您的一个或多个传感器已重置。
然后诀窍是确保您在拨打电话时设置了正确的地址。

伪代码看起来像这样(它用于 L1X 芯片,但你的类似:


  • void ResetAndInitializeAllSensors(void)
  • {
  •         VL53L1X_ERROR status;


  •         uint8_t i, Sensor, temp;
  •         int16_t Offset;


  •         ResetAllSensors();
  •         HAL_Delay(10);
  •         for (i = 0; i < NumOfTOFSensors; i++)
  •         {
  •                 Dev = 0x52;
  •                 TurnOnSensor(i);
  •                 HAL_Delay(5);
  •                 do {
  •                         status = VL53L1X_BootState(Dev, &temp);
  •                         HAL_Delay(5);
  •                         if (status) {
  •                                 UART_Print("BootState returned bad statusn");
  •                         }

  •                 } while (temp != 3);


  •                 status += VL53L1X_SensorInit(Dev);        /* Initialize sensor  */
  •                 status += VL53L1X_SetI2CAddress(Dev, DevAddr);        /* Change i2c address Left is now 0x62 and Dev1 */

  •                 CHECK_ERROR(status);

  •                 Dev = DevAddr;
  •                 //status += VL53L1X_SensorInit(Dev);        /* Initialize sensor  */
  •         }
  •         UART_Print("All Chips bootedn");


举报

更多回帖

发帖
×
20
完善资料,
赚取积分