当前位置:首页 > > 电源漫谈
dsPIC33AKxxxMPSxxx是一个200MHz主频的,且带FPU浮点单元的32位数字电源控制器,PWM分辨率在高分辨率下为78pS精度。多个PWM同步使用在电源应用中较为常见,比如隔离变换器的原边和副边的驱动信号,这里基于规格书说明,简要说明一下其触发关系。

每个PWM 发生器必须接收一个周期起始(SOC) 触发信号才能开始一个PWM 周期。触发信号可以由PWM 发生器本身(自触发)或其他外部触发源提供。SOC 触发信号可由以下三个来源产生:

内部触发源,其时钟源由SOCS[3:0] 位选择(PGxCON[19:16])

外部触发源,由PWM 控制输入(PCI) 同步模块选择

软件触发请求,写入TRSET (PGxSTAT[7])

任何PWM 发生器都可以充当主机,为其他PWM 发生器提供触发信号。可以实现多种触发配置,包括:

•多个具有独立周期的PWM 输出(PWM 发生器之间无需同步)

多个具有同步周期的PWM 输出(同步操作)

多个具有偏移相位关系的PWM 输出(触发操作)

通过将一个从PWM 发生器的SOCSx 位设置为另一个主PWM 发生器,并将主机的PGTRGSEL[2:0] (PGxEVT1[18:16]) 设置为000,即可实现同步操作。

这将选择主PWM的EOC 作为从PWM的SOC 触发器。当使用PGxTRIGy PWM 发生器进行相位偏移时,会出现最多5 pwm_master_clk 的同步延迟。如果TRIG 值为0,仍会存在偏移。TRIGy 值可能需要根据应用进行补偿。

触发操作的实现方式类似,但需要设置主PWM的PGTRGSEL[2:0] (PGxEVT1[18:16]) 来选择其中一个PGxTRIGy 计数器(y = A F)。主PWM的TRIGy 寄存器中指定的值定义了从机与主机SOC 的触发偏移量。

SOCS[3:0] 控制位有两个特殊选择。当SOCS[3:0] = 0000 时,PWM 发生器由内部触发。

SOSC[3:0] = 1111 时,未选择触发源。当PWM 发生器仅由软件触发(使用TRSET 位)或连接到PCI 同步模块的源触发时,此选项非常有用。在此模式下,下一个PWM 周期直到收到另一个触发信号才会启动。

PCI 同步模块可用的信号源包括外部信号,例如比较器事件和设备I/O 引脚等。PCI 同步模块的重要功能之一是将外部输入信号同步到PWM 发生器的时钟域。有关PCI 模块的更多信息,请参阅PWM 控制输入(PCI) 逻辑模块。只要模块处于启用状态,PCI 同步模块就可以与任何其他周期起始输入(SOCS[3:0])进行运算。另一个PWM 发生器的触发输出也可用作SOC 事件。有关配置选项,请参阅事件选择模块。

针对上述的规格书中的触发关系,简单测试了PWM1触发PWM2,同时用PWM1触发PWM5进行验证,PWM1的触发信号为EOC信号,自身为自触发。

CH1-PWM1H-CH2-PWM2H-CH3-PWM5H

从上述波形可知,PWM1HPWM2H之间的相位基本一致,PWM1HPWM5H之间有一定延时,但不超过5nS,相对较小,可以忽略。

从上述波形可知,PWM1HPWM2H之间的相位基本一致,PWM1HPWM5H之间有一定延时,但不超过5nS,相对较小,可以忽略。

这里和dsPIC33AKxxxMPSxxx规格书中描述,会出现最多5 pwm_master_clk 的同步延迟的说法也较为一致,这里PWM的分辨率为78pS,而pwm_master_clk设置为了800MHz5个周期即为5.25nS左右。



本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除( 邮箱:macysun@21ic.com )。
关闭