基于2812DSP的PWM产生方法.doc

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于TMS320F2812 DSP的PWM产生方法 PWM(Pulse-Width Modulation)即脉宽调制技术,广泛运用于各种工业控制中,现需要用TMS320F2812DSP产生该波形,主要通过如下几点来实现。 硬件芯片选型 依托现有条件,选用合众达的eZ dsp TMS320F2812开发平台作为目标板。 首要关注其datesheet和电路图。 如图1所示,产生的PWM波通过目标板P8插针口的第15根脚输出,测试时需要通过示波器检查该口的输出状态。 事件管理器(Event Manager)是产生PWM波的核心模块,包括通用定时器、比较单元、捕获单元、QEP电路等,这里主要用到通用定时器中的定时器1。图2表示EVA中通用定时器1的相关寄存器,对这些寄存器进行配置是产生PWM波的必经之路。 软件编程实现 在了解2812DSP各相关寄存器的前提下,通过在CCS3.3环境下编程可实现。 CCS3.3软件环境学习 一个完整的DSP工程文件需要由头文件(.h)、库文件(.lib)、源文件(.c)、和CMD文件共同组成。在实际编程中,我们通常是打开某一个例程工程文件,其中很多头文件已经被默认添加进去,一般不需要改动,源文件在相应地方进行改动即可。 编程实现 DSP芯片在一定时钟节拍驱动下才能正常工作,因此需要对系统时钟进行配置,通常使用外部时钟,并将PLL控制寄存器PLLCR取最大值10,送至CPU的时钟则为150MHz。 主函数流程图如图3所示: 初始化包括:系统时钟配置、PIE控制寄存器初始化、PIE中断向量表初始化、GPIO口初始化、事件管理器EVA初始化。 开中断实际上是定时器T1开始计数。在通用定时器初始化的时候便将中断打开。 当T1CNT和T1CMPR的值相等时发生比较匹配事件,如果T1控制寄存器T1CON的TWCMPR为1,定时比较器被使能,且GPTONA的位TCMPOE为1时,定时器比较输出被使能,那么T1PWM_T1CMP引脚就会有PWM波形输出。 以输出1KHz,占空比为50%的对称PWM波形(即方波)为例,重点分析 事件管理器EVA的的配置情况。 输出对称PWM波,即T1工作于连续增/减计数模式下,PWM产生原理如图4所示: PWM的周期,PWM的频率为 ,高电平有效,则占空比为: 。这里的TCLK用内部时钟且大小为 。由D=40%,f=1KHz,可以求得T1PR=0x493E,T1CMPR=11250,表示为十六进制就是0x2BF2 。 初始化EVA主要可以分为如下几个部分: 完成EVA相关寄存器的配置,再将Gpio口中和PWM相关的引脚GPIOA6设置为PWM功能。 实验结果 将.out文件load至DSP目标板,并用示波器测试引脚输出,可清晰发现我们需要的PWM波形,如图6所示: 由此我们可以得出只要合理配置DSP的各个寄存器,就能产生理想的波形。 在此基础上,将TCMPR的值按照一定的规律改变,就可以产生占空比可变的PWM波,若按正弦规律变化,就能产生占空比按正弦规律变化的波形,也就是俗称的SPWM波,通过适当的滤波电路,便可以产生需要频率的正弦波等。 实验表明,基于传统算法的PWM产生方法是简单易实现的,具有良好的可行性。 1

文档评论(0)

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

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

1亿VIP精品文档

相关文档