Raspberry Pi Pico + CircuitPython + MuIDE環境で、PWMのテストをします。
回路図です。
PWM出力は、GP14に出力し、ADC0の電圧でDuty cycleを調整します。つまり、10KΩのボリュームを回すとLEDの明るさが変わります。
スクリプトです。
PWMの周波数は、1000Hzにしました。
duty_cycleの値には、アナログ入力の値(0~65535)が与えられます。
----------------------------------------------------------------------------
"""
CircuitPython PWM test
2022.4.22
JH7UBC Keiji Hata
"""
from board import *
import analogio
import pwmio
import time
VR = analogio.AnalogIn(A0)
LED = pwmio.PWMOut(GP14,frequency = 1000)
while True:
LED.duty_cycle = VR.value
time.sleep(0.1)
----------------------------------------------------------------------------
ブレッドボードです。右上のボリュームを回すとLEDの明るさが変わります。
PWM出力をPicoScopeで見てみました。
約1000HzのPWM信号が出力されています。
ボリュームを回すと、duty cycleが変化する様子が確認できました。