from machine import ADC, Pin, PWM
import time
pot = ADC(Pin(26))
r = PWM(Pin(11)); r.freq(1000)
g = PWM(Pin(12)); g.freq(1000)
b = PWM(Pin(13)); b.freq(1000)
def color(red, green, blue):
r.duty_u16(int(red/255*65535))
g.duty_u16(int(green/255*65535))
b.duty_u16(int(blue/255*65535))
def wheel(pos):
if pos < 85:
return (255 -pos*3, pos*3, 0)
elif pos < 170:
pos -= 85
return (0,255-pos*3, pos*3)
else:
pos -= 170
return (pos*3, 0, 255 - pos*3)
while True:
value = pot.read_u16()
pos = int(value / 65536*255)
color(*wheel(pos))
time.sleep(0.05)