ImageVerifierCode 换一换
格式:DOCX , 页数:31 ,大小:159.19KB ,
资源ID:7128907      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/7128907.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(宽带直流放大器毕业设计.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

宽带直流放大器毕业设计.docx

1、宽带直流放大器毕业设计 设计题目:宽带直流放大器摘要:本设计基于AT89S52单片机作为主控器,由AD603作为放大器的宽带直流放大器。本电路由级联两片AD603放大电路、增益控制电路、液晶1602显示电路及4*4矩阵键盘处理电路、测量电路和电源电路等部分组成。在电路的设计过程中,力求硬件电路简单,充分发挥软件编程方便灵活的特点,并最大限度挖掘单片机的资源,来满足系统设计要求。本电路具有宽带数字程控功能,运用程序采样测出峰值电压,然后用公式算出有效值并通过液晶显示,并运用电容去耦、屏蔽线作为输入输出信号线和金属体屏蔽高频放大电路等降噪声、抗干扰措施,使电路输出信号波形清晰、稳定。本电路具有设计

2、简单,功耗低,成本小等特点。关键字:宽带直流放大 数字程控 AD603 屏蔽 抗干扰目 录1.设计任务与要求 11.1设计任务 11.2要求 12.方案论证与比较 12.1总体设计方案 12.2主控芯片的比较与选择 12.3 显示模块比较与选择 22.4 放大器电路比较与选择 23.理论分析与计算 33.1带宽增益积 33.2通频带内增益起伏控制 33.3线性相位 33.4抑制直流零点漂移 43.5放大器稳定性 44.电路与程序设计 44.1系统的硬件设计 44.2 系统软件设计: 5软件设计框图如下 55.测试方案与测试结果 55.1测试仪器 55.2测试数据 66.设计总结 6参考文献 6

3、附录 61.设计任务与要求1.1设计任务设计并制作一个宽带直流放大器及所用的直流稳压电源。1.2要求1.2.1基本要求(1)电压增益AV40dB,输入电压有效值Vi20mV。AV可在040dB范围内手动连续调节。(2)最大输出电压正弦波有效值Vo2V,输出信号波形无明显失真。(3)3dB通频带05MHz;在04MHz通频带内增益起伏1dB。 (4)放大器的输入电阻50,负载电阻(502)。(5)设计并制作满足放大器要求所用的直流稳压电源。1.22发挥部分(1)最大电压增益AV60dB,输入电压有效值Vi10 mV。(2)在AV60dB时,输出端噪声电压的峰峰值VONPP0.3V。(3)3dB通

4、频带010MHz;在09MHz通频带内增益起伏1dB。(4)最大输出电压正弦波有效值Vo10V,输出信号波形无明显失真。 (5)进一步降低输入电压提高放大器的电压增益。(6)电压增益AV可预置并显示,预置范围为060dB,步距为5dB(也可以连续调节);放大器的带宽可预置并显示(至少5MHz、 10MHz 两点)。(7)降低放大器的制作成本,提高电源效率。(8)其他(例如改善放大器性能的其它措施等)。2.方案论证与比较2.1总体设计方案分析题目要求,我们将本设计分为:放大电路及输入输出电路、增益控制、键盘显示及处理、测量和稳压电源五大功能模块 2.2主控芯片的比较与选择方案一:采用8031作为

5、控制核心,以使用最为普遍的器件ADC0809作模数转换可以实现模数转换,但所需的I/O口较多。此方案简易可行,器件的价格便宜,但8031内部没有程序存储器,需要扩展,增加了电路的复杂性同时也增加了成本,不能满足高性价比的要求。方案二:采用凌阳SPCE061A单片机。它中断资源丰富,而且内置了在线仿真、编程接口,可方便地实现在线调试。但其程序编写较难,且性价比不够高。方案三:采用AT89S52作为电路的控制核心,使用8位的I2C总线式的模数转换器进行数据转换。而且AT89S52单片机是一种低功耗、高性能CMOS 8位微控制器,具有8K 在系统可编程Flash 存储器。另外,AT89S52 可降至

6、0Hz 静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止;可实现液晶显示和键盘设定等多种功能。此方案电路简单并且可以满足题目的各项要求的精度,所以选择方案三。2.3 显示模块比较与选择方案一:采用数码管显示位数太少,布线麻烦,管脚多,则占用相应的I/O口也多;方案二:采用液晶显示位数多,使用方便,2行每行16个字符。自带字符库、带背光,经典的液晶显示器件通过液晶屏显示你想要的信息,比发光二极管、数码管等显示更漂亮,更专业化,所以选

7、择液晶。2.4 放大器电路比较与选择 方案一:简单的放大电路可由分立元件搭接完成。此方案元器件成本低,易于购置。但是要满足增益60db的要求,需采用多级放大电路实现,这样便大量采用三极管等分立元件,这样电路比较复杂,工作点难于调整,调试难度太大,周期很长,尤其是短时间内手工制作难以保证可靠性及指标,故不采用此方案。 方案二:为了实现最大电压增益AV60dB,输入电压有效值Vi10 mV的要求,采用可调增益集成运放设计,如运放AD603,它由无源输入衰减器、增益控制界面和固定增益放大器三部分组成(如图(1)所示)。图中加在梯型网络输入端 (VINP) 的信号经衰减后,由固定增益放大器输出,衰减量

8、是由加在增益控制接口的电压决定。增益的调整与其自身电压值无关 , 而仅与其差值 V 有关 , 由于控制电压GPOS/GNEG端的输入电阻高达 50M,因而输入电流很小, 致使片内控制电路对提供增益控制电压的外电路影响减小。以上特点很适合构成程控增益放大器。此方案优势是电路集成度高,容易实现,控制方便、易于数字化用单片机处理,指标和可靠性容易得到保证,故采用此方案。3.理论分析与计算3.1带宽增益积为实现60dB放大能力,本设计采取两级AD603级联和后级放大电路的增益分配方式。依据资料,AD603单级采用的是增益为-1dB42dB、带宽在9MHZ-90MHZ之间的工作方式,其每级增益为: GA

9、D603(dB)=40Vg+20 (式3.1-1) 式中,Vg为AD603的增益控制电压,是一脚和二脚的压差,范围为-0.50V0.50V。故两级级联理论上可以达到 84Db,超过要求的60dB单片机通过D/A的输出电压控制AD603的增益,本设计采用TCL5615的十位分辨率DA芯片,则D/A输入值KDA与AD603控制电压的对应关系为: 第一级AD603控制电压的对应关系为: Vg=(1/1023* Kda*5)-1 (式3.1-3) 式中,KDA为D/A的输入值,5为TLC5615的参考电压,1为AD603二脚的电压第一级AD603控制电压的对应关系为: Vg=(1/1023* Kda*

10、5)-2 (式3.1-3)由式2-3及式2-4可知增益G与D/A输入值KDA的对应关系为: 第一级为: Kda=(G+20)/40*1023/5 (式3.1-4) 步进控制AD603增益: 根据发挥部分要求,可以以5dB步进调节增益,根据(式3.1-4),我们可以很容易的编程实现。3.2通频带内增益起伏控制 由于是小信号放大,频带较宽,所以整个系统比较容易受电磁的干扰,表现为信号波形有飘动起伏,因此必须进行干扰屏蔽。做法有:要有稳定、少纹波的电源,PCB板设计要考虑高频,系统屏蔽等措施。3.3线性相位 由于本系统设计要求是宽带,频率变化很快,从0HZ到几十MHZ,如果电路设计不好容易产生相移,

11、产生相移的原因是电路通道中使用了电容,电感性器件,集成芯片需要相位补偿。所以在设计电路的时候电路通道中尽量少用电容,并注意芯片正确使用。3.4抑制直流零点漂移产生直流零点漂移的原因很多,如电源电压不稳、元器件参数变值、环境温度变化等。在我们的设计中,为了抑制直流零点漂移,我们精选器件,如:我们选用精密电阻、电解电容,进行有关参数的精确设置;另外,我们使用双电源对电路进行供电,集成块内使用差分电路,可以有效的抑制直流零点漂移。3.5放大器稳定性该放大器由级联两片AD603组成,对于低频信号的输入起到稳定的放大作用,但对于5MHz以上的高频信号,放大波形有微小失真,且幅值有所减小。但总体上其放大输

12、出波形还是理想的,工作还是稳定的。4.电路与程序设计根据选取的总方框图,分别对各个主要电路进行设计和选取,其内容应该包括: 4.1系统的硬件设计根据题目的要求,结合考虑过的各种方案,我们认真取舍,充分利用模拟和数字系统各自的优点,发挥其优势,采用单片机预置和控制放大器增益的方法大大提高了系统的精度和可控性;后级放大器使用提高了输出电压有效值。我们使信号都在单片机的数字算法控制下得到最合理的前级放大,使其放大倍数精确。图(2)所示即为本系统原理框图:具体电路见附录4.2 系统软件设计: 软件设计框图如下:5.测试方案与测试结果5.1测试仪器双踪示波器 CA9020 信号发生器 CA1460-02

13、数字万用表 VC890D5.2测试数据测试方案、结果与结果分析(1)最大增益 G=20lg(Vo/Vi) ,在固定频率下测试得。 数据如表中: Vip-p(mv)581012141618Vop-p(v)2.003.003.754.405.005.756.55Gm( dB )52.451.4851.4851.2851.0651.1151.22结果分析,本系统最大增益达到51.43,大于基本要求的40dB,并且输入的信号有效值远小于20mV(2)输出有效值及幅频特性第一组:f(Hz)501K50K100K500K1M2M3M5M8M10M12MVip-p(mV)181818181818181818

14、181818Vop-p(V)6.45 6.456.506.506.206.005.585.585.565.455.045.00Vo2.282.282.282.282.192.121.971.971.951.91.761.70G(dB)51.0851.0851.1551.1550.7450.4649.8349.8349.8049.6248.9448.87上面的那个表格是我们在最大AD603最大增益波形无明显失真的情况下测量出来的数据,可以得出最大输出正弦波有效值Vo=2.30V,大于基本要求的大于2V.。幅频特性从0Hz到12M,都是比较平稳的,但是从8MHz开始出现失真,并且增益明显下降。该系

15、统有大于12Mhz的带宽,满足题目要求。(3)放大器输入电阻、负载电阻测量 测量方法:使用万用表直接测量得出结果是输入电阻为100 ,负载电阻为50,满足放大器的输入电阻50,负载电阻(502)的要求。 (4) 增益步进测试 测试电路如下图所示:G设( dB )0510152025303540Vi(mV)181818181818181818V0(V)0.0160.0340.060.100.190.3150.591.402.20G测-1.025.2410.4614.8920.4724.863035.2341.74|G测 -G设|1.020.240.460.110.470.1400.230.74从

16、表中的数据得出:手动步进增益与实际的增益是有一些误差的,总的误差为0.38Db,不是很大.出现误差的原因有DA输出来的电压有一些误差,另外AD603的一二脚的压差也有一点误差。总得来说步进增益还是不错的。6.设计总结经过四天三夜的奋斗,我们设计的电路基本实现了题目基本部分的要求,并完成了部分发挥部分要求。在某些方面电路性能还超过了题目的要求。但由于时间紧,工作量大,设计电路还存在许多可以改进的地方,比如电路布局、和抗干扰方面还有很大的提升空间,经过改进,相信性能还会有进一步的提升。本次竞赛极大的锻炼了我们各方面的能力,虽然我们遇到了很多困难和障碍,但在我们组员间团结协作,相互理解和支持,一一解

17、决了很多难道。我们将继续努力争取更大的进步。参考文献(1)陈桂友.单片机原理及应用.机械工业出版社出版2007.08.(2)陈大钦.电子技术基础实验. 高等教育出版社出版2007.05.(3)戴仙金. 51单片机及其C语言程序开发实例.清华大学出版社2008.02.(4)刘春生,李小波. AD603在信号采集系统中的应用.国外电子元器件.2000.11附录 附录1 总电原理图包括以下各部分:1.电源电路设计:2放大电路设计:3.控制电路部分:附录2 印制电路板图1.控制电路部分PCB2.放大电路设计PCB3.电源电路PCB:图(1)附录3 程序清单#include #define uchar

18、unsigned char#define uint unsigned int#includeuchar flag;extern uchar gain;extern void display_gain();extern void ad603_controll(void);extern void DA_Conver(int DAValue); extern void read_v();void main() int i; lcd_init(); DA_Conver(0); gain=0; display_gain(); while(1) ad603_controll( ); / DA_Conver

19、(360); #include #include #define uchar unsigned char#define uint unsigned int/*TLC549管脚定义 */ /*TLC549管脚定义 */ sbit CLK=P30; /定义时钟信号IO口 sbit DO=P31; /定义片选信号IO口sbit CS=P32;uchar addata=0; /存放采集到的数据uint voltagenum4; /转换成显示的值uint voltage=0; /存放电压扩大100的值uchar code digital=0123456789; /*/uint max1;uint dat

20、e25; /存放电压采用值extern void lcd_write(uchar start, uchar in_data) ;/uchar addata=0; /存放采集到的数据/uint voltagenum3; /转换成显示的值/uint voltage=0; /存放电压扩大100的值 /*uchar code digital3= /LCD1602的数字显示码表 /0-9, : ; ? 0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x37,0x38,0x39,0x3a,0x3b,0x3c, 0x3d,0x3e,0x3f ; */* 函数名称:ad_delay*

21、功能描述:ad转换延时函数* 输入:k* 输出:无* 全局变量:无* 调用模块:无*/void ad_delay(uchar k) uchar i,j; for(j=0;jk;j+) for(i=0;i125;i+); /实现AD转换/* 函数名称:ad_change* 功能描述:电压计算程序* 输入:无* 输出:无* 全局变量:addata* 调用模块:_nop_*/void ad_change() uchar i; CS=1; /芯片复位 CS=0; CS=1; CLK=0; _nop_(); _nop_(); _nop_(); _nop_(); CS=0; /芯片起始 _nop_();

22、_nop_(); _nop_(); _nop_(); /等待延时 for(i=0;i8;i+) /输入采样转换时钟 CLK = 1; CLK = 0; CS=1; /开始转换 _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); /等待转换结束 CS=0; /读取转换结果 _nop_(); _nop_(); _nop_(); _nop_(); for(i=0;i8;i+) CLK=1; addata=1; if(DO) addata|=0x01; /addata=add

