当前位置:网站首页>开关电源-PWM外设简介及MCC配置
开关电源-PWM外设简介及MCC配置
2022-07-29 12:54:00 【liht_1634】
当前中小功率电源还是模拟控制为主,但是随着数字化的发展,主控MCU性价比越来越高,电源控制的数字化是今后的趋势。很多工程师觉得电源的数字化控制高大上,模拟控制都还没弄的明白,就进入数字化觉得比较困难。其实电源的数字化并没有那么遥不可及,大家可以参考本人写的专题《基于MCHP 16bit dspic33系列全数字控制同步Buck入门》系列文章,其实非常的容易。数字化的核心就是将模拟连续信号离散化,通过ADC外设完成模拟信号的采样,然后在MCU内部全部完成环路的控制,并实时的更新PWM外设去控制主功率拓扑的能量转换,区别在于模拟控制在s域,数字控制在z域。
要想实现一个最基本的功率拓扑,两大外设必不可少,一个是PWM外设,一个是ADC模块。PWM外设完成对占空比/周期/移相等调制波的变换,ADC模块完成外部模拟信号(电压/电流等)的采样并转换。因为本专题主要是实现方式,所以不涉及ADC模块,讲重点介绍PWM实现功率拓扑的方式。
本专题主要采用MCC(MPLAB Code Configuration )实现,下面将进行PWM外设工作最基本的配置介绍,后续章节的PWM实现均在这个基础上进行。
Microchip最新一代的dsPIC33C系列专门用于电源和电机的控制,单核c系列多达8对HRPWM,双核CH系列有(8+4)对HRPWM,高精度模式下分辨率达到了250ps,每个PGx模块下有4个PCI模块(PWM Control Input),使得PWM非常的灵活方便实现各种功率拓扑控制方式以及保护功能。
下面介绍PWM模块MCC配置方法及如何使用。
1.系统时钟的配置(System Clock Selection)
一般如果外部使用8MHz晶振,选择Primary Oscillator模式。
时钟设置
主振荡器和内部FRC振荡器源可选择使用片上PLL(主内核锁相环)来获取更高的工作速度,比如主频100MIPS(每两个时钟周期执行一条指令,故时钟频率为200MHz)。
PLL
dsPIC33C器件系列为每个内核实现了一个附属PLL模块。附属PLL模块用来生成独立于系统时钟的各种外设时钟源,比如给PWM模块提供500MHz时钟源就是来自于此。如下:
APLL
至此时钟配置完毕。
2.配置仿真口,取决于你自己的选择(PGD1/PGD2/PGD3),在这里我选择PGD2仿真口。
PGC和PGD
3.配置PWM外设
PWM Clock Setting
如果要使能高精度模式,必须选择500MHz时钟源,否则下面的高精度模式无法选择。
APLLO选择
Select Required PWM Generators有PG1~PG8供选择(根据不同型号PGx数量不一致),可以根据自己需要进行配置。
PWM Master Settings
PWM工作模式选择
1.PWM工作模式
PWM模块支持多种PWM模式,适用于电机控制和电源设计,主要支持以下PWM模式:
PWM工作模式
2.PWM输出模式
每个PWM发生器都可以编程为三种输出模式之一,以控制PWMxH和PWMxL引脚的行为。输出模式选择与PWM模式无关。输出模式包括:
PWM输出模式
PWM Freqence Settings
工作频率/占空比/相移可以根据自己选择,因为每个PG模块都是一个单独的个体,所以可以有自己的工作频率/占空比/相移,可以选择Use Master Period/Duty Cycle让不同个PG模块使用同一个参数。
Trigger Control Settings
PWM发生器操做基于触发信号。PWM发生器必须接收到周期开始(SOC)触发信号才能产生各个PWM周期。触发信号可以在PWM发生器外部产生,PWM发生器也可以自触发。当PWM发生器到达PWM周期末尾时,它会产生一个周期结束(End-of-Cycle, EOC)触发信号,该触发信号可供其他PWM发生器使用。
SOC(Start-of-Cycle) trigger sources有下面一些:
Local SOC
Othet's PG's ECO
Other PG's Trigger
Comparator
CLC
I/O Pins
Software trigger
PCI Sync(Always OR'd with other SOC signal)
Start of cycle trigger 选项要注意:PG1-PG8分为两组,PG1-PG4之间相互触发同步,PG5-PG8之间相互触发同步,也就是说PG1不能作为PG5-PG8的触发源。但是可以通过PCI模块进行每个PG模块之间的同步。
ADC Trigger
ADC 触发
Dead Time and Override Settings
在互补输出模式下的死区时间设置,PWM H/L Overirde为软件改写。
Data Update Settings
为进行数据寄存器更新,PWM周期长度可变。PWM周期可包含一个、两个或四个定时器周期,具体取决于PWM工作模式和所选输出模式。请求SOC更新后,PWM数据寄存器可在下一个、下两个或四个定时器周期进行更新(由PWM工作模式和输出模式决定,详见FRM)。下表总结了每次SOC更新之间相隔的定时器周期数与PWM发生器工作模式和输出模式之间的关系。
更多的功能配置请参考数据手册在寄存器页进行配置。
上管导通,下管G极有尖峰,这种误导通的问题一般是由米勒电容充电引起的,参考下图。
如:下管已关断,这时上管开通,桥臂中点电压从0变成Vin,这时候,下管的Cgd是被充电的,充电电流流经驱动回路的驱动电阻,造成电压尖峰,从而引起误导通。
解决方法:减小驱动电阻,或者驱动电压加负压。
边栏推荐
- RedisTemplate使用详解
- 如何监控海外服务器性能
- MySql string splitting realizes the split function (field splitting, column switching, row switching)
- The IDEA of Database plug-in Database Navigator plug-in
- 基于对象的实时空间音频渲染丨Dev for Dev 专栏
- JS_删除数组里的无效数据 0 undefined ‘‘ null false NaN
- npm出现报错 npm WARN config global `--global`, `--local` are deprecated. Use `--location=global
- What should I do if the webpage is hijacked and redirected?Release net repair method
- 一起来侃个球
- DBeaver 安装及配置离线驱动
猜你喜欢
70行代码撸一个桌面自动翻译神器!
【C#】WCF和TCP消息通信练习,实现聊天功能
电子游戏的核心原理
mysql5.7.35安装配置教程【超级详细安装教程】
MySql字符串拆分实现split功能(字段分割转列、转行)
3D Laser SLAM: Interpretation of LeGO-LOAM Papers---Hardware System Part
CentOS7安装Oracle数据库的全流程
TiCDC synchronization delay problem
阿里云官方 Redis 开发规范!
【kaggle】Spaceship Titanic - 预测哪些乘客被运送到另一个维度【CatBoost - 10%】
随机推荐
微信小程序的登录
Navicat如何连接MySQL
npm出现报错 npm WARN config global `--global`, `--local` are deprecated. Use `--location=global
HCIP第十三天笔记(BGP的路由过滤、BGP的社团属性、MPLS)
Nacos分级存储模型-集群配置与NacosRule负载均衡
容器化 | 在 Rancher 中部署 MySQL 集群
传奇版本添加npc修改增加npc方法以及配置参数教程
Dataset:FIFA 2018 Statistics数据集(Predict FIFA 2018 Man of the Match预测2018年国际足联最佳球员)的简介、下载、使用方法之详细攻略
人脸合成效果媲美StyleGAN,而它是个自编码器
The IDEA of Database plug-in Database Navigator plug-in
每日优鲜解散疑云:生鲜电商们苦渡生死劫
[MySQL view] View concept, create, view, delete and modify
RedisTemplate使用详解
【微信小程序】WXSS和全局、页面配置
【MySQL视图】视图的概念、创建、查看、删除和修改
Bika LIMS 开源LIMS集—— SENAITE的使用(用户、角色、部门)
【C语言】扫雷游戏实现(初阶)
IO flow: node flow and process flow summarized in detail.
The whole process of installing Oracle database on CentOS7
Container is changed | deploy MySQL cluster in the Rancher