tms320f28027的PWM模块讲述.doc

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
tms320f28027的PWM模块讲述

总结一下28027的PWM模块。 28027包含PWM1,PWM2,PWM3,PWM4四个PWM模块,所有的PWM模块的寄存器结构都一样,唯一的区别就是同步时的操作顺序不一样。 PWM模块可以分为时基(Timer base),计数器比较(Counter Compare),PWM波形发生器(Action Qualifer),死区设置(Dead Band),高频PWM斩波(PWM chopper),错误处理(Trip Zone) , 事件触发及中断(Event Trigger and Interrupt)等子模块组成,基本框图如下。 下面按照文档SPRUGE9E的顺序逐个来看这些子模块: 1.?时间基准 这个模块的作用就是产生三个信号, CTR=PRD??? 计数寄存器的值等于周期寄存器时,产生的脉冲序列 CTR=0??????? 计数寄存器的值等于0时,产生的脉冲序列 CTR-DIR??????? 表示计数方向,计数器向上计数时常为1;向下计数时常为0,向上计数到Period后向下到0(up-down)则为1-0交替。 另外这个模块能接受上个PWM模块发来的同步信号,并向下一个PWM模块发送同步信号。 TBCTL设置项如下: 计数模式(up,down,up-down), 同步使能(收到同步信号时是否加载相位寄存器的值到计数寄存器), 周期寄存器的操作方式(直接读写 或先写入 shadow寄存器然后在某时刻加载到周期寄存器) 同步信号输出触发方式 软件同步 分频系数(设置PWM模块的时钟频率) 同步后计数方向设置(在up-down计数模式时,设置同步后的计数方向,其他模式下,该设置无效) 仿真时PWM计数设置 TBSTS?? PWM状态寄存器 TBPHS? 相位寄存器 (仅在同步时用到) TBCTR? 计数寄存器 TBPRD? 周期寄存器 其他寄存器在高分辨率的PWM时才用到,现在先不管 PWM模块同步可以理解为 多个周期相等的PWM模块发出PWM信号时,计数器的值相等或保持固定的差值。这个在做空间矢量电压时很重要。 28027的同步过程如下图: PWM1可以接受外部的同步信号,然后发出一个同步信号给PWM2,同样PWM2生成一个同步信号给PWM3 。。。 只有PWM1可以接受外部的同步信号(引脚名 EPWM1SYNCI),其他PWM模块可以接受上一个模块的同步信号。 每个PWM模块都能发出同步信号给下一个模块,具体设置在TBCTL寄存器(SYNCOSEL)。(00 - 输入同步信号触发; 01- CTR=0 触发; 10 -CTRCMPB 触发;11- 禁止发出同步信号) 时间基准模块有几个设置实例的时序图,这里选了一个。其中在PWM模块收到同步信号时,计数寄存器将加载相位寄存器的值。 2.?计数比较模块 这个模块的作用就是将比较寄存器CMPA,CMPB的值与前面的计数寄存器TBCTR 进行比较,生成CTR=CMPA和CTR=CMPB两个脉冲序列信号。 这个模块的相关寄存器如下 CMPCTL 可以设置CMPA,CMPB的从shadow加载 CMPA,CPMB 16位数值寄存器 3. PWM波形发生器 (Action Qualifier) 该模块产生两路PWM波 :PWMA,PWMB。 前面生成的 CTR=CMPA, CTR=CMPB CTR=PRD,CTR=0,来决定PWMA和PWMB,什么时候是1,什么时候是0,或者什么时候翻转 相关寄存器如下: AQCTLA? 设置PWMA在 CTR=CMPA(上升沿,下降沿), CTR=CMPB(上升沿,下降沿), CTR=PRD,CTR=0时分别进行什么操作(清0;置1;翻转 或 Do nothing) AQCTLB? 设置PWMB在 CTR=CMPA(上升沿,下降沿), CTR=CMPB(上升沿,下降沿), CTR=PRD,CTR=0时分别进行什么操作(清0;置1;翻转 或 Do nothing) AQSFRC? 设置单次软件触发,以及软件触发对 PWMA PWMB的影响。 AQCSFRC? 连续软件触发对PWMA PWMB的影响。(编者注:不知道连续软件触发是怎么产生的,单次软件触发可以在AQSFRC里面设置。) 4.?死区设置 设置死区,可以方便地生成两路互补或一样的PWM波形。 相关寄存如下图 DBCTL设置上图中的六个开关,在s0,s1都为0时,死区设置无效;s0,s1 = 1,1,s4,s5=0,0,则EPWMxB无效,可以由EPWMxA生成两路一样或互补的PWM。 DBRED,DBFED设置上升沿和下降沿的滞后时间。 5. PWM斩波 斩波部分只有一个控制寄存器,就不多说,反正我用不到,也不知道哪里会需要用到这个。 大致的功能如下图,将输入的PWM波形的与高频信号PCLK(

文档评论(0)

jiayou10 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8133070117000003

1亿VIP精品文档

相关文档