|
题记:这是我和我的同学设计的一次校内作业。 看到51学习网论坛开展征文活动,特有兴趣参加,可限于我们的时间,不能重新设计。随征得同学同意,以次论文特来参加。 题目:3.单片机应用 姓名:韩宏伟 地址:陕西省长安区西安通信学院 宽带数控放大器 摘要:本设计采用AT89C52单片机调控,具有LED显示与键盘输入预置的方案,使用AD603和AD818集成运算放大器完成放大功能,并且设计电压增益步进达到了1dB,能够完成增益从0dB~66dB可调。用可变增益宽带放大器AD603来提高增益,利用高速宽带视频放大器AD818扩大AGC控制范围,通过单片机实现增益步进调节的间隔。使用了多种抗干扰措施以减少噪声并抑制高频自激。整个系统通频带为1kHz~20MHz,最小增益1dB,最大增益69dB。增益步进1dB,60dB以下预置增益与实际增益误差小于0.2dB。不失真输出电压有效值高达25.5V。 一、方案论证与比较 方案一 简单的放大电路可以由三极管搭接的放大电路实现,图1为分立元件放大器电路图。为了满足增益60dB的要求,可以采用多级放大电路实现。对电路输出用二极管检波产生反馈电压调节前级电路实现自动增益的调节。本方案由于大量采用分立元件,如三极管等,电路比较复杂,工作点难于调整,尤其增益的定量调节非常困难。此外,由于采用多级放大,电路稳定性差,容易产生自激现象。
图1 二、系统设计 1、系统设计与总体流程如图1:
根据题目的要求,经过仔细分析,充分考虑各种因素,制定了整体的设计方案:以单片机89C51为核心,完成四个方面的功能:处理键盘数据,DA转化,控制放大器的增益,控制LCD显示。 · 首先由键盘输入控制数据;
· 控制数据进入单片机,经过运算,单片机做出相应的反应。
· 单片机外围与DAC0832相连,实现将CUP输送的预置数字大小转换成对应的控制电压然后经过LM358运放进行调整;使其能够达到我们的需求。增益控制电压输出到放大电路并且调节放大电路,使放大电路产生相应的变化,改变放大增益;从而达到步进增益的控制。 三.主要电路原理分析与计算 (1)直流稳压电源 本电源采用桥式全波整流、大电容滤波、三端稳压器件稳压的方法,产生各种直流电压,如正负15V,正负5V等都可以买到相应的固定输出的三端稳压芯片,如LM7815、LM7805。而电子市场上没有我们要求的前级和后级放大器所需要的+10V和固定输出的三端稳压器件,所以我们采用LM317T可变输出的稳压芯片,典型电路图如图2。
图2 (2)放大部分 考虑到增加输出电压和增益,因此我们用一个AD603再加一个AD818这样不但可以很轻易满足题目的要求,而且使得总体的电路设计很容易实现。 1. AD603和AD818的相关资料 AD603是美国模拟器件(Analog Device公司的一高性能、低噪声、90MHz、增益可调的集成运放。常用于RF/IF的AGC控制、视频增益控制、A/D输入调整、信号测量等领域。其结构如图3所示。 以下是它的一些具体参数:
●输入信号幅度VINP:+2V; ●存储温度:-65℃~150℃ 可见AD603由固定增益放大器、精确的无源R-2R梯形衰减网络、增益控制接口三部分组成。由上图可知衰减网络的衰减范围,即增益可调范围为0~42.14dB,输入信号并不直接加到放大器输入端,而是加到梯形衰减网络的输入端,这样就保证了①固定增益放大器的输入为一弱信号,使信号的失真将很小;②带宽的设置与增益的调节相对独立。
增益控制接口通过控制电压VG=GPOS-GNEG来控制片内的精确调节器来控制输入信号的衰减量GA,增益控制接口的电压—增益转换率为42.14dB/V,即23.73mV/dB,其线性转换曲线如图5所示。其中对GPOS与GNEG只要求不超过电源电压,增益的调整与其自身电压值无关,而仅与其差值VG有关,并且控制电压GPOS/GNEG端的输入电阻高达50MΩ,即输入电流很小,则片内控制电路对提供增益控制电压的外电路影响很小。以上特点适合构成程控增益放大器。
从芯片厂商给的资料来看,AD603给出了三种典型的应用方法。
图6 2.单级+10db ~+50db,带宽9MHz接法 电路如图7:
图7 3.单级0db ~+40db,带宽30MHz接法 电路如图8:
图8 此电路的优点是增益、带宽都是适中,经过两级放大,不仅可以满足题目要求,而且高出许多,所以是一个比较合适我们的电路,故我们采用这种接法作为放大电路部分。 因此1脚与2脚之间电压差与增益的关系式为 Gain=40VG+20
AD818
运放性能介绍 AD818 是一个低功耗,宽带,高速视频运算放大器其结构如图9所示:
图9 常被用作视频放大中,它的电压转换速率高达:500V/μs。 55 MHz 0.1 dB带宽为55
MHz 0.1 dB 130 MHz 带宽
(3 dB, G = +2) 100 MHz 带宽
(3 dB, G+ = –1) 其典型应用电路如图10:
图10
总的电路图如图11所示:
图11 2. 手动增益预制和控制的实现 开环增益手动控制的基本思路是由单片机数字程控,经D/A转换产生控制输出电压并使加到AD603的1脚来实现。由于时间有限所以我们每用单片机实现
自动控制电压。而我们利用单片机使得输出电压以25mv/db增加,然后控制输出电压的变化范围在0-1v之间,而我们再AD603的2脚上加一个0.5v的电压这样就可以产生运放所需要的控制电压-0.5——+0.5之间,提供给AD603。 3. 单片机系统 单片机是整个放大器控制的核心,它主要完成以下功能:接受用户按键信息以控制增益;对AD603的增益控制电压进行控制。控制部分以AT89C51单片机为核心,LED显示及键盘组成。 D/A转化部分由DAC0832D/A转换和两片358运放组成。增益预置值通过键盘输入之后,经过单片机运算后送至D/A转换器转换成0~+1V的控制电压。DAC8032是8位的D/A转换器,8位数据可以表示256种状态,我们只取前200种。对应40dB的增益,步进为40/200=0.2dB。 原理图如图12:
图12 D/A转化原理图 各个功能有不同的模块实现: 键盘检测模块:纪录用户对键盘的操作,将设定的增益数值记录下来。 控制电压生成模块:根据用户对增益的设置,查表得到队D/A转化器的控制电压,输送给D/A转化器以产生精确的控制电压。
显示模块:按用户需要将预制增益显示在数码管上。 调试:先不接放大部分,调试控制部分,使DAC0832输出0~1V电压正常。再用一电压加到ADC0809的输入端,调整使电压显示正常。然后接上放大部分进行调试。采用先分别测试单个单元模块,调试通过后再进行整机调试的方法,很好的提高了调试效率。 四、软件设计 1.软件流程 程序采用汇编语言来编写。流程图如图13所示。
图13
程序流程图 2.源程序见附录1: 五、测试结果 输入电压 10—50mV
增益预制30dB 输出电压最大有效值
频带范围 BW=10MHz 增益步进 0-66dB 六、抗干扰措施 系统总的增益为0~80dB,增益控制部分增益最大可达66dB,因此抗干扰措施必须要做得很好才能避免自激和减少噪声。我们采用下述方法减少干扰,避免自激: 1 将输入部分和增益控制部分装在屏蔽盒中,避免级间干扰和高频自激。 2 电源输入级电源靠近屏蔽盒就近接上1000uF电解电容,盒内接高频瓷片电容,通过这种方法可避免低频自激。 3 所有信号耦合用电解电容两端并接高频瓷片电容以避免高频增益下降。 4 构建闭路环。在输入级,将整个运放用较粗的地线包围,可吸收高频信号减少噪声。在增益控制部分也采用了此方法。 5 数模隔离。数字部分和模拟部分之间除了电源隔离之外,还将各控制信号用电感隔离。 6 使用同轴电缆,输入级和输出级使用BNC接头,输入级和功率级之间用同轴电缆连接。 实践证明,电路的抗干扰措施比较好,在1KHz~10MHz的通频带范围和0~80dB增益范围内都没有自激。 附录1:单片机源程 ;数码管定义 LEDDATA
EQU p2.7 LEDALE
EQU P2.6 LEDCLK
EQU P2.5 ;键盘定义
SW EQU P0.0 ;十位
GW EQU
P0.1 ;个位
DF EQU P0.3 ;位选 ;DAC0832输出口定义
OP EQU
P1
;变量定义
LEDBUF1 EQU 40H
LEDBUF2 EQU 41H
LEDBUF3 EQU 42H
LEDBUF4 EQU 43H
LEDBUF5 EQU 44H
LEDBUF6 EQU 45H ;程序开始 ORG 0000H LJMP
MAIN
ORG
0100H MAIN: MOV
SP,#70H
CLR LEDALE
LCALL CLEARDISP ;清数码管 LCALL INATI
;变量初始化 LCALL DISPNUMBER ;初始化显示
LCALL OPC
;输出到0832 ;键盘扫描 CIR: LCALL DELAY ;抖动延时 JNB
DF,NEXTSTEP;增减转化 JNB SW,SWPLUS
;十位递增 JNB GW,GWPLUS
;个位递增 LJMP
CIR ;循环扫描 NEXTSTEP: LCALL DELAY ;抖动延时 JNB DF,CIR
;增减转化 JNB SW,SWMIN
;十位递减
JNB GW,GWMIN
;个位递减
LJMP NEXTSTEP
;循环扫描 ;十位递增子程序 SWPLUS: MOV A,LEDBUF3 ADD
A,#1
DA
A
ANL
A,#0FH MOV
R2,A XRL
A,#06 JZ
N ;10位最大为6 MOV
A,R2
MOV
LEDBUF3,A
LCALL DISPNUMBER
;显示
LCALL OPC
;输出到0832
LJMP CIR
;继续扫描 N: MOV
LEDBUF3,#0 LCALL DISPNUMBER
;显示 LCALL OPC
;输出到0832 LJMP CIR
;继续扫描 ;个位递增子程序 GWPLUS: MOV A,LEDBUF4 ADD A,#1 DA A ANL A,#0FH MOV LEDBUF4,A LCALL DISPNUMBER
;显示 |