基于Atmega8的数字功放设计

发布者:Tapir最新更新时间:2006-11-15 来源: 国外电子元器件关键字:PWM  A/D  计数 手机看文章 扫描二维码
随时随地手机看文章
1 引言

数字功放由于其效率高、易与数字音源对接等优点而在现实生活中具有越来越广泛的应用。它主要包含两部分,图1为数字功放的基本框图。其中PWM变换大致有两种,一是模拟PWM,即将输入的模拟信号或数字信号经D/A后与三角波进行比较,这种变换必须要有频率上百kHz、线性度好、满幅的三角波,而且还要有高速模拟比较器,否则将影响PWM波形在解调后的波形,这些都将增加成本和设计复杂度(使用集成D类功放或D类控制芯片另当别论)。二是数字式PWM,即将输入数字信号或模拟信号经A/D后与计数器相比较,即用计数的方法代替三角波,从而避免了三角波非线性所引起的失真。同传统的模拟方式相比,数字方式具有设计简单,效率更高,抗干扰性更强等优点。而Atmega8单片机中的定时器1可以工作在PWM模式,它只要将其AD中的值移到PWM的输出比较寄存器中即可完成PWM调制,实现起来相当简便。

为了提高输出功率,大多数D类功放都以BTL方式来驱动。

而无论是模拟式还是数字式PWM,BTL两路输出信号的选择也都有两种方案,即同相驱动和反相驱动。前者在零信号时,其两路信号的叠加效果几乎为零,而后者在零信号时,叠加在滤波器上的电压会变大,当然可以通过修改滤波器参数来降低其在负载上的压降,但这样会增加系统功耗,而且不便于整体实现。因此,本文选用数字式PWM,并采取同相驱动方式实现数字功放功能,从而进一步降低了静态功耗,提高了效率。

2 硬件设计

该设计的硬件电路分为三部分,包括前置放大、A/D与PWM转换、功率放大及滤波等,其硬件电路原理如图2所示。本系统的PWM频率至少要调制到信号最高频率(20kHz)的5倍以上,才能保证音频信号很好的还原。若工作频率为16MHz,则PWM的计数最大值(以下简称TOP)将为: fCLK-I/O/fpwm=16MHz/100kHz=160。此外,A/D的采样值(最大255)也必须除以一定的数值才能作为PWM输出比较寄存器(以下简称OCR1A/OCR1B)的值,这显然会降低AD的等效精度。而要保证AD原有的精度和PWM频率,则应提高晶振。经测试:mega8在32MHz下还可正常工作,此时AD采样值可直接作为OCR1A/OCR1B值,此时的PWM频率为32MHz/255=125.5kHz。

2.1 前置放大

前置放大部分主要由AD公司的低功耗、低噪声、单电源、轨对轨输入输出放大器AD8605和数字电位器组成。AD8605的静态电流只有0.9mA(5V),电源范围为2.7V~5.5V,带宽为10MHz。数字电位器采用的X9C102有100个台阶,大小为1kΩ最小可达40Ω,它和AD8605可组成同相放大器。图2中的R2选为1kΩ,放大倍数可在2到250之间调整。

2.2 A/D及PWM部分

本设计中的A/D和PWM都是通过mega8来完成的。在AVR家族中,Atmega8是一个非常特殊的单片机,它内部集成了较大容量的存储器和丰富的硬件接口电路,具有AVR高档单片机MEGA系列的全部性能和特点,但由于采用了小引脚封装(DIP 28),所以其价格与低档单片机相当,因而性价比极高,而且有ISP功能,下载极其方便。

图2

  Atmega8单片机功能齐全、接口丰富。它有6通道A/D,包括4路10位A/D和2路8位A/D。而片中的3个PWM通道可实现任意小于16位,以及相位和频率可调的脉宽调制输出。此外,Atmega8中的每个I/O引脚均采用推挽式驱动,因此不仅能提供大电流驱动,而且还可以吸收20mA的电流。Atmega8的PWM有3种工作模式:快速PWM模式、相位可调PWM模式和相位频率可调PWM模式。其中后两者都采用双程计数器,所以其PWM频率只有快速模式的一半。本文选用第一种工作模式。该模式是利用定时器/计数器1来完成的,而且计数器为单程向上加1,从0x0000一直加到TOP,在下一计数脉冲到来时清零,然后再从0x0000开始加1计数。在设置正向比较匹配输出时,当计数值与OCR1A/OCR1B的值相同时,对输出比较匹配位(以下简称OC1A/OC1B)进行置位操作当计数器的值从TOP返回0x00时则清零OC1A/OC1B。而在设置反向比较输出时,其输出正好与同向比较时相反。从两路PWM的产生过程来看,两路的变化是同时的,因而避免了由于两路延时不同所引起的额外损耗。

  2.3 功率放大部分

