iTOP-RK3568开发板应用层操控 PWM
  OQVAtZffiWZ9 2023年11月02日 90 0

PWM 和之前讲解的 LED、GPIO 相同,都是通过 sysfs 方式进行操控的。开发板系统启

动之后进入到/sys/class/pwm 目录下,如下所示:

iTOP-RK3568开发板应用层操控 PWM_开发板

在 pwm 目录下存在 3 个以 pwmchipX(X 表示数字)命名的文件夹。在本章节的开始部

分,重新烧写了设备树内核镜像,该设备树中总共使能了三个 PWM,分别为 PWM0,PWM4

和 PWM5,系统会根据 PWM 的编号大小进行排序,在这里 PWM0 对应 pwmchip0、PWM4 对

应 pwmchip1,PWM5 对应 pwmchip2。

通过查询网盘“TOP-3568 开发板\01_【iTOP-RK3568 开发板】基础资料\01_iTOP-RK3568

硬件资料\03_芯片数据手册\01_rk3568 数据手册和参考手册”路径下的 Rockchip RK3568 Data

sheet V1.0-20201210.pdf 数据手册得知,RK3568 总共有 16 个 PWM 控制器(具体的查询会

在之后的驱动手册中进行讲解,本章节只是学习 PWM 的使用),本章节将会以 LED9 用户灯

控制引脚 GPIO0_B7 对应的 PWM0 为例进行讲解和演示。使用以下命令进入 PWM0 对应的

pwmchip0 目录下如下图所示:

iTOP-RK3568开发板应用层操控 PWM_数据_02

在这个目录下总共有七个文件分别为 device、export、npwm、power、subsystem、uevent 和

unexport。需要关注的是 export、npwm 以及 unexport 这三个属性文件,下面一一进行介绍:

npwm:是一个只读属性,读取该文件可以得知该 PWM 控制器下共有几路 PWM 输出,

如下所示:

iTOP-RK3568开发板应用层操控 PWM_数据_03

export:在使用 PWM 之前,通过 export 属性进行导出,以下所示:

echo 0 > export

iTOP-RK3568开发板应用层操控 PWM_属性文件_04

unexport:当使用完 PWM 之后,需要将导出的 PWM 删除,譬如:

echo 0 > unexport

iTOP-RK3568开发板应用层操控 PWM_开发板_05

写入到 unexport 文件中的编号与写入到 export 文件中的编号是相对应的;需要注意的

是,export 文件 和 unexport 文件都是只写的、没有读权限。

再次使用以下命令导出 pwm0 目录,导出成功之后进入该文件夹如下图所示:

echo 0 > export

cd pwm0

iTOP-RK3568开发板应用层操控 PWM_数据_06

可以看到 pwm0 文件夹下分别有 capture、duty_cycle、enable、period、polarity、power、

uevent 七个文件,而需要了解的文件是 duty_cycle、enable、period 以及 polarity 这四个属性

文件,接下来分别介绍这四个属性文件的作用:

polarity:用于 PWM 极性的查看,只读属性,这里为 inversed 表示极性反转,如下图所示:

iTOP-RK3568开发板应用层操控 PWM_属性文件_07

period:用于配置 PWM 周期,可读可写;写入一个字符串数字值,以 ns(纳秒)为单

位,譬如配置 PWM 周期为 10us(微秒):

echo 10000 > period

duty_cycle:用于配置 PWM 的占空比,可读可写;写入一个字符串数字值,同样也是以

ns 为单位,譬如:

echo 5000 > duty_cycle

enable:使能 PWM 输出通常配置好 PWM 之后,再使能 PWM。可读可写,写入"0"表

示禁止 PWM;写入"1"表示使能 PWM。

允许 PWM 输出:

echo 1 > enable

禁止 PWM 输出:

echo 0 > enable

更多内容可以B站搜:迅为RK3568开发板

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月08日 0

暂无评论

推荐阅读
OQVAtZffiWZ9