BeagleBone Blackには8つのPWM出力があります。
PWMを使うと、モーターの回転速度を変更したり、LEDの輝度を変えることができます。
フルカラーLEDに接続すれば、好きな色を表現することもできます。
BeagleBoneではeCAPとeHRPWMという2種類のPWMが使用できます。
どちらも同じように使えるので、違いは気にしないでおきます。
eCAP2 P9-28 Mode=4
eCAP0 P9-42 Mode=0
eHRPWM0A P9-22 Mode=3
eHRPWM0B P9-21 Mode=3
eHRPWM1A P9-14 Mode=7
eHRPWM1B P9-16 Mode=7
eHRPWM2A P8-45 Mode=3 または P8-13 Mode=4
eHRPWM2B P8-46 Mode=3 または P8-19 Mode=4
BeagleBone BlackではeHRPWM2用のピンは内蔵eMMCとHDMI出力用に使用されているので、通常のBeagleBone Blackで使えるPWM出力は最大6つとなります。
使い方
まずはピンのMux modeを指定します。
今回はecap2を使います。
sudo -s
echo 4 > /sys/kernel/debug/omap/mcasp0_ahclkr
PWMの周波数とデューティ比を設定します。
cd /sys/class/pwm/ecap.2
echo 1 > request
echo 100 > period_freq
echo 50 > duty_percent
echo 1 > polarity
周波数とデューティ比を設定したので、あとはPWM出力を開始するだけです。
echo 1 > run
止める場合は
echo 0 > run
後片付け
echo 0 > request
まずはピンのMux modeを指定します。
今回はecap2を使います。
sudo -s
echo 4 > /sys/kernel/debug/omap/mcasp0_ahclkr
PWMの周波数とデューティ比を設定します。
cd /sys/class/pwm/ecap.2
echo 1 > request
echo 100 > period_freq
echo 50 > duty_percent
echo 1 > polarity
周波数とデューティ比を設定したので、あとはPWM出力を開始するだけです。
echo 1 > run
止める場合は
echo 0 > run
後片付け
echo 0 > request
PWMの周波数は100Hzまでは動作しますが、それ以上の周波数になると設定できないようです。
0 件のコメント:
コメントを投稿