Коричневый к GND
Оранжевый к VCC (5 В)
Желтый к GPIO 16 (сигнал)
Код: Выделить всё
import machine
import time
# Set up the PWM pin connected to the servo
servo_pin = machine.Pin(15) # Change to the pin you are using
servo = machine.PWM(servo_pin)
servo.freq(50) # Set PWM frequency to 50Hz, standard for servos
# Function to set servo angle
def set_servo_angle(angle):
# Convert the angle to duty cycle
min_duty = 1000 # Corresponds to 0 degrees
max_duty = 9000 # Corresponds to 120 degrees
duty = int(min_duty + (angle / 120) * (max_duty - min_duty))
servo.duty_u16(duty)
try:
while True:
set_servo_angle(0) # Move to 0 degrees
time.sleep(1)
set_servo_angle(60) # Move to 60 degrees
time.sleep(1)
set_servo_angle(120) # Move to 120 degrees
time.sleep(1)
set_servo_angle(0) # Move back to 0 degrees
time.sleep(1)
except KeyboardInterrupt:
# Cleanup on exit
servo.deinit()
PS: Как вернуть сервопривод в нулевой угол? и я не использую никакой источник питания, предложите мне, если это необходимо.
Подробнее здесь: https://stackoverflow.com/questions/791 ... le-control
Мобильная версия