from machine import ADC, Pin, Timer
import time as t
pot = ADC(0)
tim1 = Timer()
leds = (0, 1, 2, 3, 4, 5, 6)
lista_Pin = list()
for i in range(7):
lista_Pin.append(Pin(leds[i], Pin.OUT))
digitos = {
0: [1, 1, 1, 1, 1, 1, 0],
1: [0, 1, 1, 0, 0, 0, 0],
2: [1, 1, 0, 1, 1, 0, 1],
3: [1, 1, 1, 1, 0, 0, 1],
4: [0, 1, 1, 0, 0, 1, 1],
5: [1, 0, 1, 1, 0, 1, 1],
6: [1, 0, 1, 1, 1, 1, 1],
7: [1, 1, 1, 0, 0, 0, 0],
8: [1, 1, 1, 1, 1, 1, 1],
9: [1, 1, 1, 1, 0, 1, 1]
}
habs = (15, 14)
lista_habs = list()
for i in range(2):
lista_habs.append(Pin(habs[i], Pin.OUT))
habilitadores = {
0: [0, 1],
1: [1, 0],
2: [1, 1] # Apagar los displays
}
def mostrar(numero):
for pin, estado in zip(lista_Pin, digitos[numero]):
pin.value(estado)
def habilitar(numero):
for pin, estado in zip(lista_habs, habilitadores[numero]):
pin.value(estado)
nivel = 0
# retardo = 300 # milisegundos
# u_pres = {
# "UP": 0,
# "DOWN": 0,
# }
def potenciometro(tim1):
global nivel
val_dig = pot.read_u16()
nivel = int((val_dig/65535) * 99)
tim1.init(period=300, mode=Timer.PERIODIC, callback=potenciometro)
while True:
unidad = nivel % 10
decena = (nivel // 10) % 10
habilitar(2)
mostrar(unidad)
habilitar(0)
t.sleep_ms(5)
habilitar(2)
mostrar(decena)
habilitar(1)
t.sleep_ms(5)