系统信息:
Raspberry Pi Zero 2W
系统版本: 2024-10-22-raspios-bullseye-armhf
Python 版本:Python 3.9.2
已安装 pip3
支持拍摄 1080p 30 (1092*1080), 720p 60 (1280*720), 60/90 (640*480)
已安装 vim
已安装 git
学习目标:
- 驱动360度舵机
学习内容:
驱动360度舵机
import RPi.GPIO as GPIO
import time
def main():
sg_pin = 32 # PWM
frequent = 50 # Hz 频率
# 初始化
GPIO.setmode(GPIO.BOARD) # BOARD 编码
GPIO.setup(sg_pin, GPIO.OUT, initial=GPIO.LOW) # 输出模式
# 创建 PWM
pwm = GPIO.PWM(sg_pin, frequent)
pwm.start(0)
try:
# 顺时针
pwm.ChangeDutyCycle(2.5)
time.sleep(2)
# 停止
pwm.ChangeDutyCycle(7)
time.sleep(2)
# 逆时针
pwm.ChangeDutyCycle(12.5)
time.sleep(2)
except KeyboardInterrupt:
print("--- 强行停止 ---")
finally:
pwm.stop() # 停止 PWM 输出
print("--- 重置引脚规则 ---")
GPIO.cleanup() # 释放 GPIO 资源,清除引脚规则
if __name__ == "__main__":
main()
效果展示