基于2812DSP的PWM产生方法

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间: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表示EV A中通用定时器1的相关寄存器,对这些寄存器进行配置是产生PWM 波的必经之路。

二、软件编程实现

在了解2812DSP各相关寄存器的前提下,通过在CCS3.3环境下编程可实现。

S3.3软件环境学习

一个完整的DSP工程文件需要由头文件(.h)、库文件(.lib)、源文件(.c)、和CMD文件共同组成。在实际编程中,我们通常是打开某一个例程工程文件,其中很多头文件已经被默认添加进去,一般不需要改动,源文件在相应地方进行改动即可。

2.编程实现

DSP芯片在一定时钟节拍驱动下才能正常工作,因此需要对系统时钟进行配置,通常使用外部时钟,并将PLL控制寄存器PLLCR取最大值10,送至CPU 的时钟则为150MHz。

主函数流程图如图3所示:

初始化包括:系统时钟配置、PIE控

制寄存器初始化、PIE中断向量表初始

化、GPIO口初始化、事件管理器EV A初

始化。

开中断实际上是定时器T1开始计

数。在通用定时器初始化的时候便将中断

打开。

当T1CNT和T1CMPR的值相等时发

生比较匹配事件,如果T1控制寄存器

T1CON的TWCMPR为1,定时比较器被

使能,且GPTONA的位TCMPOE为1

时,定时器比较输出被使能,那么

Hz PR T TCLK f 12106⨯⨯=PR T CPMR

T PR T D 111-=Hz HSPCLK 5.372

=T1PWM_T1CMP 引脚就会有PWM 波形输出。

3. 以输出1KHz ,占空比为50%的对称PWM 波形(即方波)为例,重点分析 事件管理器EV A 的的配置情况。

输出对称PWM 波,即T1工作于连续增/减计数模式下,PWM 产生原理如图4所示:

,高电平

P WM 的周期s T 610TCLK PR 1T 2⨯⨯=,PWM 的频率为 有效,则占空比为: 。这里的TCLK 用内部时钟且大小

为 。由D=40%,f=1KHz,可以求得T1PR=0x493E ,T1CMPR=11250,表示为十六进制就是0x2BF2 。

初始化EV A 主要可以分为如下几个部分:

完成EV A 相关寄存器的配置,再将Gpio 口中和PWM 相关的引脚GPIOA6设置为PWM 功能。

三、实验结果

将.out 文件load 至DSP 目标板,并用示波器测试引脚输出,可清晰发现我们

需要的PWM波形,如图6所示:

由此我们可以得出只

要合理配置DSP的各个

寄存器,就能产生理想的

波形。

在此基础上,将

TCMPR的值按照一定的

规律改变,就可以产生占

空比可变的PWM波,若

按正弦规律变化,就能产

生占空比按正弦规律变化的波形,也就是俗称的SPWM波,通过适当的滤波电路,便可以产生需要频率的正弦波等。

实验表明,基于传统算法的PWM产生方法是简单易实现的,具有良好的可行性。

相关文档
最新文档