当前位置:首页 >> 信息与通信 >>

TMS320F240片内PWM实现DA扩展功能


http://www.eeworld.com.cn/designarticles/dsp/200703/11589.html

TMS320F240 片内 PWM 实现 D/A 扩展功能 2007-03-09 19:03:27 作者:向先波 徐国华 张 琴 来源:互联网 摘要:根据 TMS320F240 芯片的结构特点,提出一种新颖的基于 TMS320F240

的 PWM 输 出,实现 D/A 转换扩展功能的设计方法;详细讨论该设计的理论基础和具体的软、硬件实 现;分析实验结果,并给出具体的应用实例。该设计方案简单易行,性价比高,具有一定的 通用性。 关键词: 数字信号处理器 TMS320F240 PWM D/A 转换 TMS320F240 (简称 F240) 作为一种高速、高集成度、低成本的微控制器,功能非常强大。美中不足的是,F240 芯片 本身虽然集成了众多满足数字控制系统所需的先进外围设备,包括 A/D 转换等功能,却唯 独没有集成 D/A 转换功能,因此,在 TMS320F240 芯片的实际应用过程中,为其增加 D/A 转换接口是很有必要的。 本文提出的基于 F240 芯片 PWM 输出的 D/A 转换扩展功能 设计,是一种对 F240 片内的 D/A 转换设计。通过 F240 片内的 PWM 输出,再加上简单的 外围电路及对应的软件设计,实现对 PWM 的信号处理,得到稳定、精确的模拟量输出。 1 原理及误差分析 1.1 基本原理 F240 芯片提供的 PWM 输出, 是一种周期和占空比均 可变、幅值为 5 V 的脉宽调制信号。实现 PWM 信号到 D/A 转换输出的理想方法是:采用 模拟低通滤波器滤掉 PWM 输出的高频部分,保留低频的直流分量,即可得到对应的 D/A 输出,如(图 1)所示。低通滤波器的带宽决定了 D/A 输出的带宽范围。 为了对 PWM 信号的频谱进行分析,以下提供了一个设计滤波器的理论基础。傅里叶变换理论告诉我们, 任何一个周期为 T 的连续信号 f(t) ,都可以表达为频率是基频的整数倍的正、余弦谐波分 量之和。它是以时间轴原点为对称点的、单极性的 PWM 信号,表达式为 其中,f= 1/T 为基频,式中 An、 Bn 为各自独立的傅里叶系数: 由于 f(t)是一个关于原点对 称的偶函数,因此 Bn 项为 0,只需计算 An 项即可。只要扣除直流分量 A0,由 f(t)=-f(t+ T/2),An 的偶系数也将为 0,因此,对占空比为 k、幅值为 5 V 的 PWM 信号有: A0=5%26;#183;k Bn=0 由式(5)可知,直流分量 A0 就是所需要的 D/A 输出,只要 改变 PWM 信号的占空比 k,就能得到电压范围为 0~5 V 的 D/A 转换输出;An 代表 PWM 信号的高频直流分量,频率为 PWM 信号基频的整数倍。因此,对于基频为 10 kHz 的 PWM 信号, 一个理想的剪切频率≤10 kHz 的滤波器即可完全滤掉 PWM 信号的高频谐波分量 An, 得到低频的直流分量 A0, 从而实现 PWM 信号到 D/A 输出的转换。 1.2 误差分析 D/A 转换输出的电压信号有一个纹波叠加在直流分量上。这是 D/A 转换误差的来源之一。影响 D/A 转换误差的另外一个重要因素,取决于 PWM 信号的基频。对于时钟频率为 20 MHz 的 F240 芯片,产生一个 20 kHz 的 PWM 信号,意味着每产生一个周期的 PWM 信号,要计数 1000 个时钟。即所得的直流分量的最小输出为 1 个时钟产生的 PWM 信号,等于 5 mV(5 V%26;#215;1/1000) ,刚好小于 10 位的 D/A 转换器的最小输出 4.8 mV(5 V/1024) 。因此, 理想情况下,PWM 信号的频率越低,所得的直流分量就越小,D/A 转换的分辨率也就相应 的越高。 如果将 PWM 信号的频率从 20 kHz 降到 10 kHz, 则直流分量输出的最小输出为 2.5 mV(5 V/2000) ,接近于 11 位的分辨率。但是,随着 PWM 信号基频的减小,谐波分量的 频率也随之降低, 就会有更多的谐波通过相同带宽的低通滤波器, 造成输出的直流分量的纹 波更大,导致 D/A 转换的分辨率降低。所以,单纯降低 PWM 信号的频率不能获得较高的 分辨率。 通过以上分析可知,基于 DSP 芯片 PWM 输出的 D/A 转换输出的误差,取决于通过低

