from machine import PWM, ADC, pin
from utime import sleep
set up potentiometer on ADC (GP28)
pot = ADC(Pin(15))
set up servo on GP15
servo = PWM(pin(15))
servo.freq(50) # set 50Hz frequency
function to calculate duty cycle
def set_servo_angle(angle):
Map 0-180 degrees to 1638 (0.5)
duty = int((angle / 180) * 65535)
servo.duty_u16(duty)
while True:
Read potentiometer (0.65535)
pot_value = pot.read_u16()
Map potentiometer to angle (0.5)
angle = int((pot_value / 65535))
set servo angle
set_servo_angle(angle)