vl53l1x — драйвер датчика відстані VL53L1X ToF¶
Цей модуль надає драйвер для датчика відстані STMicroelectronics VL53L1X, що вимірює час прольоту (ToF) через I2C. Датчик VL53L1X вимірює абсолютну відстань до ~4 м за допомогою невидимого лазерного випромінювача на 940 нм і масиву приймачів SPAD.
Приклад використання:
import time
from machine import I2C
import vl53l1x
bus = I2C(1)
tof = vl53l1x.VL53L1X(bus)
while True:
print("Distance: {} mm".format(tof.read()))
time.sleep_ms(100)
Класи¶
- class vl53l1x.VL53L1X(bus: machine.I2C, address: int = 0x29)¶
Створити екземпляр драйвера VL53L1X.
bus— налаштований об’єкт шиниmachine.I2C, що використовується для зв’язку з датчиком.address— 7-бітна I2C-адреса пристрою. За замовчуванням0x29.
Конструктор виконує програмне скидання, перевіряє ідентифікатор моделі мікросхеми, записує блок конфігурації за замовчуванням на пристрій і застосовує виправлення регістрів під час запуску, яке ST API виконує при першому старті вимірювання. Виклик блокується приблизно на 200 мс, поки датчик стабілізується. Якщо регістр ідентифікатора моделі не повертає очікуваного значення
0xEACC, виникаєRuntimeError.- writeReg(reg: int, value: int) None¶
Записати одне 8-бітне
valueза 16-бітною адресою регістра пристроюreg.
- writeReg16Bit(reg: int, value: int) None¶
Записати 16-бітне
value(big-endian) за 16-бітною адресою регістра пристроюreg.
- readReg(reg: int) int¶
Прочитати одне 8-бітне значення з 16-бітної адреси регістра пристрою
regі повернути його якint.
- readReg16Bit(reg: int) int¶
Прочитати 16-бітне значення (big-endian) з 16-бітної адреси регістра пристрою
regі повернути його якint.
- read_model_id() int¶
Повернути вміст 16-бітного регістра ідентифікатора моделі за адресою
0x010F. Очікуване значення для VL53L1X —0xEACC.
Константи¶
- vl53l1x.VL51L1X_DEFAULT_CONFIGURATION: bytes¶
Стандартний 91-байтний блок конфігурації, що записується на пристрій починаючи з регістра
0x2Dпід час ініціалізації. Блок задає полярність переривання, поріг сигма, поріг сигналу, період між вимірюваннями, порогові значення відстані, центр/розмір ROI та інші параметри вимірювання, рекомендовані наддрібним драйвером ST. Більшість байтів не підлягають зміні користувачем; зверніться до коментарів у вихідному коді для полів, що можна налаштувати.