功率放大部分采用两片IRF7389,每一片中内置一对VMOS管,N沟道和P沟道的导通电阻分别为46、98mΩVGS=4.5V时,最大输出功率为30W。此外,IRF7389还内置高速恢复二极管,能降低谐波失真。图2中的C17 、C16是加速电容,可用来改善激励波形,以使VMOS管迅速由截止转换为导通,或由导通迅速转为截止,以达到减少死区时间,改善输出波形之目的。图2中的 R7、R8主要起保护作用。

3 软件设计及系统实验

本系统软件由AD中断服务程序、定时中断服务程序、PWM程序、按键中断服务程序组成。

系统上电后, AD中断程序、时钟中断程序、



  PWM程序首先进行初始化,然后在程序运行初始阶段进行音量的AGC控制。考虑到人耳对接收声音强度的对数关系,放大器的增益从2倍到20倍间设计成对数增加方式,而无须手动调整放大倍数,从而使输出能保证在一定范围内,以使放大器工作在线性区。具体过程见图3所示。在播放过程中,可以通过按键调用中断子程序来调节音量。

Atmega8的AD转换在转换精度要求低于 10位时,ADC的采样时钟可以高于200kHz,因而可获得更高的采样率。另外设置SFIOR寄存器中的ADHSM 位可提高ADC的时钟频率。本系统采用ADC内部参考电源和连续转换模式,并选用ADC4通道(精度为8位),实验测得的转换速度可达40kHz。

PWM的A、B通道初始化采用相同的工作方式,零输入时,A、B同相输出。而当正信号输入时,A通道的脉宽增加,此时由于B通道的比较值与A通道互补,所以B通道脉宽减少;当有负信号输入时,A通道的脉宽减少,B通道的脉宽增加。

通过测试本系统在5V电源下,负载为8Ω时的最大输出不失真正弦波峰峰值为8.4V(即4.2×2),输出功率为1.1W,16MHz时的电源电流为278mA,效率为80%。而在32MHz时,AD的等效精度会提高,音质更好,但系统静态功耗电流将增加,然而,由于该损耗基本固定,因此用Atmega8来设计数字功放更适合在较大功率的场合使用。此外,加大IRF7389源极间电压可增大输出PWM电平,从而增大输出功率,进一步提高效率。

4 结束语

选用Atmega8单片机设计功放非常简单,而且灵活性好,可扩展性强,通过调整程序还可满足不同需求。通过修改数字滤波程序即可改变功放频响,若再加一片存储器,即可实现录音、复读、设定播放时间和显示音量等。而这些功能仅仅通过集成D类功放是无法完成的。

关键字:PWM  A/D  计数 引用地址:基于Atmega8的数字功放设计

上一篇:单片机在晶闸管触发电路中的应用
下一篇:基于单片机的FPGA并行配置方法

推荐阅读最新更新时间:2024-05-13 18:15

