基于DSP28335的Matlab/Simulink代码生成实验六:PWM中断

本文介绍了脉冲宽度调制(PWM)在F28335微控制器中的应用,涉及ePWM模块的使用、死区时间的作用以及如何通过MATLAB搭建PWM中断实验模型。实验内容包括配置PWM通道、设置死区时间以及观察波形输出。
摘要由CSDN通过智能技术生成

脉冲宽度调制(PWM),是英文“Pulse Width Modulation”的缩写,简称脉宽调制,是利用微处理器的数字输出来对模拟电路进行控制一种非常有效技术。简单一点,就是对脉冲宽度的控制。ePWM模块外设是很多功率控制系统必需的控制单元,在商业和工业产品中有着广泛的应用,例如电机驱动控制、数字开关电源、UPS电源等。ePWM还可以用于直接实现DAC功能,在作为DAC输出时,占空比与输出的电压成正比。

F28335集成了6个ePWM通道,每个有两路PWM输出(EPWMxA和EPWMxB),我们 这里用到EPWM1A、EPWM1B、EPWM2A、EPWM2B、EPWM3A和EPWM3B六路PWM,频率均为15K。

死区就是在上半桥关断后,延迟一段时间再打开下半桥或在下半桥关断后,延迟一段时间再打开上半桥,从而避免功率元件烧毁。这段延迟时间就是死区。

死区时间是PWM输出时,为了使H桥或半H桥的上下管不会因为开关速度问题发生同时导通而设置的一个保护时段,所以在这个时间,上下管都不会有输出,当然会使波形输出中断,死区时间一般只占百分之几的周期。但是PWM波本身占空比小时,空出的部分要比死区还大,所以死区会影响输出的纹波,但应该不是起到决定性作用的。

硬件连接

图8. 1 PWM管脚

六路pwm输出端引脚

PWM1:   GPIO0/EPWM1APWM2: GPIO1/EPWM1B

PWM3:   GPIO2/EPWM2APWM4: GPIO3/EPWM2B

PWM5:   GPIO4/EPWM3APWM6: GPIO5/EPWM3B 

模型搭建 

“6路PWM中断实验模型”,如下图:

图8. 2 PWM波形实验模型

用MATLAB/Simulink R2018b或者更高版本MATLAB/Simulink新建仿真模型。

1”是中断模块,双击该模块打开参数对话框,根据图8.3中断向量表,CPU中断序列选择3PIE中断序列选择1,优先级选择30,抢占标志位0

8. 3中断表

8.4中断参数配置

“2”是ePWM1模块,在该模块中可以进行PWM1A的配置,双击该模块,打开参数对话框,“General”和 “ePWMA”配置如图8.6所示。

图8. 5 ePWM参数对话框 General与ePWM配置

ePWM1模块的中断设置,勾选使能ePWM中断,中断事件数选择第二个事件。

图8. 6 ePWM参数对话框 Event Trigger选项卡

 “3”“4”分别是ePWM2和ePWM3模块,可以进行PWM2A、PWM2B、PWM3A和PWM3B的配置,与“2”ePWM1模块相同配置。

下载运行

第一步:DSP板上电

“BuildDeploy&Start”,模型编译下载按钮,点击该按钮,模型会自动编译,在matlab路径下生成目标代码,同时将程序下载至DSP核心板并自动运行

图8. 7 PWM波形实验模型

观察实验结果

实现现象:程序运行后,观察PWM输出波形。由于该示波器只有四个通道,只能分别检测ePWM1AePWM1BePWM3AePWM3B。(state=1启动、state=0停止;PWM占空比duty范围0~100

8.8 6PWM波形图

以上就是代码生成PWM中断实验的所有内容啦!大家点点收藏的同时,麻烦点点赞同哦,谢谢!  

  • 15
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值