[学习资料] microchip dspic33 系列教程

[复制链接]
4596|62
 楼主| 逢dududu必shu 发表于 2023-11-30 23:36 | 显示全部楼层 |阅读模式
microchip dspic33 系列教程
作为数字电源芯片,microchip的这款芯片拥有很强的PWM功能,这篇文章就先说说它的支持精细边沿定位的高分辨率PWM.

1)特性:
以下是这个PWM模块的特性不仅限于以下特性,有些特性不常用笔者省去了:
• 最多 8 个独立的 PWM 发生器,每个发生器均配有双输出
• 工作模式:
– 独立边沿 PWM 模式
– 可变相位 PWM 模式
– 独立边沿 PWM 模式,双输出
– 中心对齐 PWM 模式
– 双重更新中心对齐 PWM 模式
– 双边沿中心对齐 PWM 模式
• 输出模式:
– 互补
– 独立
– 推挽
• 死区发生器
• 灵活的周期/占空比更新选项
• PWM 控制输入(PWM Control Input,PCI),用于 PWM 引脚改写和外部 PWM 同步
• 高级触发选项
• 组合逻辑输出
• PWM 事件输出

2)框架:
PWM 发生器操作基于触发信号。要产生 PWM 周期,必须接收周期开始(Start-of-Cycle,SOC)触发信号;触发信号
可以是自触发的,也可以是来自外部源的。

————————————————
版权声明:本文为CSDN博主「莫得感情123」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_40365743/article/details/131208856

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
 楼主| 逢dududu必shu 发表于 2023-11-30 23:36 | 显示全部楼层

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
 楼主| 逢dududu必shu 发表于 2023-11-30 23:37 | 显示全部楼层
3)控制寄存器:
本章只讨论部分寄存器,若要其他寄存器请去官网看资料;

3-1:PGxCONL


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
 楼主| 逢dududu必shu 发表于 2023-11-30 23:37 | 显示全部楼层
Bit 15 – ON PWM 发生器 x 使能位

1 使能 PWM 发生器
0 禁止 PWM 发生器
 楼主| 逢dududu必shu 发表于 2023-11-30 23:37 | 显示全部楼层
Bit 10:8 – TRGCNT[2:0] PWM 发生器 x 触发计数选择位(默认000就好)
Bit 7 – HREN PWM 发生器 x 高分辨率使能位

1 PWM 发生器 x 工作在高分辨率模式下
0 PWM 发生器 x 工作在标准分辨率模式下
 楼主| 逢dududu必shu 发表于 2023-11-30 23:37 | 显示全部楼层
Bit 4:3 – CLKSEL[1:0] 时钟选择位(1)
Bit 2:0 – MODSEL[2:0] PWM 发生器 x 模式选择位

111 双边沿中心对齐 PWM 模式(每周期中断/寄存器更新两次)
110 双边沿中心对齐 PWM 模式(每周期中断/寄存器更新一次)
101 双重更新中心对齐 PWM 模式
100 中心对齐 PWM 模式
011 保留
010 独立边沿 PWM 模式,双输出
001 可变相位 PWM 模式
000 独立边沿 PWM 模式
 楼主| 逢dududu必shu 发表于 2023-11-30 23:37 | 显示全部楼层
3-2 :PGxCONH

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
 楼主| 逢dududu必shu 发表于 2023-11-30 23:38 | 显示全部楼层
Bit 15 – MDCSEL 主占空比寄存器选择位

1 PWM 发生器使用 MDC 寄存器
0 PWM 发生器使用 PGxDC 寄存器
 楼主| 逢dududu必shu 发表于 2023-11-30 23:38 | 显示全部楼层
Bit 14 – MPERSEL 主周期寄存器选择位

1 PWM 发生器使用 MPER 寄存器
0 PWM 发生器使用 PGxPER 寄存器
 楼主| 逢dududu必shu 发表于 2023-11-30 23:38 | 显示全部楼层
Bit 13 – MPHSEL 主相位寄存器选择位

1 PWM 发生器使用 MPHASE 寄存器
0 PWM 发生器使用 PGxPHASE 寄存器
 楼主| 逢dududu必shu 发表于 2023-11-30 23:38 | 显示全部楼层
Bit 11 – MSTEN 主更新使能位