DSP与串行A/D组成的高速并行数据采集系统
摘 要:根据高速定点DSP芯片TMS320VC5402的多通道缓冲串口特点和串行A/D转换芯片TLV1572的工作特性,提出了两片串行A/D和一片DSP串口的通信方案。该系统充分利用了DSP的两个缓冲串口,可以使两路A/D转换数据高速并行传输。同时文中给出了系统的硬件原理图和软件设计的部分关键程序。 关键词:DSP;多通道缓冲串口;A/D转换;数据采集 引言 ---TMS320VC5402(以下简称C5402)是德州仪器公司1999年推出的定点数字信号处理器(DSP)。与TMS320C54x系列的其他芯片相比,C5402以其独有的高性能、低功耗和低价格受到了人们的广泛青睐。C5402增强外设有软件等待状态发生器、锁相环时钟
[嵌入式]
MSP430F5529 DriverLib 库函数学习笔记(六)定时器A产生PWM
平台:Code Composer Studio 10.3.1 MSP430F5529 LaunchPad™ Development Kit (MSP‑EXP430F5529LP) 1.通过Timer_A_outputPWM配置产生PWM波 所选输出引脚为P1.2 初始化函数 #define TIMER_PERIOD 12500 void Timer_A_PWM_Init(void) { Timer_A_outputPWMParam htim = {0}; //P1.2复用输出 GPIO_setAsPeripheralModuleFunctionOutputPin(GPIO_PORT_P1, GPIO_
[单片机]
MSP430F5529 DriverLib 库函数学习笔记(六)定时器<font color='red'>A</font>产生<font color='red'>PWM</font>波
AVR计数器—如何计算计数初始值
假设我想设置AVR定时器1定时时间为1秒。 (1)求出分频后的频率M(HZ); 首先要确定未经过分频后的频率P,然后再确定分频系数N,则M = P/N; (2)此时就知道定时器1使用的频率为M,那么产生一次中断的时间为1/M秒。那么要想定时1秒就要累加M次。 (3)因此我要设置的初值为K = 2^16 -M; (4)将K转化为十六进制。 例:假设AVR单片机的系统时钟是4M,256分频,使用定时器1定时1秒; (1)4000000/256 = 15625HZ。15625为定时器1使用的频率,那么一次中断所用的时间就是1/15625秒,必须累加15625次之后才能到达1秒; (2)所以计数器的初始值为:65535 - 15
[单片机]
STM32定时器基本计数原理解析
概述 STM32的TIM定时器分为三类:基本定时器、通用定时器和高级定时器。从分类来看就知道STM32的定时器功能是非常强大的,但是,功能强大了,软件配置定时器就相对复杂多了。很多初学者甚至工作了一段时间的人都不知道STM32最基本的计数原理。 虽然STM32定时器功能强大,也分了三类,但他们最基本的计数部分原理都是一样的,也就是我们常常使用的延时(或定时)多少us、ms等。 接下来我会讲述关于STM32最基本的计数原理,详细讲述如何做到(配置)计数1us的延时,并提供实例代码供大家参考学习。 TIM计数原理描述 定时器可以简单的理解为:由计数时钟(系统时钟或外部时钟)一个一个计数,直到计数至我们设定的值,这个时候产生
[单片机]
STM32定时器基本<font color='red'>计数</font>原理解析
基于CPCI总线的智能A/DD/A模块设计
   0 引 言   在工业控制领域,为了实现采集和控制功能,经常会使用到A/D,D/A模块。在实际使用中A/D,D/A模块和主机之间通信方式可以有很多选择。比如RS 232,RS 422,网络等接口方式。在该设计中A/D,D/A模块通过CPCI总线与主机通信,通过A/D接口采集数据,经过伺服控制软件处理,输出模拟量驱动执行机构。   从而实现一个闭环的控制。另外通过对DSP软件的修改,该模块还可以单独实现A/D或者D/A功能。   该设计中A/D,D/A模块具备以下功能:   (1)提供2路16位A/D,输入信号范围±5 V,精度要求小于士16 LSB;   (2)提供2路16位D/A,输出信号范围±5 V,精度要求小
[模拟电子]
51单片机+PWM控制渐变七彩灯C51程序
一、硬件介绍: (采用5050LED 2W) RGB三色LED控制引脚分别为单片机P1.2、P1.1、 P1.0。LED正极接主电源(24V)正极,负极接驱动3颗三极管的集电极,单片机控制脚分别接3颗NPN三极管,三极管发射极接地,而单片机的供电是来自三端稳压器7805,祥细原理如下: 二、实物图片: 三、软件部分: 1、原理: 先亮红灯(保持一会儿)----红绿过度(绿加1、红减1循环240次)------ 绿灯亮起(保持一会儿)----绿兰过度(兰加1、绿减1循环240次) -----兰灯亮起(保持)-----兰白过度(绿加1、红加1循环240次、兰不变) ---白红过度 2、具体程序如下:
[单片机]
51单片机+<font color='red'>PWM</font>控制渐变七彩灯C51程序
PWM电磁阀/阀驱动器
DRV101是采用脉宽调制(PWM)输出的低端功率开关。这种器件适用于驱动电动机械装置,如阀、电磁阀、继电器、制动器和定位器。用它来驱动热装置(如加热器和灯)也是理想的。PWM工作保存功率并降低热上升,从而具有较高的可靠性。另外,可调的PWM允许精确地控制传到负载的功率。 DRV101驱动器功能完备,包括PWM输出、一个内部24kHz振荡器、脉宽调制器、数字控制输入、外部延迟和占空比调节、热关闭和过/欠电流指示。其他特性包括高输出驱动(2.3A),宽电源范围(+9V~+60V)以及过热和过流保护。 图1示出DRV101的基本电路连接。其输入(引脚1)是与标准TTL电平兼容,+2.2V至+5.5V输入电压使器件输出导通,而低
[应用]
MSP430F149 TimerA 输出pwm信号 C程序代码
MSP430F149 TimerA 输出pwm信号  注意其中寄存器设置与pwm信号输出引脚的对应关系 P1.2-TA1,TACCR1,TACCTL1;,P1.3-TA2, TACCR2,TACCTL2。 #include msp430x14x.h #define uint unsigned int #define uchar unsigned char void int_clk() { uchar i; BCSCTL1 &= ~XT2OFF; //打开XT振荡器 BCSCTL2 |= SELM1+SELS; //MCLK为8MHz,SMCLK为8MHz do {
[单片机]
小广播
最新应用文章
换一换 更多 相关热搜器件

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 安防电子 医疗电子 工业控制

词云: 1 2 3 4 5 6 7 8 9 10

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved