Firefly开源社区

打印 上一主题 下一主题

ROC-RK3308-CC-PLUS如何通过sys接口操作pwm?

56

积分

0

威望

0

贡献

技术小白

积分
56

ROC-RK3308-CC-PLUS如何通过sys接口操作pwm?

发表于 2020-10-12 15:57:15      浏览:3942 | 回复:9        打印     [复制链接] 楼主
在/sys/class/pwm/目录下有pwmchip0  pwmchip1,要怎样export pwm并控制?
回复

使用道具 举报

56

积分

0

威望

0

贡献

技术小白

积分
56
发表于 2020-10-12 17:09:41      沙发
firefly_zhongw 发表于 2020-10-12 16:22
下面是pwmchip0的例子,设置pwm输出频率100K,占空比50%,极性为正极性:

搞清楚了,直接这样export是不行的。
要先在dts里打开pwm:
&pwm7 {
        status = "okay";
        pinctrl-names = "active";
        pinctrl-0 = <&pwm7_pin_pull_down>;
};
烧录kernel之后 cat /sys/kernel/debug/pwm,会发现多了一个pwm:
platform/ff180020.pwm, 1 PWM device
pwm-0   ((null)              ): period: 0 ns duty: 0 ns polarity: inverse

platform/ff180000.pwm, 1 PWM device
pwm-0   (vdd-core            ): requested enabled period: 5003 ns duty: 1200 ns polarity: inverse

platform/ff170030.pwm, 1 PWM device
pwm-0   (sysfs               ): requested enabled period: 9997 ns duty: 5003 ns polarity: normal

并且在/sys/class/pwm/目录下会发现多了一个pwmchip,
在多出来的那个pwmchip里面按照你这样操作就能用了。
回复

使用道具 举报

56

积分

0

威望

0

贡献

技术小白

积分
56
发表于 2020-10-12 17:14:35      板凳
总之这个pwm驱动有点怪,从sys接口里面不能直接看出到底export了第几个pwm
回复

使用道具 举报

56

积分

0

威望

0

贡献

技术小白

积分
56
发表于 2020-10-14 13:45:55      地板
明白了,谢谢
回复

使用道具 举报

56

积分

0

威望

0

贡献

技术小白

积分
56
发表于 2020-10-29 09:31:30      5#
firefly_zhongw 发表于 2020-10-12 17:35
可以通过ls -l /sys/class/pwm/  , pwmchipX的软链接的(比如ff170030.pwm),在rk3308.dtsi里找对应的pwm(pw ...

还有个问题,我想通过pwm触发模式来读取风扇转速。所以,有pwm触发模式的驱动吗?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

友情链接 : 爱板网 电子发烧友论坛 云汉电子社区 粤ICP备14022046号-2
快速回复 返回顶部 返回列表