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')
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