simulink代码生成(五)——ePWM模块初级应用

前面分别讲到了SCI及ADC的配置及使用,现在梳理一下ePWM的配置和使用;

先打一些基础的DSP28335的基础知识;

F28335 关于ePWM中断与SOC采样信号的一些思考_socasel-CSDN博客

F28335 ePWM模块简介——TMS320F28335学习笔记(四)_28335采集交流电-CSDN博客

F28335 ePWM模块完整配置 源代码+注释_f28335中pwm波配置代码注释-CSDN博客

F28335 ePWM计数模块(CC)与 动作模块(AC)及其寄存器配置 ————TMS320F28335学习笔记(六)_aqctla-CSDN博客

F28335 ePWM死区模块(DB)_死区模块的作用-CSDN博客

F28335 ePWM时基模块(TB)及其 寄存器配置————TMS320F28335学习笔记(五)_tb模块计数器的计数方式是什么-CSDN博客

1 ePWM模块

2 ePWM模块参数设置与说明

2.1 ePWM-General 选项卡参数

(1)ePWM模块选择;可以选择ePWM123....

(2)Timer period units 时钟周期单位选择:以时钟周期或秒为单位指定定时器周期的单位。如果将“计时器”周期单位设置为“秒”,则启用对浮点数的支持。一般选择Clock cycles 以系统时钟为单位;

(3)Specify timer period via 设置始终周期:默认是Specify via dialog,按照4中所示的周期运行;如果选择Input,则按照外部输入的时钟周期运行,4中将变为初始周期;

(4)Timer period 周期计数器设置:设置ePWM载波的变化周期,该周期的具体时间需要与系统的ePWM模块的分频系数对应,假如没有分频,按照dsp的主频150M来计算,当TPRD = 7500时,上下计数模式下, 对应 7500*2/150000000 s  = 100us

(5)Reload for time base period register 重新装载PRD:选择zero就是在0更新,选择immediate代表立即装载模式;

(6)Counting Mode:这个计较重要,设置PWM的载波形式的;对应关系如下图所示:

(7)synchronization action 同步动作:这个就设置默认就行

2.2 ePWM-ePWMA 选项卡参数(ePWMB选项卡后续高阶应用讲)

使能的勾选一定先打开;Enable ePWMA;

(1)CMPA uint 时钟周期单位选择:一般选择为时钟;与前面需要对应;

(2)Specify CMPA via 选择CMPA 输入源: 默认是Specify via dialog,如果选择Input,则按照外部输入的CMPA运行;这里的CMPA决定了占空比,在电机控制中一般就是为了控制输出占空比,所以这里基本选择为Input,供控制算法修改CMPA;

(3)CMPA initial value : CMPA 的初始值;假如CMPA是外部输入,这里就只是一个初值;

(4)Reload for compare A Register(SHDWAMODE):影子装载模式特有的CMPA装载模式;这里默认是zero;

(5)Action mode 动作模块设定:设定具体的CMPA的动作状态,比如是载波等于CMPA由低到高,还在载波等于CMPA由高到低,这个具体按照个人需求设定即可。一般按照正占空比的逻辑,是载波上升期间,当CMPA = TPRD时,PWM由低变化为高;载波下降期间,当CMPA = TPRD时,PWM由高变化为低;具体的设置如我上图所示;参照如下连接:

F28335 ePWM计数模块(CC)与 动作模块(AC)及其寄存器配置 ————TMS320F28335学习笔记(六)_aqctla-CSDN博客

(6)Compare value reload condition 比较值重新装载的情况:这里的装载建议是与ADC触发采样的点一致,比如在TPRD 时触发ADC采样,那么就在TPRD时刻更新PWM,这样保证了ADC采样和PWM更新的同步性;

2.3 Deadband uint 死区设置模块

这个选项卡就必须要参照这个博客了;

F28335 ePWM死区模块(DB)_死区模块的作用-CSDN博客

(1)设置ePWMA和ePWMB的死区应用;建议都选择;

(2)Deadband polarity 死区极性设置:具体参考下图;

选择AHC模式,代表死区是低电平,逆变器的有效电平是高电平;如图中1;

选择ALC模式;代表死区是高电平,逆变器的有效电平是低电平;如图中2;

(3)上升下降沿的信号源选择;由于我们现在只是用到CMPA作为比较值,因此仅用CMPA对应的ePWMA作为信号源,这里是对应了死区设置模块的这张示意图;

