ZHCABH5B December   2011  – February 2022 MSP430G2112 , MSP430G2152 , MSP430G2212 , MSP430G2252 , MSP430G2312 , MSP430G2352 , MSP430G2412 , MSP430G2452

 

  1.   摘要
  2.   商标
  3. 1典型单时基方法
  4. 2多时基方法
  5. 3在定制应用中实现多时基方法
    1. 3.1 计时器时钟源选择
    2. 3.2 周期和频率计算
    3. 3.3 占空比计算
  6. 4示例代码
    1. 4.1 方法
      1. 4.1.1 用于生成多个频率的 ISR
      2. 4.1.2 用于生成多个频率和占空比(PWM)的 ISR
    2. 4.2 包含的代码示例
  7. 5多时基方法的限制
    1. 5.1 ISR 开销
    2. 5.2 最大输出频率与信号数量
    3. 5.3 功耗
  8. 6参考文献
  9. 7修订历史记录

多时基方法

可以通过使用连续模式在同一计时器模块上实现多个计时器周期。在连续模式下,计时器始终会向上计数到 0xFFFF,然后回滚,而不是每次在 TxCCR0 处复位。这意味着,周期不再是通过将常数值置于 TxCCR0 中来进行设置,而是由 TxCCRx 上一个值和下一个值之间的差值来为每个捕获比较寄存器 设置周期。例如,这意味着在代码中,我们并不是在程序开头设置 TACCR0 = 0xFF,而是需要在每次计数器达到 TxCCR0 时动态更改 TxCCR0(“TACCR0 += 0xFF”)。由于每个 TxCCRx 寄存器现在都完全独立于 TxCCR0,因此可以针对每个计时器模块上的每个 TxCCRx 寄存器生成一个不同的频率,从而显著增加可生成的频率数量。图 2-1 显示了连续模式下 TxCCR0 值与两个独立周期 t0 和 t1 之间的关系。t0 对应于每次中断时增加到 TxCCR0 的计数,而 t1 对应于每次中断时增加到 TxCCR1 的计数,这会生成两个不同的周期。

GUID-5747CE6D-1D41-4341-8C74-B723F84D834F-low.gif图 2-1 连续模式时间间隔

使用多时基方法时,可在特定 MSP430 器件上同时生成的频率和占空比数量取决于器件上的 TxCCRx 寄存器总数。

继续以前面采用 MSP430F5529 器件的示例来说,可用计时器包括具有五个捕获/比较(CC)寄存器的 TA0、具有三个 CC 寄存器的 TA1、具有三个 CC 寄存器的 TA2,以及具有七个 CC 寄存器的 TB0。因此,在 MSP430F5529 上使用多时基方法时:

频率和占空比数量 = 5 CC + 3 CC + 3 CC + 7 CC = 18 个频率和占空比

使用单时基方法时,具有 14 个不同占空比的四个频率是唯一可用的选项。使用多时基方法时,则可以使用 18 个可用频率和占空比的任何组合。