超音波センサーで取得した距離をOLEDディスプレイに表示
超音波センサーで取得した距離をOLEDディスプレイに表示します。
センサーとディスプレイの設定はこちらから
超音波センサー OLEDディスプレイ
配線図
実際の配線
MicroPythonプログラム
import machine import utime import ssd1306 # 超音波センサーのGPIO設定 trigger = machine.Pin(14, machine.Pin.OUT) echo = machine.Pin(15, machine.Pin.IN) # oledディスプレイの初期設定 sda = machine.Pin(0) scl = machine.Pin(1) i2c = machine.I2C(0,sda=sda, scl=scl, freq=400000) oled = ssd1306.SSD1306_I2C(128, 64, i2c) def read_distance(): trigger.low() utime.sleep_us(2) trigger.high() utime.sleep(0.00001) trigger.low() while echo.value() == 0: signaloff = utime.ticks_us() while echo.value() == 1: signalon = utime.ticks_us() timepassed = signalon - signaloff distance = (timepassed * 0.0343) / 2 return distance while True: oled.fill(0) # ディスプレイの初期化 d = read_distance() d = round(d, 2) # 小数点以下を2桁に丸める oled.text('distance', 5, 5) oled.text(str(d), 30, 25) oled.show() utime.sleep(0.1)
実行
詳しくは