1 PWM 发生器向其他 PWM 发生器广播 UPDREQ 控制位的状态(通过软件设置)和 EOC 信号
0 PWM 发生器不广播 UPDREQ 状态位的状态和 EOC 信号
 楼主| 逢dududu必shu 发表于 2023-11-30 23:38 | 显示全部楼层
Bit 10:8 – UPDMOD[2:0] PWM 缓冲区更新模式选择位
Bit 7 – 保留 保持为 0
Bit 6 – TRGMOD PWM 发生器 x 触发模式选择位

1 PWM 发生器工作在可重触发模式下
0 PWM 发生器工作在单触发模式下
 楼主| 逢dududu必shu 发表于 2023-11-30 23:38 | 显示全部楼层
Bit 3:0 – SOCS[3:0] 周期开始选择位

1111 仅 TRIG 位或 PCI 同步功能(不选择硬件触发源)
1110-0101 保留
0100 通过 PG4 或 PG8 PGTRGSEL[2:0]位(PGxEVTL[2:0])选择的触发输出
0011 通过 PG3 或 PG7 PGTRGSEL[2:0]位(PGxEVTL[2:0])选择的触发输出
0010 通过 PG2 或 PG6 PGTRGSEL[2:0]位(PGxEVTL[2:0])选择的触发输出
0001 通过 PG1 或 PG5 PGTRGSEL[2:0]位(PGxEVTL[2:0])选择的触发输出
0000 本地 EOC——PWM 发生器自触发
 楼主| 逢dududu必shu 发表于 2023-11-30 23:38 | 显示全部楼层
3-3:PGxIOCONL

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
 楼主| 逢dududu必shu 发表于 2023-11-30 23:39 | 显示全部楼层
Bit 15 – CLMOD 限流模式选择位

1 如果 PCI 限流处于有效状态,则 PWMxH 和 PWMxL 输出信号反相(位翻转),不使用 CLDAT[1:0]位
0 如果 PCI 限流处于有效状态,则 CLDAT[1:0]位定义 PWM 输出电平
 楼主| 逢dududu必shu 发表于 2023-11-30 23:39 | 显示全部楼层
Bit 14 – SWAP 交换 PWMxH 和 PWMxL 器件引脚的 PWM 信号位

1 PWMxH 信号连接至 PWMxL 引脚,PWMxL 信号连接至 PWMxH 引脚
0 PWMxH/L 信号映射到它们各自对应的引脚
 楼主| 逢dududu必shu 发表于 2023-11-30 23:39 | 显示全部楼层
Bit 13 – OVRENH PWMxH 引脚的用户改写使能位

1 OVRDAT[1]为 PWMxH 引脚上的输出提供数据
0 PWM 发生器为 PWMxH 引脚提供数据
 楼主| 逢dududu必shu 发表于 2023-11-30 23:39 | 显示全部楼层
Bit 12 – OVRENL PWMxL 引脚的用户改写使能位

1 OVRDAT[0]为 PWMxL 引脚的输出提供数据
0 PWM 发生器为 PWMxL 引脚提供数据
 楼主| 逢dududu必shu 发表于 2023-11-30 23:39 | 显示全部楼层
Bit 11:10 – OVRDAT[1:0] 使能改写时 PWMxH/PWMxL 引脚数据位

如果 OVRENH = 1,则 OVRDAT[1]为 PWMxH 提供数据。
如果 OVRENL = 1,则 OVRDAT[0]为 PWMxL 提供数据。
 楼主| 逢dududu必shu 发表于 2023-11-30 23:39 | 显示全部楼层
Bit 9:8 – OSYNC[1:0] 用户输出改写同步控制位

11 保留
10 何时通过 SWAP、OVRENL/H 和 OVRDAT[1:0]位进行用户输出改写由 PGxCONH 寄存器中的UPDMOD[2:0]位指定
01 立即(尽快)通过 SWAP、OVRENL/H 和 OVRDAT[1:0]位进行用户输出改写
00 通过 SWAP、OVRENL/H 和 OVRDAT[1:0]位进行的用户输出改写与本地 PWM 时基同步(下一周期开
始时进行)
您需要登录后才可以回帖 登录 | 注册

本版积分规则

78

主题

502

帖子

2

粉丝
快速回复 在线客服 返回列表 返回顶部