ZHCABH5B December 2011 – February 2022 MSP430G2112 , MSP430G2152 , MSP430G2212 , MSP430G2252 , MSP430G2312 , MSP430G2352 , MSP430G2412 , MSP430G2452
在用于生成 PWM 的单时基方法中,无需重新载入 TxCCRx 寄存器,并且甚至无需进入 ISR,便会自动生成输出。这意味着,在初始计时器配置后,不存在软件开销,因为一切工作均由硬件处理。在多时基方法中,每个高电平周期和低电平周期结束时都会进入 ISR,因此会增加一些软件开销。
虽然代码示例中的 ISR 都保持长度尽可能最小,但增加软件开销的所需操作包括:
生成的每个信号都会增加此开销,因为这会增加 ISR 中所用的时间百分比。如果 ISR 中使用的周期数相比于 ISR 间的周期数(由用户的周期计数值设置)来说太大,进而导致无法及时处理中断,便会出现问题。因此,这里存在一个截止点,因 ISR 代码所增加延迟而使用的 TACCRx 寄存器数量而异。对于待生成的特定数量的信号,则当计时器时钟由 MCLK 提供时,从周期数量方面来看,此截止点会在 MCLK 频率上基本保持不变。这是因为该值表示 ISR 周期数量与中断间周期数量之比。图 5-1 显示了生成可靠信号的最小周期数量与 MCLK 之间的固定关系。这转而导致最大输出频率与 MCLK 之间存在线性关系,如图 5-2 所示。
MCLK (MHz) |
最小周期计数 | 最大频率 (kHz) |
---|---|---|
1 | 150 | 6.67 |
8 | 150 | 53.33 |
12 | 150 | 80 |
16 | 150 | 106.67 |