Example: 50-OpenMV-Boards/50-IMXRT-Boards/50-Board-Control/servo_control.py

# 本作品采用MIT许可证授权。
# 版权所有 (c) 2013-2024 OpenMV LLC。保留所有权利。
# https://github.com/openmv/openmv/blob/master/LICENSE
#
# 舵机控制示例
#
# 本示例展示了如何利用OpenMV摄像头控制舵机。
#
# 舵机需要50 Hz的PWM,脉冲宽度为1000us到2000us。

import time
from machine import PWM

# P7和P8可能共享同一个PWM模块,它们需要
# 具有相同的频率。
p7 = PWM("P7", freq=50, duty_ns=(2000 * 1000))
p8 = PWM("P8", freq=50, duty_ns=(2000 * 1000))

# P9和P10可能共享同一个PWM模块,它们需要
# 具有相同的频率。
p9 = PWM("P9", freq=50, duty_ns=(2000 * 1000))
p10 = PWM("P10", freq=50, duty_ns=(2000 * 1000))


while True:
    for i in range(1000, 2000, 100):
        p7.duty_ns(i * 1000)
        p8.duty_ns(i * 1000)
        p9.duty_ns(i * 1000)
        p10.duty_ns(i * 1000)
        time.sleep_ms(1000)

    for i in range(2000, 1000, -100):
        p7.duty_ns(i * 1000)
        p8.duty_ns(i * 1000)
        p9.duty_ns(i * 1000)
        p10.duty_ns(i * 1000)
        time.sleep_ms(1000)

results matching ""

    No results matching ""