我想实现一个周期为1s的pwm波来控制led灯,其中900ms的时间内灯亮。那么就要使用ctimer的pwm功能产生频率为1Hz的pwm波吗?我看sdk中的pwm样码都是只使用了ctimer2的1个match。有没有示例代码使用了ctimer的多个match通道的?
lpcxpresso55s69_ctimer_pwm_interrupt_example我是想用定时器的pwm功能来控制led,用同一个定时器输出多路的pwm波
#define CTIMER_MAT_OUT_2 kCTIMER_Match_2 /* Match output 2 */
CTIMER_GetPwmPeriodValue(1, 10, timerClock);
CTIMER_SetupPwmPeriod(CTIMER, CTIMER_MAT_PWM_PERIOD_CHANNEL, CTIMER_MAT_OUT, g_pwmPeriod, g_pulsePeriod, true);
CTIMER_GetPwmPeriodValue(1, 10, timerClock);
CTIMER_SetupPwmPeriod(CTIMER, CTIMER_MAT_PWM_PERIOD_CHANNEL, CTIMER_MAT_OUT_2, g_pwmPeriod, g_pulsePeriod, true);
把蓝灯和路灯合在一起可以,但单独的输出有问题。需要像lpcxpresso55s69_ctimer_match_interrupt_example中的为每个通道单独设个结构体,在写个回调函数?
两路分别设置。
lpcxpresso55s69_ctimer_match_interrupt_example这个列子只是单纯的使用多通道,并没有使用pwm功能吧
Hello,
1) 我想实现一个周期为1s的pwm波来控制led灯,其中900ms的时间内灯亮。那么就要使用ctimer的pwm功能产生频率为1Hz的pwm波吗?
->> 是的, SDK 下有demo, 你可以参考。
2) 有没有示例代码使用了ctimer的多个match通道的?
->> 有, SDK下的 “”lpcxpresso55s69_ctimer_match_interrupt_example’ , 是两个通道。
BR
Alice