from machine import Pin
from utime import sleep
class IniciarSesion:
def __init__(self):
# Diccionario para almacenar usuarios y contraseñas
self.usuarios_registrados = {}
# Configurar los pines de los LEDs
self.led = Pin(5, Pin.OUT) # LED verde (para indicar inicio de sesión exitoso)
self.led2 = Pin(6, Pin.OUT) # LED amarillo (para indicar intento fallido)
self.led3 = Pin(7, Pin.OUT) # LED rojo (para indicar cuenta bloqueada)
def agregar_usuario(self, usuario, contraseña):
# Agregar usuario y contraseña al diccionario
self.usuarios_registrados[usuario] = contraseña
def iniciar_sesion(self):
intentos = 0
acceso_permitido = False
while intentos < 3 and not acceso_permitido:
usuario = input("Ingrese su nombre de usuario: ")
contraseña = input("Ingrese su contraseña: ")
# Verificar si el usuario y la contraseña son correctos
if usuario in self.usuarios_registrados and self.usuarios_registrados[usuario] == contraseña:
print("Bienvenido a la Clase")
acceso_permitido = True
else:
print("Usuario o Password incorrecto")
self.led2.on() # Encender LED2 (indicando intento fallido)
sleep(1) # Esperar 1 segundo antes de apagar el LED2
self.led2.off() # Apagar LED2
intentos += 1
if not acceso_permitido:
print("Se le niega el acceso y su cuenta fue bloqueada")
self.led3.on() # Encender LED3 (indicando cuenta bloqueada)
else:
self.led3.off() # Apagar LED3 si el acceso es exitoso
self.led.on() # Encender LED (indicando inicio de sesión exitoso)
# Ejemplo de uso:
sistema = IniciarSesion()
# Agregar usuarios y contraseñas
sistema.agregar_usuario("usuario1", "pass123")
sistema.agregar_usuario("usuario2", "abc456")
# Iniciar sesión con hasta 3 intentos
sistema.iniciar_sesion()