from machine import PWM, ADC, Pin
import utime

#Definicion de pines en el ESP32

sw = ADC(Pin(34))
vrx = ADC (Pin(35))
vry = ADC (Pin(33))

#Definicion de pines de salida

ledRojo = Pin (4, Pin.OUT)
ledIzAzul = Pin (15, Pin.OUT)
ledDrVerde = Pin (23, Pin.OUT)
ledAbNaranja = Pin (22, Pin.OUT)
ledArAmarillo = Pin (5, Pin.OUT)

# Atenuacion de tarjeta (3.3v)

vrx.atten(ADC.ATTN_11DB)
vry.atten(ADC.ATTN_11DB)

#Conversion a 4096

vrx.width(ADC.WIDTH_12BIT)
vry.width(ADC.WIDTH_12BIT)

while True:
    #--Izquierda y Derecha

    valorx = vrx.read() #Leer resistencia
    # print(valorx)

    #Derecha
    if valorx >= 1000:
        print("Derecha: Verde", valorx)
        ledDrVerde.value(1)
        utime.sleep_ms(50)
    else:
        ledDrVerde.value(0)
        utime.sleep_ms(50)

    #Izquierda
    if valorx <= 1000:
        print("Izquierda: Azul", valorx)
        ledIzAzul.value(1)
        utime.sleep_ms(50)
    else:
        ledIzAzul.value(0)
        utime.sleep_ms(50)

    #--Arriba y abajo

    valory = vry.read()

    #Arriba
    if valory <= 100:
        print("Arriba: Amarillo", valory)
        ledArAmarillo.value(1)
        utime.sleep_ms(50)
    else:
        ledArAmarillo.value(0)
        utime.sleep_ms(50)

    #Abajo
    if valory >= 100:
        print("Abajo: Naranja", valory)
        ledAbNaranja.value(1)
        utime.sleep_ms(50)
    else:
        ledAbNaranja.value(0)
        utime.sleep_ms(50)

    #--Click al Joystick
    valorsw =sw.read()

    if valorsw == 0:
        print(" Click: Rojo", valorsw)
        ledRojo.value(1)
        utime.sleep(50)
    else:
        ledRojo.value(0)
        utime.sleep_ms(50)