工具/软件:Linux
您好!
我想通过 ECAP 模块从 am3358控制 RGB LED。 LED 连接到
ecap0:(A13) McASP0_aclkx.ehrpwm0A
ecap2:(U14) GPMC_A2.ehrpwm1A
ecap2:(T14) GPMC_A3.ehrpwm1B
`m 我无法引导系统,驱动程序初始化和从 pinmux 到 ECAP 以及从 ECAP 到 PWM 驱动程序的通道分配是否正确?
引脚多路复用
/*RGB LED*/的 PWM 引脚
PWM_PINS_RG:pinmux_pwmled_pin_r{
pinctrl-single、pins =<
0x48 (PIN_OUTPUT | MUX_MODE6) /*(U14) GPMC_A2.ehrpwm1A *
0x4c (PIN_OUTPUT | MUX_MODE6) /*(T14) GPMC_A3.ehrpwm1B */
>;
};
PWM_PIN_B:pinmux_pwmled_pin_b{
pinctrl-single、pins =<
0x190 (PIN_OUTPUT | MUX_MODE1) /*(A13) McASP0_aclkx.ehrpwm0A */
>;
};
ECAP 模块的使能
/*为 RGB LED*/启用 PWM
epwms0{(&E)
状态="正常";
ecap0:ECAP@48300100{
状态="正常";
pinctrl-names ="default";
pinctrl-0 =<&PWM_PIN_B>;
};
};
epwms1{(&E)
状态="正常";
eCAP1:ECAP@48302100{
状态="正常";
pinctrl-names ="default";
pinctrl-0 =<&PWM_PINS_RG>;
};
};
LED 驱动器说明
RGB_LED{
兼容="PWM-LED";
RGB_LED_r{
标签="RGB:RED";
PWM =<&ecap0 50000 PWM_POLICAL_INPLEVINTED;
最大亮度=<255>;
};
RGB_LED_g{
标签="RGB:绿色";
PWM =<&ecap2 2 50000 PWM_POLICAL_INPLEVINTED;
最大亮度=<255>;
};
rgb_led_b{
标签="RGB:蓝色";
PWM =<&ecap2 0 50000 PWM_POLICAL_INPLEVINTED;
最大亮度=<255>;
};
};
谢谢
Stefan