pwm_control.py
# 本作品采用MIT许可证授权。
# 版权所有 (c) 2013-2023 OpenMV LLC。保留所有权利。
# https://github.com/openmv/openmv/blob/master/LICENSE
#
# PWM 控制示例
#
# 此示例展示了如何使用 PWM。
import time
from pyb import Pin, Timer
class PWM:
def __init__(self, pin, tim, ch):
self.pin = pin
self.tim = tim
self.ch = ch
pwms = {
"PWM1": PWM("PE12", 1, 1),
"PWM2": PWM("PE11", 1, 2),
# 'PWM3' : PWM('PA9', 1, 2),
"PWM3": PWM("PA10", 1, 3),
"PWM4": PWM("PE14", 1, 4),
"PWM5": PWM("PB8", 4, 3),
"PWM6": PWM("PB9", 4, 4),
}
# 在以下 PWM 上生成一个 1KHz 的方波,占空比为 50%。
for k, pwm in pwms.items():
tim = Timer(pwm.tim, freq=1000) # 频率(Hz)
ch = tim.channel(pwm.ch, Timer.PWM, pin=Pin(pwm.pin), pulse_width_percent=50)
while True:
time.sleep_ms(1000)