Edit online

脉冲输出功能

Read time: 1 minute(s)

脉冲输出功能用于产生固定脉冲数量,并且脉冲的频率和占空比均可以调整。利用 EPWM 的 A、B 通道输出,可以产生典型的方向脉冲、正交脉冲和 CW/CCW 脉冲信号。

脉冲输出

脉冲输出的功能,通过影子更新信号 PUL_CNT_ZRO,配合以下寄存器的影子更新实现:

  • PWM_CNT_PRDV:PWM 计数器的周期值,用于控制产生脉冲的周期。

  • PWM_CNT_AV:PWM 计数器比较 A 值。

  • PWM_CNT_BV:PWM 计数器比较 B 值。

  • PWMA_ACT:PWMA 动作寄存器。

  • PWMB_ACT:PWMB 动作寄存器。

  • PWMA_ACT_SW_CT:软件持续控制 PWMA 动作。

  • PWMB_ACT_SW_CT:软件持续控制 PWMB 动作。

  • PUL_OUT_NUM:输出脉冲设置,用于控制产生脉冲的数量。

影子更新信号 PUL_CNT_ZRO,可以通过寄存器的使能作为中断信号。以下三种方式可以产生 PUL_CNT_ZRO:

  1. 软件写寄存器字段EPWM_PUL_OUT_EN = 0x1,使能脉冲输出功能。

  2. 脉冲计数器完成脉冲数 NUM 的计数。

  3. 软件写寄存器字段EPWM_PUL_SW_UPDT = 0x1,强制产生一次 ZRO 的信号。

脉冲计数器的计数,可以通过寄存器字段 EPWM_PUL_CNT_SRC 选择不同触发信号作为脉冲计数器的信号源。 而脉冲数寄存器的配置,可以控制脉冲计数器需要的计数次数,计数次数为(PUL_OUT_NUM + 1),在完成脉冲计数后,会产生一次 PUL_CNT_ZRO 信号,用于硬件自动更新影子寄存器。