杰理AC690X系列---关于电机PWM和定时器映射PWM(5)

杰理690X系列的芯片目前只有4路定时器,分别是 Timer0,Timer1,Timer2,Timer3

其中Timer0被系统时钟占用,无法用于PWM输出。

本人前些日子做了一个项目,要求加入手机APP功能,并且还需要支持红外遥控,RGB总共需要三路PWM,遥控器占用Timer1

那么问题来了,遥控器和系统时钟已经占用了两个定时器,目前只剩下Timer2和Timer3.

更要命的是Timer2和Timer3如果不用自身PWM,选择使用映射的话只能用其中一个,因为这两个定时器的映射占用的是同一个通道

这种情况下这个项目似乎就做不了了。

但是一个偶然机会我发现了mcpwm_test()这个函数,实体如下:

杰理AC690X系列---关于电机PWM和定时器映射PWM(5)

这个是驱动电机专用的PWM,精度更高,所以用来驱动灯也是一点问题也没有的。

于是点进相关定义,根据说明做了配置,就OK了

杰理AC690X系列---关于电机PWM和定时器映射PWM(5)

电机PWM使用比较简单,初始化完调用两个函数即可,并且可以同时使用6路电机PWM

再加上两个定时器自身PWM输出,总共有8路PWM,这下就绰绰有余了。