ZHCAFJ4 July   2025 MSPM0C1104

 

  1.   1
  2.   摘要
  3.   商标
  4. 1简介
    1. 1.1 PWM 信号捕获简介
    2. 1.2 MSPM0C110x 简介
  5. 2PWM 信号捕获
    1. 2.1 PWM 信号捕获方法
    2. 2.2 使用 TIMx CC 块进行的 PWM 信号捕获
    3. 2.3 使用 GPIO 中断进行的 PWM 信号捕获
    4. 2.4 不同 PWM 信号捕获设计的比较
  6. 3软件实现
    1. 3.1 识别上升沿和下降沿
    2. 3.2 时序分类
    3. 3.3 信号滤波器和结果计算
  7. 4系统测试
    1. 4.1 测试设置
    2. 4.2 变量监测
    3. 4.3 PWM 信号捕获分辨率测试和比较
  8. 5总结
  9. 6参考资料

使用 TIMx CC 块进行的 PWM 信号捕获

捕获和比较 (CC) 块用于捕获事件或比较事件。使用 MSPM0C 系列 MCU 时,TIMG 具有多达 2 个相同的捕获和比较块,TIMA 具有多达 4 个相同的捕获和比较块,用于支持外部或内部信号。计时捕获模式用于生成捕获事件并记录时间间隔,这对于速度计算或时间测量很有用。请参阅 MSPM0 C 系列 24MHz 微控制器技术参考手册,了解有关 CC 锁定设置和关键寄存器的更多信息,以便配置捕获模式。

使用两个捕获寄存器可以同时捕获单个输入波形的脉宽和周期。输入信号可以从外部连接到 CCP 的通道 0,IFCTL_01[1] 寄存器可以配置为在内部将输入端连接到 CCP 的通道 1,从而使捕获寄存器 0 (TIMx.CC0) 来捕获脉宽,捕获寄存器 1 (TIMx .CC1) 来捕获周期。组合脉宽和周期捕获的预期内部时序如图 2-1 所示。

 组合的脉宽和周期捕获图 2-1 组合的脉宽和周期捕获

下面是占空比和周期计算公式:

方程式 1. P e r i o d = T L o a d - T C c 1
方程式 2. Duty=Tload-TCC0Period
  • T_load 是在 TIMx.CTR 中加载的最大值
  • T_cc0 是 TIMx.CC0 中捕获的值
  • T_cc1 是 TIMx.CC1 中捕获的值

TIMx.CTR 设置为向下计数模式时,公式成立。

图 2-2 展示了这种方法的捕获时序,因为在 T1 捕获第一个输入边沿信号后,必须手动重新加载 TIMx.CTR。T1 到 T2 之间的延时时间导致该误差。

 使用 Timx CC 块捕获 PWM 占空比和周期的计时器顺序图 2-2 使用 Timx CC 块捕获 PWM 占空比和周期的计时器顺序
  • T1:触发中断以将 PRD 值加载到 CTR 中
  • T2:将计时器计数值复位,以将值加载到中断处理程序中
  • T2 - T1:进入中断处理程序以加载值的时间间隔
  • T3:加载到 CC0 中的计数值
  • T4:加载到 CC1 中的计数值并触发中断