python香橙派wiringpi库 控制舵机

本文详细介绍了如何在香橙派3b上通过wiringpi库实现0-180度角度控制的软件PWM,包括引脚映射、函数定义和主程序操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

我使用的是香橙派3b

使用前安装wiringpi库

引脚映射关系:

所以代码18,连的是派的28号引脚

这个是软件控制pwm:
 

import wiringpi
#0-180度的代码,用软件pwm
SERVO_PIN = 18
ANGLE_MIN = 0   
ANGLE_MAX = 180 

SERVO_MIN_PWM = 5   
SERVO_MAX_PWM = 25  

def map_angle_to_pwm(angle):
    return SERVO_MIN_PWM + (angle - ANGLE_MIN) * (SERVO_MAX_PWM - SERVO_MIN_PWM) // (ANGLE_MAX - ANGLE_MIN)

def main():
    print("Servo Control Program")

    if wiringpi.wiringPiSetup() == -1:
        print("Failed to initialize wiringPi")
        exit(1)

    wiringpi.softPwmCreate(SERVO_PIN, 0, SERVO_MAX_PWM) 

    while True:
        for angle in range(ANGLE_MIN, ANGLE_MAX + 1):
            pwm_value = map_angle_to_pwm(angle)
            wiringpi.softPwmWrite(SERVO_PIN, pwm_value)
            wiringpi.delay(15) 

        for angle in range(ANGLE_MAX, ANGLE_MIN - 1, -1):
            pwm_value = map_angle_to_pwm(angle)
            wiringpi.softPwmWrite(SERVO_PIN, pwm_value)
            wiringpi.delay(15) 

if __name__ == "__main__":
    main()

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

嵌入式学不会不改名

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值