23、ata+1; /*else addata|=0x00;*/ CLK=0; CS=1; /return addata;/* 函数名称:get_voltage* 功能描述:电压计算程序* 全局变量:voltage,addata*/void get_voltage() voltage=addata*(250.0/255); /计算电压并扩大100倍,500.0是参考电压2.5扩大100倍得到的,参考电压由调节R4得到 /voltage=voltage*3.06453; /根据实际情况调整电压,现在还有一点误差 voltagenum0=voltage/1000; voltagenum1=voltage

24、%1000/100; voltagenum2=voltage%100/10; voltagenum3=voltage%10; /ge=(voltagenum2+4)%10; /调精度 个位 /shi=(voltagenum1+(voltagenum2+4)/10)%10; /十位 /bai=(voltagenum0+(voltagenum1+(voltagenum2+4)/10)%10; /while(1);/* 读电压峰峰值函数,各位数值存放在voltage4 */ void read_AD() ad_change(); /AD转换 ad_delay(200); get_voltage();

25、 void display() lcd_write(0,0x80+11); /设置显示位置 /lcd_write(1,V); lcd_write(1,digitalvoltagenum0); lcd_write(1,digitalvoltagenum1); lcd_write(1,.); lcd_write(1,digitalvoltagenum2); lcd_write(1,digitalvoltagenum3); lcd_write(1,V); void read_v() uchar n; ad_change(); /先进行第一次AD转换,以下是用查询比较法来测量波峰值的 ad_delay

26、(200); get_voltage(); date0=voltage; max1=date0; for(n=1;nmax1) max1=daten; max1=max1*0.707; voltagenum0=max1/100; /voltagenum0=(uchar)voltagenum0; /最大值放在max1中 voltagenum1=max1%100/10; / voltagenum1=(uchar)voltagenum1; voltagenum2=max1%10; /voltagenum3=(uchar)voltagenum3; lcd_write(0,0x80+11); /显示电压峰值 lcd_write(1,digitalvoltagenum0); lcd_write(1,0x2E); lc

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1