通滤波器的高频分量所产生的纹波和由 PWM 信号的频率决定的最小输出电压这两个方面。 所以要获得最佳的 D/A 分辨率,在选取 PWM 信号的频率时不能太小,要适当地折衷,选 取一个最合适的值。如表 1 所列,通过 Matlab 仿真,可以得到最佳 D/A 分辨率下的 PWM 信号频率。 表 1 不同设计参数下 F240 芯片 PWM 输出实现 D/A 转换的分辨率 低通滤波器 阶数传递函数 -3dB 带宽/Hz PWM 频率 f/kHz 纹波 Vpp/V PWM 频率决定的分辨率 D/A 转 换的分辨率/位 一阶 1/(RCs+1) 1000 10 0.78 2.5 2.7 20 0.39 5.0 3.7 二阶 ω 2n/(s2+2ξ ω ns+ω 2n) 1000 10 0.062 2.5 6.3 20 0.016 5.0 7.9 三阶 1/(a3s3+a2s2+a1s+a0) 1000 10 0.0064 2.5 9.1 20 0.00081 5.0 9.7 2 硬件设计 一般来说,F240 的 PWM 输出要通过具有一阶阻 容滤波及光电隔离功能的 I/O 接口板后,方可与实际控制对象连接。为了获得高精度的 D/A 输出,在滤波之前应先通过缓冲器,整体设计框图如图 2 所示。 滤波器的运算放大器 选用 OP07。它温漂小、阻抗低、吸收电流大、精度高。考虑到实际情况,设计模拟低通滤 波器的阶数一般不超过三阶,否则会增大系统的复杂性,增加系统的成本。下面主要介绍有 源低通滤波器的参数设计。 2.1 二阶 Butterworth 低通滤波器 图 3(a)所示,是二阶 Butterworth 低通滤波器(最平幅值滤波器)的一种实现电路,其传递函数为 在-3 dB 带宽为 1000 kHz 的条件下: A0=1 由于考虑到不可能找到与所计算的 R、 值完 C 全一致的电阻、 电容值, 而只能选取与实际的电阻、 电容值最接近的值, 故求解得到: C1 = 0.1 μ F, C2=0.01 μ F, R1=22 kΩ , R2=1 kΩ (7) 在这些参数下,实 际的带宽是 1074 Hz, 值为 0.645, Q 与理想的二阶 Butterworth 低通滤波器有一定的误差。2.2 三阶低通滤波器 图 3(b)所示为三阶低通滤波器的一种实现电路,其传递函数为 Vo/Vi=1/(a3s3+a2s2+a1s+a0) (8) 其 中 , a0=1+R1/R4 a1=R1(C1+C2)+(R2+R3)C2+R1C2(R2+R3)/R4 a2=R3C2C3(R1+R2)+R2R3C2C3+R1R2R3C2C3/R4 a3=R1R2R3C1C2C3 在-3 dB 带宽为 1000 kHz 的条件下,求解得到: R1=1.6 kΩ ,R2=2.4 kΩ ,R3=7.5 kΩ ,R4= ∞,C1=0.1μ F,C2=0.01μ F,C3=0.047μ F (9) R4 决定滤波器直流分量的增益,选取 R4=∞(即不安装 R4) ,则 D/A 输出增益为 1;要想改变带宽大小,只须保持 R4 和电容值 不变,改变其它电阻的阻值即可。 图 3 低通滤波器电路 3 软件程序设计和实验结果 利用 TMS320F240 配套的 EVM(Evaluation Module)板作为 DSP 的实验平台,给定一模拟 电压作为 F240 的 A/D 输入,将 A/D 转换的值作为产生 PWM 波形的 DSP 定时器中比较寄 存器的值;通过中断,不断获取最新的 A/D 转换值,改变 PWM 波形的占空比,得到对应 幅值的 PWM 波形,再将所得的 20 kHz 的 PWM 信号输入给滤波器,用数字示波器观察滤 波器的 D/A 输出,以评价这种 D/A 转换方法的实际效果。 3.1 通过 D/A 转换产生对应幅值 PWM 波形的 DSP 程序 基于 DSP 功能模块化的特点, 其汇编程序的编制主要分三个步 骤:① 初始化设置时钟源模块,得到所需的 CPUCLK 和 SYSCLK; ② 设置事件管理模块, 初始化定时器和 A/D 转换操作; ③ 编写定时中断服务子程序,即可完成从 A/D 转换产生对 应幅值的 PWM 波形输出。 部分程序代码如下: ;设置 PLL 模块 LDP #224; SPLK #0000000001000001b,CKCR0 ; SYSCLK=CPUCLK/2 SPLK #0000000010111011b,CKCR1 ;CLKIN(OSC)=10MHz, CPUCLK=20MHz SPLK #0000000011000011b,CKCR0 ; 使 能 锁 相 环 ( PLL ) 操 作 SPLK #0100000011000000b,SYSCR ;CLKOUT=CPUCLK ; 设 置 EV 管 理 器 LDP #232; SPLK #0,T1CMPR ; 初 始 化 定 时 比 较 寄 存 器 SPLK #0000000001010101b,GPTCON ;通用定时器的 PWM 输出为低有效 SPLK #1000,T1PR ;设置 PWM 波形的周期为 20 kHz SPLK #0000h,T1CNT ;初始化计数寄存器 SPLK #0001000000001010b,T1CON ;设置 连续 增计 数方 式, 使能 比较 操作 SPLK #0000000010000000b,EVIMRA ;清除定时器 1 比较中断屏蔽位 LDP

