树莓派 B+ 硬件 PWM
Posted
技术标签:
【中文标题】树莓派 B+ 硬件 PWM【英文标题】:raspberry pi B+ hardware PWM 【发布时间】: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/…) 【参考方案1】:Here 是一个可以满足您需求的发行版。 它提供 PWM 和 Servo 内核模块。您可以简单地修改 /sys/class/rpi-pwm/ 下的内核文件来创建自定义 PWM 输出。 Here是下载链接。
【讨论】:
以上是关于树莓派 B+ 硬件 PWM的主要内容,如果未能解决你的问题,请参考以下文章