from machine import Pin, PWM
import time
# Define the servo and button pins
servo_pin = 26
button_pin = 21
# Set up the servo motor
servo = PWM(Pin(servo_pin), freq=50)
servo.duty(77) # Initial position (0 degrees)
# Set up the button
button = Pin(button_pin, Pin.IN, Pin.PULL_UP)
# Function to move the servo
def move_servo(angle):
duty = int((angle / 180) * 102 + 26)
servo.duty(duty)
# Main loop
angle = 0
while True:
if not button.value(): # Button pressed
angle = 90 if angle == 0 else 0 # Toggle between 0 and 90 degrees
move_servo(angle)
time.sleep(0.5) # Debounce delay