from machine import Pin , ADC
import neopixel
pot = ADC(Pin(4,Pin.IN))
NUM_LEDS = 16
leds = neopixel.NeoPixel(Pin(15,Pin.OUT),NUM_LEDS)
def convert(x, in_min, in_max, out_min, out_max):
return (x - in_min) * (out_max - out_min) // (in_max - in_min) + out_min
# 1. naloga
# prikaži pozicijo potenciometra na krogu
# recimo če je ptenciometer na 0, gori LEDica 0
# če je na 4096, gori zadnja ledica (NUM_LED)
# PAZI, da funkciji convert() poveš pravilno število LEDic za out_max
while True:
for i in range(NUM_LEDS):
leds[i] = [0,0,0]
leds.write()
if i == (convert(pot.read(),0,4096,0,NUM_LEDS)):
leds[i] = [0,255,0]
leds.write()
# 2. naloga
# s pomočjo funkcije convert, na 2 krogih z 10 LEDicami
# izpisuj podatke 1 - krog (temperatura), 2 - krog (vlaga)
# naredi še, da bolj kot je vroče, bolj so rdeče ledice proti vrhu
# bolj ko je vlažno, bolj je modro
# ne pozabi kako smo to delali: leds[i] = [i*redSteps, 255 - (i*redSteps), 0]