# ---------------- Aumento y Decremento de numeros en display de 7 segmentos ------------------------
from machine import Pin
import time
leds = (0, 1, 2, 3, 4, 5, 6)
lista_pin = []
for i in range (0,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],
}
def mostrar (numero) :
for Pin, estado in zip(lista_pin, digitos[numero]) :
Pin.value(estado)
b1 = Pin(15, Pin.IN, Pin.PULL_UP)
b2 = Pin(16, Pin.IN, Pin.PULL_UP)
led_externo = Pin("LED", Pin.OUT)
conta = 0
mostrar(0)
def fun_b1 (b1) :
global conta
conta = conta + 1
if conta == 10 :
conta = 0
mostrar(conta)
print(conta)
def fun_b2 (b2) :
global conta
conta = conta - 1
if conta == -1 :
conta = 0
mostrar(conta)
print(conta)
b1.irq(trigger = Pin.IRQ_FALLING, handler = fun_b1)
b2.irq(trigger = Pin.IRQ_FALLING, handler = fun_b2)
while True:
led_externo.on()
pass
time.sleep_ms(300)
print("Inicio del Conteo")
if b1.value() == 0 :
conta += 1
if conta == 10 :
conta = 0
mostrar(conta)
print(conta)
if b2.value() == 0 :
conta -= 1
if conta == 10 :
conta = 9
mostrar(conta)
print(conta)
time.sleep_ms(300)
print("Fin del Conteo")