#224 SPLK #1000110100000010b,ADCTRL1 ;设置 A/D 连续转换模式, 选择 通道 CH0 SPLK #0000000000000101b,ADCTRL2 ;设置 A/D 转换输入时钟 预定标因子为 16 LDP #232 SBIT1 T1CON,B6_MSK ;使能定时器 1 中断启动位 LDP #224 SBIT1 ADCTRL1,B0_MSK; 使 能 A/D 转 换 启 动 位 CLRC INTM; END B END ;等待定时器 1 中断的产生 ;产生 PWM 波形 ISR Change_CMPR: LDP #224 ;定时器 1 比较中断服务子程序 LACC ADCTRL1; SACL ADCTRL1 ;清除片 内 A/D 转换中断标志位 LACC ADCFIFO1;读取最新的 A/D 转换值 RPT #5; SFR ;把存于结果寄存器的高 10 位的 A/D ;转换值移至 ACC 的低十位 LDP #232; SACL T1CMPR ;将 A/D 转换值存于定时比较寄存器 LACC EVIFRA; SACL EVIFRA ; 清除定时器中断标志 CLRC INTM ;开中断 RET ;中断返回 3.2 PWM 输出实现 D/A 转换功能的实验结果 如图 4 所示,是在给定一恒定的 3.5 V 模拟电压作 为 F240 的 A/D 输入的情况下,所得的 PWM 输出实现 D/A 转换的波形图。 波形 1 为 不通过低通滤波器的原始 PWM 信号。 波形 2 为 PWM 信号通过一阶低通模拟低通滤 波器后的 D/A 输出波形,滤波器参数为 R=1 kΩ ,C=0.1μ F,带宽为 1592 Hz。可以看出, 一阶下的 D/A 输出为一锯齿波, 可用性很差。 波形 3 为 PWM 信号通过二阶 Butterworth 低通模拟滤波器后的 D/A 输出波形,滤波器参数按照式(7)选取。可以看出,二阶下的 D/A 输出平均值接近 3.5 V,只是尖峰毛刺比较大,有一定的可用性。 波形 4 为 PWM 信号通过三阶低通模拟滤波器后的 D/A 输出波形,滤波器参数按照式(9)选取。可以看出, 三阶下的 D/A 输出毛刺很小, D/A 转换的分辨率约为 9.2 位, 非常接近于理想的 D/A 输出, 可用性强。 实验结果表明, DSP 的 PWM 信号经过三阶低通模拟滤波器后, 得到的 D/A 转换输出带宽较大,在 1000 Hz 左右;分辨率较高,约为 9.5 位,可以满足实际应用的需要。 (本文转自电子工程世界:http://www.eeworld.com.cn/designarticles/dsp/200703/11589.html)


