from machine import Pin, PWM
import time

button =  Pin(16, Pin.IN)
servoB1 = PWM(Pin(28)) #mouth left
servoB1.freq(50)
servoB2 = PWM(Pin(27)) #mouth right
servoB2.freq(50)
servoU = PWM(Pin(2)) #lip up
servoU.freq(50)
servoD = PWM(Pin(3)) #lip down
servoD.freq(50)
servoR = PWM(Pin(14)) #cheek left
servoR.freq(50)
servoL = PWM(Pin(15)) #cheek right
servoL.freq(50)

button_value = button.value()

while True:
    servoB1.duty_ns(500000) 
    servoB2.duty_ns(500000) 
    servoU.duty_ns(500000) 
    servoD.duty_ns(500000) 
    servoR.duty_ns(500000) 
    servoL.duty_ns(500000) 
    button_value = button.value()

    letra = input('Escribe una letra: ')
    print(button())

    if letra  =='a':
        for pulso in range(500000, 2400000, 1000):
            servoB1.duty_ns(pulso) 
            servoB2.duty_ns(pulso) 
            time.sleep_ms(1)
      
        while button_value==0:
            button_value = button.value()
        
        for pulso in range(2400000, 500000, -1000):
            servoB1.duty_ns(pulso) 
            servoB2.duty_ns(pulso) 
            time.sleep_ms(1)

         #time.sleep_ms(10)

    elif letra =='e':
        for pulso in range(500000, 1200000, 1000):
            servoB1.duty_ns(pulso) 
            servoB2.duty_ns(pulso) 
            servoR.duty_ns(pulso) 
            servoL.duty_ns(pulso)
            time.sleep_ms(1)

        while button_value==0:
            button_value = button.value()

        for pulso in range(1200000, 500000, -1000):
            servoB1.duty_ns(pulso) 
            servoB2.duty_ns(pulso) 
            servoR.duty_ns(pulso) 
            servoL.duty_ns(pulso)
            time.sleep_ms(1)

    elif letra =='i':
        for pulso in range(500000, 900000, 500):
            servoB1.duty_ns(pulso) 
            servoB2.duty_ns(pulso) 
            pulso1=pulso + 10000 #Ayudaaaaa
            servoR.duty_ns(pulso1) 
            servoL.duty_ns(pulso1)
            time.sleep_ms(1)

        while button_value==0:
            button_value = button.value()

        for pulso in range(900000, 500000, -500):
            pulso2=pulso-1000
            servoB1.duty_ns(pulso) 
            servoB2.duty_ns(pulso) 
            servoR.duty_ns(pulso2) 
            servoL.duty_ns(pulso2)
            time.sleep_ms(1)

    elif letra =='o':
        for pulso in range(500000, 1400000, 1000):
            servoU.duty_ns(pulso) 
            servoD.duty_ns(pulso)
            servoB1.duty_ns(pulso) 
            servoB2.duty_ns(pulso)
            time.sleep_ms(1)

        while button_value==0:
            button_value = button.value() 

        for pulso in range(1400000, 500000, -1000): 
            servoU.duty_ns(pulso) 
            servoD.duty_ns(pulso)
            servoB1.duty_ns(pulso) 
            servoB2.duty_ns(pulso)
            time.sleep_ms(1)

    elif letra =='u':
        for pulso in range(500000, 2400000, 1000):
            servoU.duty_ns(pulso) 
            servoD.duty_ns(pulso) 
            time.sleep_ms(1)

        while button_value==0:
            button_value = button.value()

        for pulso in range(2400000, 500000, -1000):
            servoU.duty_ns(pulso) 
            servoD.duty_ns(pulso) 
            time.sleep_ms(1)
    else :
        print('nada')
BOOTSELLED1239USBRaspberryPiPico©2020RP2-8020/21P64M15.00TTT
pico:GP0
pico:GP1
pico:GND.1
pico:GP2
pico:GP3
pico:GP4
pico:GP5
pico:GND.2
pico:GP6
pico:GP7
pico:GP8
pico:GP9
pico:GND.3
pico:GP10
pico:GP11
pico:GP12
pico:GP13
pico:GND.4
pico:GP14
pico:GP15
pico:GP16
pico:GP17
pico:GND.5
pico:GP18
pico:GP19
pico:GP20
pico:GP21
pico:GND.6
pico:GP22
pico:RUN
pico:GP26
pico:GP27
pico:GND.7
pico:GP28
pico:ADC_VREF
pico:3V3
pico:3V3_EN
pico:GND.8
pico:VSYS
pico:VBUS
servo1:GND
servo1:V+
servo1:PWM
servo2:GND
servo2:V+
servo2:PWM
servo3:GND
servo3:V+
servo3:PWM
servo4:GND
servo4:V+
servo4:PWM
servo5:GND
servo5:V+
servo5:PWM
servo6:GND
servo6:V+
servo6:PWM
btn2:1.l
btn2:2.l
btn2:1.r
btn2:2.r
r1:1
r1:2