前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >全志平台Tina系统pwm控制led调试的方法(以R18某方案为例)

全志平台Tina系统pwm控制led调试的方法(以R18某方案为例)

作者头像
阿志小管家
发布2024-02-02 14:56:15
1340
发布2024-02-02 14:56:15
举报

全志平台Tina系统pwm控制led调试的方法(以R18某方案为例)

sys_config.fe的修改:

--- a/recipes-bsp/tina-board/tulip-noma/configs/sys_config.fex +++ b/recipes-bsp/tina-board/tulip-noma/configs/sys_config.fex @@ -534,11 +534,11 @@ pwm_positive        = port:PD22<2><0><default><default>  [pwm0_suspend]  pwm_positive        = port:PD22<7><0><default><default> -[pwm16]

-s_pwm0_used         = 0 +[spwm0] +spwm0_used           = 1  pwm_positive        = port:PL10<2><0><default><default> -[pwm16_suspend] +[spwm0_suspend]  pwm_positive        = port:PL10<7><0><default><default>

        这个LED设计的是MUTE功能开启的时候点亮,所以要先把MUTE打开,调试的时候请先拉高PD4:

root@tulip-mozart:/sys/kernel# mount -t debugfs none debug/

root@tulip-mozart:/sys/kernel/debug/sunxi_pinctrl# echo pio > dev_name

root@tulip-mozart:/sys/kernel/debug/sunxi_pinctrl# echo PD4 > sunxi_pin

root@tulip-mozart:/sys/kernel/debug/sunxi_pinctrl# echo PD4 1 > data 

然后

echo 0 > /sys/class/pwm/pwmchip16/export

echo 100000 > /sys/class/pwm/pwmchip16/pwm0/period

echo 20000 > /sys/class/pwm/pwmchip16/pwm0/duty_cycle

echo 1 > /sys/class/pwm/pwmchip16/pwm0/enable

echo 80000 > /sys/class/pwm/pwmchip16/pwm0/duty_cycle

duty_cycle的值限制在0~period的范围内

period是周期,单位是ns。

如果要设置为某频率,比如如果频率想改成200Hz,

1/200Hz=0.005s=5 000 000 ns

这里就要改成5 000 000

然后在这个范围内变化,可以写个3000000什么的进行调试:

echo 0 > /sys/class/pwm/pwmchip16/export

echo 5000000 > /sys/class/pwm/pwmchip16/pwm0/period

echo 3000000 > /sys/class/pwm/pwmchip16/pwm0/duty_cycle

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2024-02-02,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档