Raspberry Pi 5
Pi5 gpiozero PWM 動作確認
Raspberry Pi 5 にてPWM出力を試してみました。
PWMOutputDeviceを使用します。
from gpiozero import PWMOutputDevice
PWM0 = PWMOutputDevice(pin=21,frequency = 50)
PWM1 = PWMOutputDevice(pin=20,frequency = 50)
PWM0.value = 0.9
PWM1.value = 0.1
frequency はPWM周波数です。50=50Hz ,周期20msecです。
value は、デューティです。 0.9 では18msec オンしています。
0.1 では2msecオンしています。
測定結果は下記の通りです。
黄色 : PWM0 空色 : PWM1
周期は同期しています。パルス幅と周波数は指定通りに
動作しています。

PWM0の信号を、入力のGPIOに入れて、time.perf_counter()にてパルス幅を
測定したら、ほぼ設定値通りのパルス幅を計算しています。
(GPIO入力は0vでオンですので、0Vのパルス幅を測定しています)
また、PWM0とPWM1の周波数を変えても、互いに同期しています。
下は、PWM1を100Hzへ変更しましたが、波形の立上りは同期しています。

PWMOutputDeviceを使用します。
from gpiozero import PWMOutputDevice
PWM0 = PWMOutputDevice(pin=21,frequency = 50)
PWM1 = PWMOutputDevice(pin=20,frequency = 50)
PWM0.value = 0.9
PWM1.value = 0.1
frequency はPWM周波数です。50=50Hz ,周期20msecです。
value は、デューティです。 0.9 では18msec オンしています。
0.1 では2msecオンしています。
測定結果は下記の通りです。
黄色 : PWM0 空色 : PWM1
周期は同期しています。パルス幅と周波数は指定通りに
動作しています。

PWM0の信号を、入力のGPIOに入れて、time.perf_counter()にてパルス幅を
測定したら、ほぼ設定値通りのパルス幅を計算しています。
(GPIO入力は0vでオンですので、0Vのパルス幅を測定しています)
また、PWM0とPWM1の周波数を変えても、互いに同期しています。
下は、PWM1を100Hzへ変更しましたが、波形の立上りは同期しています。
