本帖最后由 whz7783478 于 2015-10-22 11:29 编辑
每个channel确实是有对应的控制寄存器,该寄存器只能决定其工作模式是输入捕获、输出比较、PWM、组合PWM等等。假设channel0和channel1配置为输出比较,其他的channel配置为边沿对齐PWM。先初始化PWM,CNTIN=0,MOD=0xff,此时FTM的COUNTER由于其他的channel在使用PWM,已经在进行向上计数。在运行了一段时间的PWM后,CPU发现有输出比较的任务,配置C0V=0x10,C1V=0x50.由于此时FTM COUNTER的值是一直在运行的,可能会出现CPU配置C0V/C1V落在FTM COUNTER不同的区间,也就会可能导致channel0和channel1在输出反转脉冲的次数会差1.有没有什么方法能保证输出比较同时在一个FTM COUNTER从0起始的周期进行比较?
|