from utime import sleep
from machine import Pin, I2C, ADC
from ssd1306 import SSD1306_I2C
# Pins festlegen
poti = ADC(28)
scl_pin = 27
sda_pin = 26
# Auflösung des Displays festlegen
pix_x = 128
pix_y = 64
# Funktion um Display zu initialisieren
def init_i2c(scl_pin, sda_pin):
# Initialize I2C device
i2c_dev = I2C(1, scl=Pin(scl_pin), sda=Pin(sda_pin), freq=200000)
i2c_addr = [hex(ii) for ii in i2c_dev.scan()]
if not i2c_addr:
print('Kein i2c-Gerät gefunden!')
sys.exit()
else:
print("I2C Addresse : {}".format(i2c_addr[0]))
print("I2C Konfiguration : {}".format(i2c_dev))
return i2c_dev
# Display initialisieren
i2c = init_i2c(scl_pin, sda_pin)
oled = SSD1306_I2C(pix_x, pix_y, i2c)
oled.text("Raspberry Pi", 0, 5)
oled.text("Pico", 0, 15)
oled.text("bereit", 0, 25)
oled.show()
sleep(1)
while True:
spannung = str(poti.read_u16())
oled.fill(0)
oled.text("Spannung:", 0, 5)
oled.text(spannung, 0, 20)
oled.show()
sleep(0.1)