1. 目的
主要介绍 MPC5744 的 PWM 模块 。
2. PWM 简介
2.1 PWM 四种产生模式
(a)中心对齐 PWM
(b)双开关 PWM
(c)边沿对齐 PWM
(d)相位偏移输出 PWM
图 1 PWM 模组框架
如图 1 ,是 PWM 产生的四种模式 ,分别如下介绍
图 1(a)中心对齐 PWM :VAL1是PWM 周期计数 ,VAL2 和 VAL3 决定 PWMA 上升下降沿 ,VAL4 和 VAL5 决定 PWMB 上升下降沿 。
图 1(b)双开关 PWM :VAL1 是 PWM 周期计数 ,VAL2 和 VAL3 是 A 通道 ,VAL4 和 VAL5 是 B 通道 ,这两个通道逻辑电平异或之后就是此 PWM 。
图 1(c)边沿对齐 PWM :VAL1 是 PWM 周期计数 ,初始化时 PWM 为高电平 ,VAL3 决定 PWMA 下降沿 ,VAL5 决定 PWMB 下降沿 。
图 1(d)相移输出PWM :VAL1 是 PWM 周期计数 , VAL2 和 VAL3 决定 PWMA 上升下降沿 ,VAL4 和 VAL5 决定 PWMB 上升下降沿 ,但此时 PWMA和PWMB 都有一个相移(可视为偏移量),即 VAL2 和 VAL3 这一对或 VAL4 和 VAL5 这一对会根据相应的相移(偏移量)进行相应偏移 。
2.2 模组和通道介绍
图 2 PWM 模组框架
如图 2 ,一个 PWM 模组框架一共有四个通道 ,每个通道可输出 A 、B 、X 。其中左上角可以看出 ,可以接外部同步信号(初始化计数器)和外部强迫输出信号 (用外部信号使得 PWM 输出) 。相对于这两个外部信号的有主同步信号 (初始化计数器 , 一般是通道 0 计数器与 VAL1 相同时 ,即 PWM 已经达到周期时重新初始化计数器)和主强迫输出 (强迫 PWM 输出) ,每个模组的通道 0 即为该模组的主同步信号和主强迫输出来源 ,这些都可以使得 PWM 同步和同步输出 ,另外的主重载信号是用于更改 PWM 频率 ,占空比的信号 。此外 ,输出触发可用于诸如 ADC 触发转换 ,故障模块一般用于发生故障时强迫 PWM 输出逻辑 0 ,逻辑 1 或 tri 。
如图 3 ,其中 PWMA 和 PWMB 可以作为单独 PWM ,但是同一个通道的周期必定一致 ,占空比可以不一致 ,也可以作为互补 PWM ,PWMX 一般不用于 PWM 输出 ,因为其占空比固定为 50% ,
图 3 PWM 通道框架
PWMX 一般用于 PWM 捕获 。如图 4 ,互补 PWM需要选择 PWM23 或 PWM45 作为占空比调节 ,其中死区时间可设置 。
图 4 互补 PWM
2.3 重载信号
图 5 重载信号作用
重载信号用于更新 PWM 频率 ,空空比信息 (即更新 VALx) ,可以选择 LDOK 、Half 匹配 、Full 匹配 、Half&Full 匹配和主重载信号来进行重载 ,主重载信号即为通道 0 的重载信号 ,LDOK 即在设置 LDOK 时产生重载信号 ,但需要注意 :LDOK 的另外作用是更新重载缓冲寄存器 ,即设置 LDOK 之后 ,更新的值才会写进缓冲寄存器 ,之后又重载信号才会进行重载 。Half 匹配即计数器值与 VAL0 数值匹配时 ,Full 匹配即计数器值与 VAL1 数值匹配时 ,如图 5 ,重载频率即选择多少个 PWM 周期之后重载一次 ,这个主要是针对 Half 匹配和 Full 匹配的 。
3. 参考资料
(1) NXP 官网 :《MPC5744PRM》
下载链接 :
评论