5.PWM控制

5.1 PWM引脚

以SC-3568HA为例,在板卡的40PIN引脚上有3个具有PWM功能的GPIO,其中PWM5(PIN33)已经被MIPI1屏幕背光所占用

PWM_0

备注

pwm0,pwm5,pwm14默认都已使能

5.2 检查PWM设备

在终端输入以下命令查看pwm是否使能

1ls -l /sys/class/pwm/
如图:

PWM_1

pwmchip1,pwmchip2为屏幕的背光,系统默认开启,当开启多个pwm设备树插件时,pwm控制器值越小,系统分配的pwmchip越小

1比如我同时开启了pwm0,pwm5,pwm14,那么会出现以下对应关系
2
3pwm0->pwmchip0
4pwm5->pwmchip2
5pwm14->pwmchip3

5.3 PWM控制方式

下面以控制PWM14为例

 1#将pwm14导出到用户空间
 2echo 0 > /sys/class/pwm/pwmchip3/export
 3
 4#设置pwm周期 单位为ns
 5echo 1000000 > /sys/class/pwm/pwmchip3/pwm0/period
 6
 7#设置占空比
 8echo 500000 > /sys/class/pwm/pwmchip3/pwm0/duty_cycle
 9
10#设置pwm极性
11echo "normal" > /sys/class/pwm/pwmchip3/pwm0/polarity
12
13#使能pwm
14echo 1 > /sys/class/pwm/pwmchip3/pwm0/enable
15
16#取消将pwm14导出到用户空间
17echo 0 > /sys/class/pwm/pwmchip3/unexport

提示

当设置period与duty_cycle值的时候需要注意在任何的情况下都得保证period的值大于等于duty_cycle的值。