import machine
import utime
# Set up PWM on Pin 15
servo = machine.PWM(machine.Pin(15))
servo.freq(50)
def set_angle(angle):
# Map 0-180 degrees to the duty cycle range
# Standard servos: 0.5ms (1638 duty) to 2.5ms (8192 duty)
# Formula: duty = int(min_duty + (angle / 180) * (max_duty - min_duty))
ms = 1/50
duty = int(3277 + (angle / 180) * (3277))
servo.duty_u16(duty)
# Loop to sweep the servo back and forth
# while True:
print("Moving to 0 degrees")
set_angle(0)
utime.sleep(1)
print("Moving to 90 degrees")
set_angle(90)
utime.sleep(1)
print("Moving to 180 degrees")
set_angle(180)
utime.sleep(1)