参考代码:
'''
实验名称:舵机控制
实验平台:CanMV-K230
版本:v1.0
日期:2024.9.8
作者:01Studio 【www.01Studio.cc】
说明:通过编程控制舵机旋转到不同角度
'''
from machine import Pin, PWM
from machine import FPIOA
import time
# 配置引脚42为PWM0功能
fpioa = FPIOA()
fpioa.set_function(42, FPIOA.PWM0)
# 构建舵机PWM对象,通道0,频率为50Hz(对于标准舵机)# 负责左右旋转
S1 = PWM(0, 50, duty=0, enable=True) # 初始位置设置为中点,即大约90度
'''
说明:舵机控制函数
功能:180度舵机:angle:-90至90 表示相应的角度
360连续旋转度舵机:angle:-90至90 旋转方向和速度值。
【duty】占空比值:0-100
'''
def Servo(servo, angle):
servo.duty((angle + 90) / 180 * 10 + 2.5)
while True:
#-90度
Servo(S1,-90)
time.sleep(1)
#-45度
Servo(S1,-45)
time.sleep(1)
#0度
Servo(S1,0)
time.sleep(1)
#45度
Servo(S1,45)
time.sleep(1)
#90度
Servo(S1,90)
time.sleep(1)
实验结果: