使用RPi.GPIO庫實現
# -*- coding: UTF-8 -*- import RPi.GPIO as GPIO import time def servo(angle): GPIO.setmode(GPIO.BOARD) pin1=33#斜台 pin2=35#平台 GPIO.setup(pin1,GPIO.OUT,initial=GPIO.LOW) GPIO.setup(pin2,GPIO.OUT,initial=GPIO.LOW) p1=GPIO.PWM(pin1,50)#設置頻率為50KHz,20ms左右的時基脈沖(1/0.020s=50HZ) p2=GPIO.PWM(pin2,50) p1.start(0) p2.start(0) try: p1.ChangeDutyCycle(2.5+angle/360*20)#通過用戶輸入的角度來改變舵機的角度 time.sleep(0.5)#一秒鍾完成轉動 p2.ChangeDutyCycle(2.5+180/360*20) time.sleep(0.5) p2.ChangeDutyCycle(2.5+0/360*20) time.sleep(0.5) p1.ChangeDutyCycle(2.5+0/360*20)#通過用戶輸入的角度來改變舵機的角度 p2.ChangeDutyCycle(2.5+0/360*20) time.sleep(0.5)#一秒鍾完成轉動0 except KeyboardInterrupt: pass p1.stop() p2.stop() GPIO.cleanup()