jamesRobort 发表于 2017-9-26 14:25:55

E9V2 PWM 扩展口怎么应用,linux4.1内核

麻烦你们能给一个,E9V2 PWM 扩展口的应用实例吗?linux4.1内核
谢谢了

support_lyl 发表于 2017-9-26 15:01:25

修改内核源码中arch/arm/boot/dts/imx6qdl-sabresd.dtsi(imx6q corec),arch/arm/boot/dts/e9qdl-sabresd.dtsi(e9卡片电脑),
在&pwm1下添加,搜索pwm1可以搜索到
&pwm1 {
        pinctrl-names = "default";
        pinctrl-0 = <&pinctrl_pwm1>;
        status = "okay";
};
&pwm2 {
        pinctrl-names = "default";
        pinctrl-0 = <&pinctrl_pwm2>;
        status = "okay";
};

&pwm3 {
        pinctrl-names = "default";
        pinctrl-0 = <&pinctrl_pwm3>;
        status = "okay";
};

在pinctrl_pwm1下面添加,搜索pinctrl_pwm1可以搜索到
pinctrl_pwm1: pwm1grp {
                        fsl,pins = <
                                MX6QDL_PAD_SD1_DAT3__PWM1_OUT                0x1b0b1
                        >;
                };
               
                pinctrl_pwm2: pwm2grp {
                        fsl,pins = <
                                MX6QDL_PAD_SD1_DAT2__PWM2_OUT                0x1b0b1
                        >;
                };
               
                pinctrl_pwm3: pwm3grp {
                        fsl,pins = <
                                MX6QDL_PAD_SD1_DAT1__PWM3_OUT                0x1b0b1
                        >;
                };

support_lyl 发表于 2017-9-26 15:08:00

控制pwm
对应pwm2:
echo 0 > /sys/class/pwm/pwmchip2/export
对应pwm3:
echo 0 > /sys/class/pwm/pwmchip3/export


c). 设置PWM 周期和占空比,这里均为时间,单位为ns
echo 1000000000 > /sys/class/pwm/pwmchip2/pwm0/period
echo 500000000 > /sys/class/pwm/pwmchip2/pwm0/duty_cycle

使能pwm
echo 1 > /sys/class/pwm/pwmchip2/pwm0/enable

jamesRobort 发表于 2017-9-26 18:55:59

support_lyl 发表于 2017-9-26 15:08
控制pwm
对应pwm2:
echo 0 > /sys/class/pwm/pwmchip2/export


可以了,给你32赞{:2_148:}

ly2008boy 发表于 2017-10-27 17:05:09

jamesRobort 发表于 2017-9-26 18:55
可以了,给你32赞

你是怎么升级到4.1内核的?
页: [1]
查看完整版本: E9V2 PWM 扩展口怎么应用,linux4.1内核