嵌入式开发者社区

标题: AM57x PWM使用问题 [打印本页]

作者: czs----Tronlong    时间: 2020-4-22 17:53
标题: AM57x PWM使用问题
am5728上需要使用ehrpwm1a 和ehrpwm1b的功能,修改设备树,然后加载到开发板,reboot后,能显示pwm的设备节点,也可以配置,但是用示波器监控GPIO4_0和GPIO4_1,发现两个口上都没有PWM输出,请帮忙看看,配置有什么问题?谢谢!

//设备树增加如下的信息:
        ehrpwm0ab_pins: ehrpwm0ab_pins {
            pinctrl-single,pins = <
                DRA7XX_CORE_IOPAD(0x3564, PIN_OUTPUT | MUX_MODE10)    /*vin2a_vsync0.ehrpwm1A*/
                DRA7XX_CORE_IOPAD(0x3568, PIN_OUTPUT | MUX_MODE10)    /*vin2a_d0.ehrpwm1B*/      
            >;
        };

&ehrpwm0 {
        status = "okay";
        pinctrl-names = "default";
        pinctrl-0 = <&ehrpwm0ab_pins>;
};

//设备树修改后,传入单板,reboot后,能显示pwm的信息,也可以配置
root@am57xx-evm:~# cd /sys/class/pwm
root@am57xx-evm:/sys/class/pwm# ls
pwmchip0  pwmchip2  pwmchip3
root@am57xx-evm:/sys/class/pwm#
root@am57xx-evm:/sys/class/pwm# cd pwmchip0
root@am57xx-evm:/sys/class/pwm/pwmchip0#
root@am57xx-evm:/sys/class/pwm/pwmchip0#
root@am57xx-evm:/sys/class/pwm/pwmchip0# cat npwm
2
root@am57xx-evm:/sys/class/pwm/pwmchip0#
root@am57xx-evm:/sys/class/pwm/pwmchip0#
root@am57xx-evm:/sys/class/pwm/pwmchip0# echo 0 > export
root@am57xx-evm:/sys/class/pwm/pwmchip0# echo 1 > export
root@am57xx-evm:/sys/class/pwm/pwmchip0# cd pwm0
root@am57xx-evm:/sys/class/pwm/pwmchip0/pwm0# echo 500000 > period
root@am57xx-evm:/sys/class/pwm/pwmchip0/pwm0# echo 250000 > duty_cycle
root@am57xx-evm:/sys/class/pwm/pwmchip0/pwm0# echo 1 > enable
root@am57xx-evm:/sys/class/pwm/pwmchip0/pwm0# cat {enable,period,duty_cycle}
1
500000
250000
root@am57xx-evm:/sys/class/pwm/pwmchip0/pwm0#
root@am57xx-evm:/sys/class/pwm/pwmchip0/pwm1# echo 500000 > period
root@am57xx-evm:/sys/class/pwm/pwmchip0/pwm1# echo 250000 > duty_cycle
root@am57xx-evm:/sys/class/pwm/pwmchip0/pwm1# echo 1 > enable
root@am57xx-evm:/sys/class/pwm/pwmchip0/pwm1#
root@am57xx-evm:/sys/class/pwm/pwmchip0/pwm1#
root@am57xx-evm:/sys/class/pwm/pwmchip0/pwm1# cat {enable,period,duty_cycle}
1
500000
250000
root@am57xx-evm:/sys/class/pwm/pwmchip0/pwm1#
root@am57xx-evm:/sys/class/pwm/pwmchip0/pwm1#
root@am57xx-evm:/sys/class/pwm/pwmchip0/pwm1# cat /sys/kernel/debug/pwm
platform/dmtimer-pwm@16, 1 PWM device
pwm-0   (pwm_fan             ): requested enabled

platform/4843e100.ecap, 1 PWM device
pwm-0   (backlight           ): requested enabled

platform/4843e200.pwm, 2 PWM devices
pwm-0   (sysfs               ): requested enabled
pwm-1   (sysfs               ): requested enabled
root@am57xx-evm:/sys/class/pwm/pwmchip0/pwm1#
root@am57xx-evm:/sys/class/pwm/pwmchip0/pwm1#
root@am57xx-evm:/sys/class/pwm/pwmchip0/pwm1#
root@am57xx-evm:/sys/class/pwm/pwmchip0/pwm1# devmem2 0x4a003564
/dev/mem opened.
Memory mapped at address 0xb6f25000.
Read at address  0x4A003564 (0xb6f25564): 0x0001000A
root@am57xx-evm:/sys/class/pwm/pwmchip0/pwm1# devmem2 0x4a003568
/dev/mem opened.
Memory mapped at address 0xb6f86000.
Read at address  0x4A003568 (0xb6f86568): 0x0001000A
root@am57xx-evm:/sys/class/pwm/pwmchip0/pwm1
作者: lililala6868    时间: 2020-7-23 17:07
am5728上需要使用ehrpwm1a 和ehrpwm1b的功能,修改设备树,然后加载到开发板,reboot后,能显示pwm的设备节点,也可以配置,但是用示波器监控GPIO4_0和GPIO4_1





欢迎光临 嵌入式开发者社区 (https://www.51ele.net/) Powered by Discuz! X3.4