(4)死区时间设置:RED对应上升沿死区,FED对应下降沿死区,建议一致,计算时间还是与上面TPRD周期一致;,按照dsp的主频150M来计算,当RED = 150时,上下计数模式下, 对应 150/150000000 s  = 1us

2.4 Event Trigger 中断设置

(1)使能ePWM 输出SOC信号,触发ADC采样;

(2)SOCA中断优先级;选择第一事件;

(3)Start of conversion for module A event selection 选择在ADC转换时刻:这里就必须与CMPA的更新时刻对应,在哪里采样就在那里更新CMPA;

其他选项卡的应用将在EPWM的高级应用中讲述;

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/314168.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

010、切片

除了引用,Rust还有另外一种不持有所有权的数据类型:切片(slice)。切片允许我们引用集合中某一段连续的元素序列,而不是整个集合。 考虑这样一个小问题:编写一个搜索函数,它接收字符串作为参数&a…

TecoGAN视频超分辨率算法

1. 摘要 对抗训练在单图像超分辨率任务中非常成功,因为它可以获得逼真、高度细致的输出结果。因此,当前最优的视频超分辨率方法仍然支持较简单的范数(如 L2)作为对抗损失函数。直接向量范数作损失函数求平均的本质可以轻松带来时…

【Unity入门】RequireComponent的使用

目录 RequireComponent的作用构造函数 RequireComponent的作用 RequireComponent 属性自动将所需的组件添加为依赖项。 当某个脚本必须依赖其他脚本或者组件共同使用时,为了避免人为添加过程的操作失误,可以在代码中使用RequireComponent,它…

CSS-4

平面转换 整体认识 div {margin: 100px 0;width: 100px;height: 100px;background-color: pink;/* 过渡效果 */transition: all 1s;}/* 当鼠标悬停到div时,进行平面转换 */div:hover {transform: translate(800px) rotate(360deg) scale(2) skew(180deg);}作用&…

单字符检测模型charnet使用方法,极简

Git链接 安装按照上面的说明,说下使用。 把tools下面的test做了一点修改,可以读取一张图片,把里面的单个字符都检测和识别出来。 然后绘制到屏幕上。 import torch from charnet.modeling.model import CharNet import cv2, os import num…

HarmonyOS 实践之应用状态变量共享

平时在开发的过程中,我们会在应用中共享数据,在不同的页面间共享信息。虽然常用的共享信息,也可以通过不同页面中组件间信息共享的方式,但有时使用应用级别的状态管理会让开发工作变得简单。 根据不同的使用场景,ArkTS…

Javaweb之JDBC的详细解析

2. JDBC介绍(了解) 2.1 介绍 通过Mybatis的快速入门,我们明白了,通过Mybatis可以很方便的进行数据库的访问操作。但是大家要明白,其实java语言操作数据库呢,只能通过一种方式:使用sun公司提供的 JDBC 规范。 Mybatis…

neovim调试linux内核过程中索引不到对应头文件问题

大家好,我叫徐锦桐,个人博客地址为www.xujintong.com,github地址为https://github.com/jintongxu。平时记录一下学习计算机过程中获取的知识,还有日常折腾的经验,欢迎大家访问。 一、环境 neovim–0.9.4 mason的clang…

牛客网SQL训练5—SQL大厂面试真题

文章目录 一、某音短视频1.各个视频的平均完播率2.平均播放进度大于60%的视频类别3.每类视频近一个月的转发量/率4.每个创作者每月的涨粉率及截止当前的总粉丝量5.国庆期间每类视频点赞量和转发量6.近一个月发布的视频中热度最高的top3视频 二、用户增长场景(某度信…

2 - 表结构 | MySQL键值

表结构 | MySQL键值 表管理1. 库的操作2. 表的操作表的创建与删除表的修改复制表 3. 管理表记录 数据类型数值类型字符类型(汉字或者英文字母)日期时间类型 表头存储与日期时间格式的数据枚举类型 数据批量处理 表管理 客户端把数据存储到数据库服务器上…

12. 整数转罗马数字

罗马数字包含以下七种字符: I, V, X, L,C,D 和 M。 字符 数值 I 1 V 5 X 10 L 50 C 100 D 500 M 1000 …

Android 反编译处理Dex

前言 当我们将Android项目打包上架的时候,为了提高被人反编译代码的可能性可以提取 dex 文件对代码进一步做混淆处理。 本文不对相关工具做过多的解释,不了解的可以先熟悉相关工具的使用。 相关工具(点击直接下载) jadx-gui&a…