您当前的位置:五五电子网电子知识电子制作数字电路用M8L做小功率数字功放 正文
用M8L做小功率数字功放

用M8L做小功率数字功放

点击数:7596 次   录入时间:03-04 11:40:29   整理:http://www.55dianzi.com   数字电路

  数字功放由于其效率高、易与数字音源对接等优点而在现实生活中具有越来越广泛的应用。本文介绍的是一款用单片机ATmega8L(以下简称M8L)制作的小功率数字功放,具有功耗低、成本低、电路简单、音质较好等优点。

  一、数字功放原理解析

  数字功放,顾名思义就是将数字信号进行功率放大。数字信号通常用“0”来代表低电平,“1”代表高电平,从而组成一连串的方波信号。由于数字信号只有高低电平之分,因此,当用功放管对其进行放大时,功放管完全可以工作在开关状态,而不是放大状态,这样就大大减小了管子静态功耗,提高了效率。

  为了实现数字功放,必须将模拟信号转化为数字信号,在这里通过M8L内部自带的十位模数转换器转换即可,然后用M 8 L的O C R 1 A和OCRlB引脚产生占空可变的脉冲串,即PWM。PWM信号是以一个固定频率为基础的,为了产生不同的模拟电平,可以通过改变这个脉冲串的占空比实现。要输出高的模拟电平,就增大占空比,反之减小。这样,通过PWM就将模拟信号转换为数字信号。将PWM信号通过功放管进行进一步放大,再通过低通滤波器就可以产生模拟电平了。50%的占空比输出电源电平的一半,75%的占空比会产生75%电源电平。模拟滤波器可以是一个简单的无源的RC滤波器。滤波器滤除频率比较高的PWM信号,留下模拟信号。在用作数字功放驱动扬声器时,如果不是为了特殊的需要,为了最大限度地提高输出功率,可以不用低通滤波器滤波,因为扬声器就像个低通滤波器,它对高频的PWM信号是不会响应的。通常扬声器的响应频率范围为20Hz~20kHz,远小于PWM信号的频率。

  二、电路工作原理

  电路原理图如下图所示,电路分为四个部分,包括前置放大、A/D与PWM转换、功率放大及滤波等。

  1.前置放大电路

  LM358组成同向放大电路,音频信号从LM358同向输入端输入,放大增益由R2和R1的阻值大小决定,电压放大倍数:Av=1+R2/R1。R3、R4和R5组成分压电路,当没有信号输入时,同向输入端的电压为2.5V,经过C4、R2和Rl组成的交流负反馈电路,输出端电压仍为2.5V。当有信号输入时,同向输入端的电压随着音频信号的变化而变化,经过C4、R2和R1组成的交流负反馈电路,输出电压Vout=Vin*Av。输出信号将以2.5V为轴,上下变动。由于工作电压为+5V,为了保证波形不失真,输入信号的峰值应小于2.5V/Av。LM358为单电源双运放,增益频带宽为1MHz,也可双单源工作。LM358的引脚图如下图所示。

