1.2 KiB
1.2 KiB
Voici un exemple complet avec un ESP32 et un VL6180X en I²C, en environnement Arduino (PlatformIO ou Arduino IDE). Le code lit la distance (mm) et la luminosité ambiante (ALS).
Câblage typique : VL6180X VDD→3V3, GND→GND, SDA→GPIO21, SCL→GPIO22. Si ton module VL6180X a une entrée “VIN”, tu peux parfois l’alimenter en 5 V (régulateur intégré), mais les lignes I²C doivent rester compatibles 3,3 V (la plupart des breakouts gèrent ça, sinon il faut un level shifter).
Code Arduino (ESP32 + Adafruit_VL6180X)
Voir le fichier Code Arduino (ESP32 + Adafruit_VL6180X)
Remarques pratiques :
- Si tu as plusieurs capteurs VL6180X sur le même bus, il faut gérer la broche CE/XSHUT (selon module) pour démarrer un capteur à la fois et changer son adresse I²C (ce capteur le permet).
- Si tu vois “non détecté”, la cause la plus fréquente est l’absence de pull-ups I²C (certains modules en ont déjà), un câblage SDA/SCL inversé, ou un module alimenté en 5 V avec I²C non compatible 3,3 V.