import time
import neopixel
from machine import Pin, ADC
import random
from time import sleep
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
pList=[15,2,4,18,19,21,22,23,13,27,32,33]
pins=[]
for p in pList:
pins.append(Pin(p,Pin.OUT))
gumb=Pin(14, Pin.IN, Pin.PULL_UP)
NUM_LED = 10
potPin = 12
leds = neopixel.NeoPixel(Pin(5), NUM_LED)
pot = ADC(Pin(potPin))
def igra():
while True:
i=True
r=random.randint(0,9)
#print(r+1)
while i==True:
pins[10].value(0)
pins[11].value(0)
x=convert(pot.read(),0,4096,0,10)
leds.fill([0,0,0])
leds.write()
if x==0:
for e in range(1):
pins[e].value(1)
for o in range(1,10):
pins[o].value(0)
if x==1:
for e in range(2):
pins[e].value(1)
for o in range(2,10):
pins[o].value(0)
if x==2:
for e in range(3):
pins[e].value(1)
for o in range(3,10):
pins[o].value(0)
if x==3:
for e in range(4):
pins[e].value(1)
for o in range(4,10):
pins[o].value(0)
if x==4:
for e in range(5):
pins[e].value(1)
for o in range(5,10):
pins[o].value(0)
if x==5:
for e in range(6):
pins[e].value(1)
for o in range(6,10):
pins[o].value(0)
if x==6:
for e in range(7):
pins[e].value(1)
for o in range(7,10):
pins[o].value(0)
if x==7:
for e in range(8):
pins[e].value(1)
for o in range(8,9):
pins[o].value(0)
if x==8:
for e in range(9):
pins[e].value(1)
pins[9].value(0)
if x==9:
for e in range(10):
pins[e].value(1)
if gumb.value()==0:
if x!=r:
leds.fill([255,0,0])
leds.write()
if x<r:
pins[10].value(1)
if x>r:
pins[11].value(1)
sleep(1)
if x==r:
for i in range(NUM_LED):
if i<=r:
leds[i]=[0,255,0]
leds.write()
sleep(1)
i=False
igra()