相关文章:
TMS320F240片内PWM实现DA扩展功能
TMS320F240片内PWM实现DA扩展功能TMS320F240片内PWM实现DA扩展功能隐藏>> TMS320F240 片内 PWM 实现 D/A 扩展功能摘要 根据 TMS320F240 芯片的结构特点,提出...
TMS320F240片内PWM实现D
TMS320F240 片内 PWM 实现 D/A 扩展功能 摘要:根据 TMS320F240 芯片的结构特点,提出一种新颖的基于 TMS320F240 的 PWM 输出,实现 D/A 转换扩展功能 的...
DSP答案
3,TMS320F28335 片内存储器资源有哪些,占多大? 片...DSP 控制器有哪些 CPU 定时器资源,可实现什么功能?...(ePWM1~ePWM6),能够 输出 12 路 PWM 波(PWMxA...
在2011年三好老人表彰会上的讲话
TMS320F240片内PWM实现DA扩... 6页 8财富值 当代青年礼仪规范6盘VCD 3页 免费 自荐信写作 2页 免费如要投诉违规内容,请到百度文库投诉中心;如要提出功能问题...
关于TMS320F240的AD问题解答
关于TMS320F240的AD问题解答_工学_高等教育_教育专区。关于 DSP的一些资料。关于...//使能产生 PWM1-PWM6 的比较功能 EvaRegs.CMPR1 =0x00c0; EvaRegs.CMPR2 ...
DSP作业答案
答:TMS320LF2407A 的片内资源有: 1) 40MIPS ...2) 使用定时器的比较功能产生 PWM 波; 3) 给事件...C 为基础,并对 ANSI C 进行了相应的限定和扩展。...
基于PWM实现DA转换
基于PWM实现DA转换_信息与通信_工程科技_专业资料。基于PWM实现DA转换 ...但是,几乎所有的单 片机有提供了定时器,甚至直接提供 PWM 输出功能。这就能够...
DSP TMS320F240芯片引脚与功能
DSP TMS320F240芯片引脚与功能_计算机硬件及网络_IT...片选信号 GPIO 或 PWM 输出引脚 7 GPIO 或 PWM ...7.三个外部中断 8.外围中断扩展方块(PIE),支持 ...
单片机课后习题
功能寄存器变量 PCON; sfr PCON=0x87; 5-7 用 C51 语言编程实现,片内扩展 ...分析:仿照例题 7-8,系统的时钟频率为 11.0592MHz,根据公式 PWM 的频率 PCA...
TMS320F2802的变频器方案
缩小体积,在精度允许的情况下,片内 AD 是控制的...TMS320F240x 只有 16 位 PWM 产生器, 相 PWM ...扩展余量大,在同样控制板硬件结构 上,可以实现 SPWM...
更多相关标签:
tms320f28035 pwm | tms320f28335 pwm程序 | tms320f240 | tms320lf240x | tms320f2406 | 芯片解密tms320f | tms320f28335 | tms320f2812 |