Files
notes-techniques/notes/technologie/VL6180X - catpeur de distance - code.md

14 lines
1.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
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 lalimenter 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)](https://git.abonnel.fr/cedricAbonnel/notes-techniques/raw/branch/main/notes/technologie/VL6180X%20-%20catpeur%20de%20distance%20-%20code.c)
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 labsence 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.