pwm实现AD转换
PWM实现D/A转换
200816022127黄晨电信081 1 基本原理
PWM信号是一种具有固定周期(T)不定占空比()的数字信号,如图1所示。如果PWM信号的占空比随时间变化,那么通过滤波之后的输出信号将是幅度变化的模拟信号。因此通过控制PWM信号的占空比,就可以产生不同的模拟信号。在ATMega8中就是采用TCNT2来控制周期T,而用与定时器对应的CCR2寄存器来控制可变占空比,进而实现D/A转换。
图1 PWM信号示意图
2 分辨率
基于Timer_2 PWM的DAC分辨率就等于计数器的长度,通常是TCNT2减去CCR2寄存器的值。PWM DAC的最低有效位是一个计数值,分辨率是总的计数值。
R counts = L counts
其中R
counts 是以计数值为单位的分辨率,L
counts
是计数器的总计数值。例如对
8-bit DAC,计数器的长度为8 bits,或者256个计数值。那么分辨率也就是8 bits,或者256。
更一般的情况下,基于PWM定时器和滤波器的PWM DAC的分辨率等于产生模拟信号的PWM信号的分辨率。PWM信号的分辨率决定于计数器的长度和PWM计数器能够实现的最小占空比。用数学表达式如下:
R co
unts
=
,其中 = L counts ,C 是最小占空比。
比特分辨率用下式计算:
如果PWM 计数器的长度为512个计数值,最小的占空比为2个计数值,那么PWM DAC 的分辨率就为:,或者以比特表示:
。
3 系统频率
PWM 信号需要的输出频率等于DAC 的更新频率,因为PWM 信号占空比的每一次变化等效于一次DAC 抽样。PWM 定时器所需的频率取决于PWM 信号频率和所需的分辨率。如下所示:
在这儿,是所需的PWM 定时器频率,是PWM 信号的频率,也就是DAC 的更新频率,n 是所需的比特分辨率。由抽样定理可得,最低的抽样频率应该为400Hz 。但是通常情况下,PWM 信号的频率要远高于Nyquist 抽样速率。这是因为PWM 信号的频率越高,对滤波器的阶数就要求越低,合适的滤波器越容易实现。通常抽样速率取Nyquist 速率的16或者32倍。