【发布时间】:2015-01-26 10:04:20
【问题描述】:
Raspberry pi B+ 有四个硬件 PWM。如何在 C/C++ 中使用它们。解决方案越简单越好。
我找到了一个使用 WiringPi 的可行解决方案
gpio mode 1 pwm
gpio pwm-bal
gpio pwmr 1024
gpio pwm 1 500
此解决方案仅适用于一个 PWM 输出 (GPIO18)。 我认为这是因为 WiringPi 是为以前版本的树莓派设计的(B+ 型在 GPIO12、GPIO13 和 GPIO19 上有新的 PWM)。
为了控制常规 GPIO,我找到了解决方案:
pi@auto:~$ sudo -i
root@auto:~# echo "16" > /sys/class/gpio/export
root@auto:~# echo "out" > /sys/class/gpio/gpio16/direction
root@auto:~# echo "1" > /sys/class/gpio/gpio16/value
root@auto:~# echo "0" > /sys/class/gpio/gpio16/value
但是没有办法控制硬件PWM。
产品 https://www.pololu.com/product/2753 引用了 python 库 - 这正是我想要的。
请不要提供软件 PWM 建议。
谢谢
弗拉多
【问题讨论】:
-
你为什么不阅读工作 python 库的源代码,并做同样的事情(它使用 WiringPi2 -- github.com/Gadgetoid/WiringPi2-Python/tree/master/WiringPi/…)
标签: c raspberry-pi pwm