Backup vom Rp2040Zero 16.05.2026 hinzugefügt
This commit is contained in:
46
main_backup.py
Normal file
46
main_backup.py
Normal file
@@ -0,0 +1,46 @@
|
||||
import time
|
||||
from machine import Pin, I2C, time_pulse_us
|
||||
from lcd1602 import LCD1602
|
||||
from vl53l0x import VL53L0X # muss als vl53l0x.py auf dem Board liegen
|
||||
|
||||
# --- LCD Setup (RS=6, E=7, D4=8, D5=9, D6=10, D7=11) ---
|
||||
lcd = LCD1602(6, 7, 8, 9, 10, 11)
|
||||
|
||||
# --- HC-SR04 Setup ---
|
||||
trig = Pin(3, Pin.OUT)
|
||||
echo = Pin(2, Pin.IN)
|
||||
|
||||
def read_hcsr04():
|
||||
trig.low()
|
||||
time.sleep_us(2)
|
||||
trig.high()
|
||||
time.sleep_us(10)
|
||||
trig.low()
|
||||
try:
|
||||
duration = time_pulse_us(echo, 1, 30000) # Warte max. 30ms
|
||||
distance = (duration / 2) / 29.1 # cm
|
||||
except OSError:
|
||||
distance = -1 # kein Messwert
|
||||
return distance
|
||||
|
||||
# --- VL53L0X Setup ---
|
||||
i2c = I2C(0, sda=Pin(4), scl=Pin(5), freq=400000)
|
||||
sensor = VL53L0X(i2c)
|
||||
|
||||
# --- Hauptloop ---
|
||||
while True:
|
||||
dist_us = read_hcsr04()
|
||||
dist_tof = sensor.range/10 # Adafruit-Treiber liefert .range in mm modifiziert zu cm
|
||||
|
||||
lcd.clear()
|
||||
lcd.move_to(0, 0)
|
||||
if dist_us >= 0:
|
||||
lcd.putstr("US: {:.1f} cm".format(dist_us))
|
||||
else:
|
||||
lcd.putstr("US: ---")
|
||||
|
||||
lcd.move_to(0, 1)
|
||||
lcd.putstr("ToF: {} cm".format(dist_tof))
|
||||
|
||||
time.sleep(0.5)
|
||||
|
||||
Reference in New Issue
Block a user