ZHDA037 January   2026 MSPM0G3507 , MSPM0G3519

 

  1.   1
  2.   摘要
  3.   商标
  4. 1简介
    1. 1.1 双轮投影仪系统
    2. 1.2 MSPM0 要求
  5. 2MSPM0 中的色轮控制
    1. 2.1 软件结构
    2. 2.2 外部边沿差捕获
      1. 2.2.1 带比较器的输入滤波器
    3. 2.3 内部位置环路控制
    4. 2.4 速度控制输出
  6. 3测试和评估方法
    1. 3.1 测试系统设置
    2. 3.2 性能评估
  7. 4总结
  8. 5参考资料

外部边沿差捕获

MSPM0 可以使用一个计时器的两个捕获通道来捕获外部脉冲宽度。通过配置捕获操作,MSPM0 可以轻松捕获两个脉冲信号的边沿差。

通过以不同的方式配置捕获操作,可采用多种方法来捕获外部信号边沿差。以下是一个方法示例。

首先,确认双轮控制应用的系统要求,即需要捕获两个信号边沿之间的时间间隔。例如,M0 必须捕获同步信号 的下降沿和索引 的上升沿之间的时间差,如图 1-2 所示。

用户必须配置计时器的寄存器以控制两个输入信号边沿上的计时器操作。表 2-3 是必要的计时器配置和相关的寄存器说明。这里,CC0 输入被配置为索引 的输入捕获通道,CC1 输入被配置为同步信号 的输入捕获通道。计时器的计数器处于向下计数模式,并在同步信号 的上升沿重新加载。

表 2-1 边沿差捕获计时器配置
配置 寄存器 说明
Syscfg - 计时器计数模式 CTRCTL.REPEAT 启用重复模式以连续检测边沿差
Syscfg - 计时器周期 LOAD 控制最大检测周期,如果色轮速度为 100Hz 且周期为 10ms,则将负载值设置为大于 12ms
Syscfg - CC0 捕获条件 CCCTL_01.CCOND 将 CC0 捕获条件设置为由 CC0 输入上升沿触发
Syscfg - CC1 捕获条件 CCCTL_01.CCOND 将 CC1 捕获条件设置为由 CC1 输入下降沿触发
CC1 负载条件 CCCTL_01.LCOND 将 CC1/计数器负载条件设置为由 CC1 输入上升沿触发
计数器负载控制 CTRCTL.CLC

启用边沿差捕获计时器后,M0 可以在 CC0 和 CC1 中断中读取 CC0 和 CC1 的值,CC0 和 CC1 之间的差值即为边沿差值。整个捕获过程基于计时器的捕获硬件,边沿差不会受到软件执行速度的影响。然后,将捕获的差值输入校准模块以运行控制算法。

注: 根据不同的 CC 输入信号边沿捕获要求和波形,可使用 MSPM0 的计时器以多种配置实现硬件边沿差捕获功能。同时,索引同步信号 不限于以固定顺序输入到 CC0 和 CC1,并且 MSPM0 中的高级计时器也支持 CC2 和 CC3 作为捕获输入。有关详细信息,请参阅 MSPM0 器件的数据表和技术参考手册。
注: 用户可以根据 MSPM0-SDK driverlib 计时器示例代码,通过将捕获模式设置为多点捕获,轻松将计时器修改为边沿差捕获功能。