1、武汉理工大学模拟电路课程设计报告初始条件:具备模拟电子电路的理论知识;具备模拟电路基本电路的设计能力;具备模拟电路的基本调试手段;自选相关电子器件;可以使用实验室仪器调试。目 录第一节 引 言 31.1 水温控制系统概述 31.2 本设计任务和主要内容 3第二节 系统主要硬件电路设计 .32.1 单片机控制 系统原理 32.2 单片机电源部 42.3 温度采样电路 42.3.1 温度传感器的选取 42.3.2 温度传感器 AD590 52.3.3 电路原理及参数计算 52.3.4 ADC0804 性能描述 62.4 温度显示部分 72.5 单片机控制部分 7第 三 节 系统的软件设计 .7第
2、四 节 总电路图.10第 五 节.系统测试方法 105.1 测试仪器 .105.2 部分指标测试方法 .11第 六 节 小结与体会 11结 束 语 .11附录:1 元器件清单 .122 主要参考文献资料 .12附表 1 总电路图.13第一节 引 言随着科学研究、工业和家用电器等方面对测温和温控的需要,各种新型的集成电路温度传感器不断被研制出来。集成温度传感器是将温敏晶体管与相应的辅助电路集成在同一块芯片上。它能直接给出正比于绝对温度的理想线性输出。利用 AT89C51 单片机为核心,配合温度传感器,信号处理电路,显示电路,可将温度传感器检测到的水温模拟量转换成数字量,显示于 LED 显示器上。
3、在众多温度传感器中,集成温度传感器 AD590 因其线性好、精确度高和易于实现计算机在线测试与数据处理等优点在生活中有着广泛的应用。1.1 温度检测系统概述 能源问题已经是当前最为热门的话题,离开能源的日子,世界将失去一切颜色,人们将寸步难行,虽然本设计是节省电能角度出发,而电能又是可再生能源,但是在今天还是有很多的电能是依靠火力,核电等一系列不可再生的自然资源所产生,一旦这些自然资源耗尽,我们将面临电能资源的巨大的缺口,因而本设计从开源节流的截角度出发,节省电能,保护环境。1.2 本设计任务和主要内容设计并制作一个温度检测系统。本设计主要内容如下:(1)温度测定范围为 099,最小区分度为
4、1,标定温度1。(2)环境温度降低时温度测量的静态误差1。(3)用十进制数码管显示水的实际温度。第二节 系统主要硬件电路设计2.1 单片机控制系统原理2.2 单片机电源部分2.3 温度采样电路2.3.1 温度传感器的选取目前市场上温度传感器较多,有以下几种:方案一:选用铂电阻温度传感器,此类温度传感器线性度、稳定性等方面性能都很好,但其成本较高。方案二:采用热敏电阻,选用此类元器件有价格便宜的优点,但由于热敏电阻的非线性特性会影响系统的精度。方案三:选用美国 Analog Devices 公司生产的二端集成电流传感器 AD590。其测量范围在-50-+150,满刻度范围误差为0.3,当电源电压
5、在 510V 之间,稳定度为 1时,误差只有0.01。此器件具有体积小、质量轻、线形度好、性能稳定等优点其各方面特性都满足此系统的设计要求。比较以上三种方案,方案三具有明显的优点,因此选用方案三。2.3.2 温度传感器 AD590测量范围在-50-+150,满刻度范围误差为0.3,当电源电压在 510V 之间,稳定度为 1时,误差只有0.01 。AD590 为电流型传感器温度每变化 1其电流变化 1uA 在 35和 95时输出电流分别为 308.2uA 和368.2uA 。其外形如图 1,采用金属圆壳 3 脚封装,管脚 1 为电源正端“+” ,2 脚为电流输出端“-” ,3 脚为管壳接地端,一
6、般不用。电路符号如图 2 所示。2.3.3 电路原理及参数计算3、接下来我们用差动放大器使其输出 V。为(100K/10K)(V2-V1)=T/10。由于 ADC0804 的最大输入电压为 5V,所以将电路中的 100K 电阻分别用一个 47K 的电阻和 5K 的滑动变阻器的串联电路代替。这样,当温度在0-100变化时,输出的电压 V。的范围是 0-5V。2.3.4 ADC0804 性能描述ADC0804 为 8bit 的一路 A/D 转换器,其输入电压范围在 05v,转换速度小于 100us,转换精度 0.39。ADC0804 的 Vin接采样电路的 V。口,Vref 用两个 1K 的电阻分
7、压得到。CS管脚接地,使 ADC0804 始终处于选通的状态。输出口 DB0-DB7 分别接到单片机STC89C52 的 P10-P17 管脚,将转换后的模拟信号输给单片机。读信号输入端RD 和写信号输入端分 WD 分别接到单片机的 P23 和 P24 端口。2.4 温度显示部分温度显示部分采用两个数码管,显示范围为 0-99.数码管采用公阴极数码管,a-dp 分别接在锁存器 74HC573 的 Q0-Q7 上。数码管的 gnd 分别接到单片机的 P26 和 P25,以控制位选。而锁存器 74HC573 的输入端 D0-D7 分别接到单片机的 P00-P07,锁存端与 P27 连接,以控制数据
8、的输入。2.5 单片机控制部分单片机控制部分采用 STC89C52 控制。管脚接法如下图其中,CON9 为上拉电阻。所用晶振为 12MHz。第 三 节 系统的软件设计#include /52 系列单片机头文件#include#define uchar unsigned char#define uint unsigned intsbit dula=P27; /申明 U3 锁存器的锁存端sbit led_a=P26; /申明数码管 a 的 gndsbit led_b=P25; /申明数码管 b 的 gndsbit adwr=P23;sbit adrd=P24;uchar code table=0x
9、3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71;void delayms(uint xms) /延时函数uint i,j;for(i=xms;i0;i-)for(j=110;j0;j-);void display(uchar shi,uchar ge) /显示子函数led_a=0;led_b=1; /选通数码管 a,关闭数码管 bdula=1;P0=tableshi; /送段选数据dula=0;delayms(5); /延时led_a=1;led_b=0; /选通数码管 b,关闭数码管
10、adula=1;P0=tablege;dula=0;delayms(5);void main()uchar a,A1,A2,advalue,temperature;dula=1; /数码管显示清零P0=0x00; dula=0;while(1)adwr=1; /关闭 A/D 转换_nop_(); /延时一个机械周期adwr=0; /启动 A/D 转换_nop_();adwr=1;for(a=20;a0;a-)display(A1,A2);P0=0x00; /读取 P1 口之前先给其写全 0adrd=1; _nop_();adrd=0; /A/D 读使能_nop_();advalue=P1; /
11、A/D 数据读取赋给 P1口adrd=1;temperature=(uchar)(advalue/255.0*100.0);A1=temperature/10; /分出十位和个位A2=temperature%10;第 四 节 总电路图见附表 1第 五 节 系统测试方法5.1 测试仪器万用表5.2 部分指标测试方法调节滑动变阻器 R2 使 R2 加上 R3 的阻值为 10K调节滑动变阻器 R10 使 R10 加上 R8 的阻值为 50K调节滑动变阻器 R11 使 R11 加上 R9 的阻值为 50K调节 50K 的滑动变阻器 R5,使运算放大器的反向输入端输入电压为2.73V第 六 节 小结与体
12、会1、 运算放大器做减法运算器用时,电阻阻值必须精确调节才能使输出结果和理论值更加接近。2、 7805 输出电压为 4.95V,基本满足要求。3、 应该给稳压管加强散热,长时间使用时稳压管会长时间处于高温的状态。本电路采用 AT89C52 单片机做主控芯片, 利用温度传感器AD590 采集温度, 且可显示温度 , 电路简单、运行稳定、工作精度高。结 束 语附录:一、原器件清单:电阻:1k(2 个) ,10k(4 个) ,47k(2 个)滑动变阻器:1k(1 个) ,5k(2 个) ,50k(1 个)10uF(1 个)和 1000uF(2 个)电解电容,点触式开关(1 个) ,30pF(2 个) 、150pF(1 个) 、0.01uF(1 个)瓷片电容。12MHz 晶振6V 稳压管OP07(2 个)AD5907805ADC0804STC89C527 段数码管二、主要参考文献资料【1】郭天祥.51 单片机 C 语言教程入门、提高、开发、拓展全攻略-北京:电子工业出版,2009.1ISBN 978-7-121-07893-4【2】康华光.电子技术基础模拟部分(第五版)-高等教育出版社