一、根据epwm1a配置1pwm2a。
一)搭建自己的第一部分clb结构如下:
1.配置输入
配置clb输入,配置输入选择epwm1a的zero与compA。input0是上升沿,input1是下降沿。
2.配置计数器
配置计数器,计数器重新计数配置成pwm1a上升沿。先来讲解一下CLB各个功能。
Reset:复位信号。指定哪个信号会触发计数器复位(清零或恢复到初始值)。
Event Trigger:事件触发信号。指定哪个信号会启动计数器开始计数。计数器使能后,通常需要一个触发信号来“点火”。
Counter Enable:计数器使能信号。指定哪个信号控制计数器的“运行”和“暂停”。为高电平时,计数器在触发后工作;为低时暂停。
Direction:计数方向。指定计数器是向上计数(递增,0,1,2...)还是向下计数(递减)。通常由一个外部信号动态控制。
Match Reference 1 / 2:匹配参考值1和2。你可以设置两个特定的数值(比如1000和2000)。
作用:当计数器值等于这两个设定值时,模块会输出一个高电平脉冲(Match信号)。这是生成精确时间间隔、PWM波或触发其他动作的基础。
Event Load Value:事件加载值。指定当某个特定事件发生时,计数器立即被加载的数值。用于实现复杂的计数序列,比如计数到终点后不是归零,而是跳到一个预设值重新开始。
Counter Event Action:计数器事件动作。定义当上面提到的匹配(Match) 或加载(Load) 事件发生时,计数器本身的行为。
计数器配置如下:这里的20是为了让pwm2a延迟导通20*10ns=200ns。让副边同步整流的体二极管先行,实现零电压开通,从而提高效率。
3.配置状态机
4.配置输出查找表
5.配置输出
CLB2对应pwm2,clb1对应pwm1,依次等等。。。。。。。
二)安装查看波形软件
第一步:要查看CLB内部逻辑块的波形,就需要安装两个软件。分别如下。
第二步:双击clb_simulation.bat文件,就会生成CLB.VCD。在终端输入gtkwave,会弹出这个框框。这个用来查看clb内部波形。
注意事项:
1.CLB 仿真依赖TDM-GCC 编译器。请确认已安装官方推荐的TDM-GCC 5.1.0-2 版本。不然CLB.VCD文件是无法生成的。
2.安装tmd64,下面那个勾选不要勾选上。
3.启用 Tile Design 模块顶部的“Global Parameters”下拉列表中的“Generate CLB Simulation File”复选框。如果不勾选这个,clb_simulation.bat这个文件是无法运行的。
4.GENERATE_DIAGRAM导入这个变量写成1.可以直接用add加变量。然后可以得到html文件
三、测试CLB程序
CLB程序的时钟频率是与主频一样的。
1、设计一个方波测试。方波的频率计算方法,这里500,就是500*10ns=5us。这里设计一个脉冲,模拟检测是下降沿。再弄一个模拟检测上升沿的脉冲。这里写250就是相移180°。还有就是可能不太明白计数器有啥作用,其实这里计数器就是用来做一个最大占空比限制的。计数到到一个match值的时候,就会产生一个脉冲。也就是一个保护作用。计数器的时钟是100mhz和dsp主频一样,所以计数一步就是10ns。设置250就是计数2.5us。
四、观察各个模块波形看看是不是自己想要的波形。
输出是自己想要的波形。
最后烧录程序在开发板上测量驱动波形。这是epwm1a与epwm2a波形,完美!!!!!!