Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
| embedded_systems:experimentiersystem:vl53l0x-tof-sensor [2020-12-01 09:15] – jonas.halbeisen | embedded_systems:experimentiersystem:vl53l0x-tof-sensor [2024-04-19 13:25] (aktuell) – Moritz Lammerich | ||
|---|---|---|---|
| Zeile 3: | Zeile 3: | ||
| Der [[ https:// | Der [[ https:// | ||
| - | ===== Verwendung mit dem MPC555 / Zynq7000 ===== | + | |
| + | ===== Verwendung mit Python unter Linux auf dem Zynq7000 ===== | ||
| + | |||
| + | Der VL53L0X wird direkt an eine I2C-Schnittstelle angeschlossen. | ||
| + | ^ Zynq7000 ^ VL53L0X | ||
| + | | MIO10 | SCL | | ||
| + | | MIO11 | SDA | | ||
| + | | < | ||
| + | | 3.3V | Vcc | | ||
| + | | GND | GND | | ||
| + | |||
| + | ==== Python Code ==== | ||
| + | |||
| + | Die Sensoren können mit Hilfe des '' | ||
| + | |||
| + | Der XSHUT Pin jedes VL53L0X Sensor benötigt einen eigenen '' | ||
| + | Die Pins/ | ||
| + | |||
| + | Beispiel: '' | ||
| + | |||
| + | Komplettes Beispiel: | ||
| + | <code python> | ||
| + | from vl53l0x_helper import init_vl53l0x | ||
| + | |||
| + | # initialize 2 ToF sensors conected to FlinkGPIO channels 0 and 1 | ||
| + | tofs = init_vl53l0x([0, | ||
| + | |||
| + | # print measurements | ||
| + | for _ in range(1, 11): | ||
| + | # combine all measurements into 1 string to print everything on one line | ||
| + | line = " " | ||
| + | print(" | ||
| + | |||
| + | </ | ||
| + | |||
| + | ===== Verwendung mit Deep auf dem MPC555 / Zynq7000 ===== | ||
| Der VL53L0X kann mit dem MPC55 und dem Zynq7000 verwendet werden. Es wird jedoch ein zweiter Mikrocontroller zum Anschluss an diesen benötigt. Die OST stellt eine fertige Firmware für das [[https:// | Der VL53L0X kann mit dem MPC55 und dem Zynq7000 verwendet werden. Es wird jedoch ein zweiter Mikrocontroller zum Anschluss an diesen benötigt. Die OST stellt eine fertige Firmware für das [[https:// | ||
| Zeile 18: | Zeile 53: | ||
| ==== Verdrahtung Zynq7000 ==== | ==== Verdrahtung Zynq7000 ==== | ||
| - | ^ Zynq7000 ^ STM32L432KC ^ | + | ^ Zynq7000 ^ STM32L432KC |
| - | | MIO 12 | PA1 (A1) | | + | | MIO 12 | PA1 (A1) |
| - | | MIO 11 | PA11 (D10) | | + | | MIO 11 | PA11 (D10) |
| - | | MIO 10 | PA7 (A6) | | + | | MIO 10 | PA7 (A6) |
| - | | MIO 13 | PB0 (D3) | | + | | MIO 13 | PB0 (D3) |
| - | | GND | GND | | + | | GND | GND | GND |
| Anmerkung: die relevanten Pins des STM32L432KC sind 5V tolerant, es sind also keine Pegelwandler nötig. | Anmerkung: die relevanten Pins des STM32L432KC sind 5V tolerant, es sind also keine Pegelwandler nötig. | ||
| Zeile 83: | Zeile 118: | ||
| <code java> | <code java> | ||
| + | // Nur MPC555 | ||
| if (tof.resetDone()) | if (tof.resetDone()) | ||
| { | { | ||
| Zeile 89: | Zeile 125: | ||
| </ | </ | ||
| - | === Reset === | + | === Reset (nur MPC555) |
| Die reset() Methode veranlasst einen Reset die STM32L432KC und der Vl53L0X Sensoren. | Die reset() Methode veranlasst einen Reset die STM32L432KC und der Vl53L0X Sensoren. | ||
| Zeile 99: | Zeile 135: | ||
| Des Weiteren leuchet LD3 (grüne LED unten links, wenn USB Port oben), wenn der STM32L432KC auf einen SPI Transfer wartet und erlischt während dem Messvorgang. | Des Weiteren leuchet LD3 (grüne LED unten links, wenn USB Port oben), wenn der STM32L432KC auf einen SPI Transfer wartet und erlischt während dem Messvorgang. | ||
| Diese sollte im normalen Betrieb blinken. | Diese sollte im normalen Betrieb blinken. | ||
| + | Das GPIO Signal der LED ist auf Pin D13 am Board zu finden. | ||