2# figo20042005
看了看手册,对应程序,理解了下面三个:
toggle:管脚状态翻转,在CCRx与CNT匹配时,翻转输出;CNT溢出后输出变回原来的状态(与PWM输出相似);
active:CCRx与CNT匹配之前,输出无效状态;匹配时变成有效状态;CNT溢出后又变成无效状态(与Toggle和PWM输出还是类似)
inactive:与Active相反,CCRx与CNT匹配之前,输出有效状态;匹配之后输出无效状态;CNT溢出时输出无效状态。(与Toggle和PWM输出还是类似)
Active和Inactive输出的是有效状态是高还是低,要看CCER寄存器的CCxP位设置。
依照上面看,Toggle、Active和Inactive三个模式其输出波形都和PWM类似(是输出波形啊),而且其占空比都可以通过CCRx来控制。
如果上面的分析正确,那为什么要设置这么多个模式呢,一个PWM1和PWM2不就能实现以上功能了么?
另外针对Timing模式,手册上说的是管脚输出无变化,那和调用IM_ForcedOCxConfig()函数强制输出有什么区别?更重要的是,我最近配置Timing模式输出,其管脚输出状态在改变,这又是怎么回事?
|