pwm_control.py
# Эта работа лицензирована по лицензии MIT.
# Copyright (c) 2013-2023 OpenMV LLC. All rights reserved.
# 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("D7", 3, 1),
"PWM2": PWM("D8", 4, 3),
"PWM3": PWM("D9", 4, 4),
}
# Сгенерировать на следующем канале ШИМ прямоугольный сигнал 1 кГц со скважностью 50%.
for k, pwm in pwms.items():
tim = Timer(pwm.tim, freq=1000) # Частота в Гц
ch = tim.channel(pwm.ch, Timer.PWM, pin=Pin(pwm.pin), pulse_width_percent=50)
while True:
time.sleep_ms(1000)