from machine import Pin, PWM
import time
import math
loop_delay = -1
angle = 0
time_val = 0
duty_val = 0
pwm_val = 0
servo = PWM(22, freq = 50)
while True:
time_val = (angle * ((2.5-0.5)/(180-0))) + 0.5
duty = time_val / 20
pwm_val = (duty * math.pow(2, 16))- 1
servo.duty_u16(int(pwm_val))
print("Duty Cycle:", pwm_val)
print("Angle:",angle)
if loop_delay == True:
sleep_time = 1
else:
sleep_time = 0.01
time.sleep(sleep_time)
angle = angle + 1
if angle > 180:
angle = 0
loop_delay = True
else:
loop_delay = False