LM358的引脚图

  2.A/D与PWM转换

  这是电路的重要组成部分,由单片机M8L完成。M8L功能齐全、接口丰富。它有6通道A/D,包括4路10位A/D和2路8位A/D。片中的2个PwM通道可实现任意小于16位相位和频率可调的脉宽调制输出。M8L的PWM有3种工作模式:快速PWM模式、相位可调PwM模式和相位频率可调PWM模式。本电路采用的是快速PWM模式。M8L内部A/D转换是通过逐次逼近的方法将输入的模拟电压转换成一个10位的数字量。最小值代表GND,最大值代表AREF引脚上的电压再减去1LSB。通过写ADMUX寄存器也可以把AVCC或内部2.56V的参考电压连接到AREF引脚。在AREF上外加电容可以对片内参考电压进行解耦以提高噪声抑制性能。笔者采用的是8倍时钟分频,工作在连续A/D转换模式,每次A/D转换时间需要13个ADC时钟,此时的A/D转换速率为16MHz/8/13=153.8kHz。为了提高ADC的抗干扰能力,ADC使用10位精度采样,然后将得到的值除以4作为OCRlA的值,OCRlB则为OCRlA的补码,即255—OCRlA。

  快速PWM模式可用来产生高频的PWM波形。快速PWM模式与其他PwM模式的不同之处是其单边斜坡工作方式。计数器从BOTTOM计到TOP,然后立即回到BOTTOM重新开始。对于普通的比较输出模式,输出比较引脚O C l x在T C N T 1与OCRlx匹配时置位,在TOP时清零;对于反向比较输出模式,OCRlx的动作正好相反。由于使用了单边斜坡模式,快速PWM模式的工作频率比使用双斜坡的相位修正PWM模式高一倍。此高频操作特性使得快速PWM模式十分适合于功率调节,整流和DAC应用。高频可以减小外部元器件(电感,电容)的物理尺寸,从而降低系统成本。寄存器配置如下:(COMlAl:

  C O M 1 A 0:1:0)/(C O M l B 1:

  COMlB0=1:0)。从两路PWM的产生过程来看,两路的变化是同时的,因而避免了由于两路延时不同所引起的额外损耗。M 8 L最高工作频率为16MHz,PwM采用8位精度,此时的PwM频率为16MHz/255:62.7kHz。

  PWM的A、B通道初始化采用相同的工作方式,零输入时,ADC采样电压为电源电压的一半,此时得到OCRlA和OCRlB的值都为128,A、B同相输出。而当有信号输入时,A通道的脉宽增加,此时由于B通道的比较值与A通道互补,所以B通道脉宽减少;当有负信号输入时,A通道的脉宽减少,B通道的脉宽增加。由于实现了互补对称放大,此时信号强度将为单个的两倍。

  3.功率放大由6只常用的三极管组成同相驱动方式实现数字功放功能,从而进一步降低了静态功耗,提高了效率。这种做法的好处就是:只有当PB1和PB2两引脚的电平不相同时,才会引起两只对管(VT3和VT6或VT4和VT5)的导通,相反,当电平相同时,两只对管不导通,电流几乎为零。

  4.滤波由于M8L内部结构的原因,应在ADC采样前进行低通滤波,这里采用的是Rc低通滤波器,由R6和C6组成。另外,最好在AREF引脚与负极之间并接一个阻值较大的电容,用来滤除杂波。

  兰、软件设计及制作1.软件设计本系统软件由AD中断服务程序、PWM程序、按键操作程序组成。程序流程框图如下图所示。

  2.制作与调试笔者制作的数字功放板如下图所示。

  从电路板上可以看出,笔者先将单片机和运放做在了两块独立的板子上,然后拼合在一起。这样做的好处就是:可以先测试运放工作是否正常。

  在这里,R3和R4的选择很关键,阻值必须相等,这样才会在输出端得到以2.5V为轴线的输出波形,也是整个电路的设计关键。如果手头上有示波器,分析波形再好不过了。本人使用的音源是电脑输出的,幅度较小,因此对其进行了放大,放大倍数为Av=1+R2/R1=6.6倍。读者可以根据情况,适当改变。

  ATmega8L后缀为L,属于低功耗、宽电压、低速的型号,无后缀的为高速型。通常市售的多为A T m e g a 8 L。许多资料都称ATmega8L最大时钟为8MHz,实际上,经笔者测试,16MHz时,也能正常工作。如果用高于16MHz晶振,此时M8L将以低于16MHz的某个频率工作。为了安全起见,如果你的串行下载线性能不是很好,最好不要外挂16MHz的晶振去写程序,否则,将会导致串行编程失败。笔者使用的下载界面见图5,下载线制作方便,USB供电。

  改写时应先将熔丝位的低8位的CKSEL3—0全置为“1”,然后点击写入即可,如下图所示。为了单片机工作的稳定性,要在复位脚加-10kΩ的上拉电阻。

  程序较为简单,写好程序后,方可通电测试。先断开功率放大部分,在单片机的PB1和PB2脚上接上小功率的扬声器,小于1W即可。测试时外部音源音量应调节适中,否则会产生噪声。读者也可用示波器观察其波形。调节音量大小,如果能听到正常的声音,说明已成功。如果噪声较大,可能是音量较大,或者是运放的增益太大,可适当减/小增益。

  如果没有输出任何声啬,说明PWM没有产生,应检查一下程序,PWM的控制字是否设置正确,A/D转换是否打开。

  测试功率放火部分最好的办法就是用随声听里面的3V直流电机。先去掉输出电容C7,直接接上电机,用+5V供电。用手捏其中一输入端,观察电机的转向,冉用手捏另一输入端,观察电机的转向。如果两次转向正好相反,说明工作正常。如果没有或只有一路工作,应检测对管是否损坏。

  电源分为两个部分,M 8 L和LM358采用+5V供电,功率放大部分电源VCC除了可以共用电源外,还可以使用高于+5V的独立电源,这样可以进一步提高输出功率。SB为播放和停止开关。

  通过笔者测试,共用电源时,电流随着音乐的节奏而变化,在音乐不失真的情况下,最大电流不超过150mA。静态时,电流约为:20mA。此时单片机的能耗是主要的。功率放大部分电源VCC使用十8V电源:L作时,功率放大部分的最人电流为80mA,此时输出音量与本人用TDA2003制作的功放电路相当。而TDA2003功放电路的电压为12V,电流为150mA左右。

  通过比较可知,数字功放的效率要比模拟功放的高很多。




本文关键字:功放  数字电路电子制作 - 数字电路

《用M8L做小功率数字功放》相关文章>>>