电子综合设计-三位半数字显示温度计课程设计报告.docx

上传人:scccc 文档编号:12948749 上传时间:2021-12-08 格式:DOCX 页数:30 大小:864.06KB
返回 下载 相关 举报
电子综合设计-三位半数字显示温度计课程设计报告.docx_第1页
第1页 / 共30页
电子综合设计-三位半数字显示温度计课程设计报告.docx_第2页
第2页 / 共30页
电子综合设计-三位半数字显示温度计课程设计报告.docx_第3页
第3页 / 共30页
电子综合设计-三位半数字显示温度计课程设计报告.docx_第4页
第4页 / 共30页
电子综合设计-三位半数字显示温度计课程设计报告.docx_第5页
第5页 / 共30页
点击查看更多>>
资源描述

《电子综合设计-三位半数字显示温度计课程设计报告.docx》由会员分享,可在线阅读,更多相关《电子综合设计-三位半数字显示温度计课程设计报告.docx(30页珍藏版)》请在三一文库上搜索。

1、. 课程设计报告 实习名称 电子技术综合设计 学 院 信息工程学院 年级班别 学 号 学生姓名 三位半数字显示温度计设计报告设计时间: 班 级: 姓 名: 报告页数: 29页 x大学课程设计报告设计题目 三位半温度数字显示计 学院 信息工程 专业 信息工程 班 班 学号 姓名 (合作者 ) 成绩评定_教师签名_目录一、设计任务与要求6二、 设计方案及比较(设计可行性分析)7三、系统设计总体思路8四、电路元件清单9五、各模块工作原理分析10六、程序代码展示14七、画出电路原理图及PCB图22八、产品的制作及调试22九、实验结果及展示26十、实验感想28一、设计任务与要求 设计任务: 采用STC8

2、9C52单片机、DS18B20传感器、数字显示器设计一个日常温度数字温度计。 (一)产品指标及技术要求: 温度显示范围:050; 数字显示分辨率:0.1; 精度误差0.5; 电路工作电源可在59V范围内工作. 二、设计方案及比较(设计可行性分析)方案一:基于单片机的数字温度计设计器件:单片机,18B20,LED数码管,电阻,晶振,电容。优点:温度高低限度可以自由设定、读出温度后实时显示温度能,且可编程提升了装置的扩展性,可为后续功能增加预留空间。缺点:单片机需要编程,软硬结合,温度计的调试更为复杂 方案二:基于LM3芯片与ICL7107数字显示温度计设计器件:LM35、ICL7107、电阻、电

3、容、数码管等。优点:无需编程,纯硬件设计缺点:电路设计复杂,PCB图布线密集,如果制作单层板,需要大量飞线,易造成系统不稳定,以及功能固定。经过综合比较,方案一虽然需要软硬结合,总体难度大于方案二,但功能强大,而且相对来说在制板难度较小,综合比较我们还是选择方案一。三、系统设计总体思路测温电路 电源单片机以及晶振数码管显示电路经分析,将系统分为三个部分,一个是由温度传感器DS18B20组成的检测部分,另一个是由单片机和晶振回路组成的主控分析部分,以及最后用数码管显示器与电阻做的显示模块。如图所示DS18B20将检测到的数据送到单片机,单片机对接收到的数据进行处理并送到数码管显示,6V电源给各个

4、部分供电。四、电路元件清单名称数量功能10K电阻1复位电路4.7K电阻1测温模块1K电阻4200R电阻8保护数码管30pf陶瓷电容2晶振模块10uf溶解电容1复位电路PNP三极管85504控制数码管开关DS18B30温度感应器1测温模块晶振1晶振模块锁紧应1STC89C521单片机主控分析数码管共阻1显示模块五、各模块工作原理分析本系统由单片机主控电路、DS18B20温度检测模块、LED数码管显示模块3部分组成。1. STC89C52单片机主控制器件STC89C52RC是STC公司生产的一种低功耗、高性能CMOS8位微控制器,具有8K字节系统可编程Flash存储器。STC89C52使用经典的M

5、CS-51内核标准功能: 8k字节Flash,512字节RAM, 32 位I/O 口线,看门狗定时器,内置4KB EEPROM,MAX810复位电路,3个16 位定时器/计数器,4个外部中断,一个7向量4级中断结构(兼容传统51的5向量2级中断结构),全双工串行口。另外 STC89C52 可降至0Hz 静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU 停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。最高运作频率35MHz,6T/12T可选。2. LED数码管显示模块 LED数

6、码管原理图如下所示下面左图为实验板其中一只数码管,而右图为数码管的内部接法,也 就是前面所说的共阳极。当要其显示“1”时,只需置B 与C 为低电平,而其它的为高电平;当要显示“2”时,只需置ABGED 为低电平,而其它的为高电平;当要显示“8”时,就除了小数点以外全部为低电平;如此类推。 LED 数码管显示方法 “动态扫描”。什么是动态扫描?就是所要工作的若干个数码管轮流显示,只要轮流显示的速度足够快,每秒约50 次以上,由于人眼的 “视觉暂留” 特性,看起来就像是连续显示,这样称为动态扫描。这种显示方式在数码管应用系统中应用得最为广泛左图为共阳极的动态扫电路,而右图则为电路的工作时序。下面我

7、们来分析一下动态扫描的工作原理。在电路中T1T2T3 为用作开关作用,当B极dig1dig2dig3 为低电平时导通,为高电平时截止,三个电阻为限流电阻。下面我们从图5-15 来理解一下动态扫描的工作原理。 第一:首先显示个位,在单片机中将dig1 置低电平,而dig2 与dig3 置高电平,所以只有T1 导通,而T2 与T3 则截止,同时在段码ag 中输出相应段码的低电平,那么在数码管中只有个位显示,而相应的十位与百位则没有显示。 第二:显示十位,在单片机中将dig2 置低电平,而dig1 与dig3 置高电平,所以只有T2 导通,而T1 与T3 则截止,同时在段码ag 中输出相应段码的低电

8、平,那么在数码管中只有十位显示,而相应的个位与百位则没有显示。 第三:显示百位,在单片机中将dig3 置低电平,而dig1 与dig2 置高电平,所以只有T3 导通,而T1 与T2 则截止,同时在段码ag 中输出相应段码的低电平,那么在数码管中只有百位显示,而相应的个位与十位则没有显示。3. 温度检测模块 DS18B20温度传感器是美国DALLAS半导体公司最新推出的一种改进型智能温度传感器,与传统的热敏电阻等测温元件相比,它能直接读出被测温度,并且可根据实际要求通过简单的编程实现位的数字值读数方式。DS18B20的性能特点如下: 1. 独特的单线接口仅需要一个端口引脚进行通信; 2. 多个D

9、S18B20可以并联在惟一的三线上,实现多点组网功能; 3. 无须外部器件; 4. 可通过数据线供电,电压范围为3.05.5;5. 测温范围从-55度到+125度(从-10度到+85度的精度为±0.5度) 6. 零待机功耗;7. 温度以9或12数字; 8. 用户可定义报警设置; 9. 报警搜索命令识别并标志超过程序限定温度(温度报警条件)的器件; 10. 负电压特性,电源极性接反时,温度计不会因发热而烧毁,但不能正常工作; DS18B20接线图如下所示:六、程序代码展示#include <reg51.h>#define uchar unsigned char #defin

10、e uint unsigned intuint TT;/*共阳LED段码表*/unsigned char code tab=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x7f,0xbf,0xc6;uchar code tab1=0x40,0x79,0x24,0x30,0x19,0x12,0x02,0x78,0x00,0x10;/*端口定义*/sbit DQ=P33; /数据传输线接单片机的相应的引脚/*定义全局变量*/unsigned char tempL=0; /临时变量低位unsigned char tempH=0; /临时变量高位

11、float temperature; /温度值float temperature2;/*函数功能:延时子程序入口参数:k出口参数:*/void delay(unsigned int k)unsigned int n;n=0;while(n < k)n+;return;/*函数功能:数码管扫描延时子程序入口参数:出口参数:*/void delay1(void)int k;for(k=0;k<100;k+);/*函数功能:数码管显示子程序入口参数:k出口参数:*/void display(int k)P0=0xff;P2=0xff; /1111 1111delay1();P2=0xfe

12、;/1111 1110P0=tabk/100; /十位在第一位数码管delay1();P0=0xff;P2=0xff;/1111 1110delay1();P2=0xfd; /1111 1101P0=tab1k%100/10;delay1();P0=0xff;P2=0xff;/1111 1110delay1();/个位在第二位数码管/P0=0x7f; /显示小数点/delay1();/delay1();/ P2=0xff;/1111 1110/delay1();P2=0xfb; /1111 1011P0=tabk%100%10; /小数位在第三个数码管delay1();P0=0xff;P2=0

13、xff;/1111 1110delay1();P2=0xf7;P0=0xc6; /第四位数码管显示Cdelay1();P0=0xff;P2=0xff; /1111 1111delay1();函数功能:DS18B20初始化子程序入口参数:出口参数:*/Init_DS18B20(void)unsigned char x=0;DQ=1; /DQ先置高delay(8); /延时DQ=0; /发送复位脉冲delay(85); /延时(>480ms)DQ=1; /拉高数据线delay(14); /等待(1560ms)/*函数功能:向DS18B20读一字节数据入口参数:出口参数:dat*/ReadOn

14、eChar(void)unsigned char i=0;unsigned char dat=0;for (i=8;i>0;i-)DQ=1;delay(1);DQ=0;dat>>=1;DQ=1;if(DQ)dat|=0x80;delay(4);return(dat);/*函数功能:向DS18B20写一字节数据入口参数:dat出口参数:*/WriteOneChar(unsigned char dat)unsigned char i=0;for(i=8;i>0;i-)DQ=0;DQ=dat&0x01;delay(5);DQ=1;dat>>=1;delay

15、(4);/*函数功能:向DS18B20读温度值入口参数:出口参数:temperature*/ReadTemperature(void)Init_DS18B20(); /初始化WriteOneChar(0xcc); /跳过读序列号的操作WriteOneChar(0x44); /启动温度转换delay(125); /转换需要一点时间,延时Init_DS18B20(); /初始化WriteOneChar(0xcc); /跳过读序列号的操作WriteOneChar(0xbe); /读温度寄存器(头两个值分别为温度的低位和高位)tempL=ReadOneChar(); /读出温度的低位LSBtempH=

16、ReadOneChar(); /读出温度的高位MSB/温度转换,把高低位做相应的运算转化为实际温度temperature=(tempH*256)+tempL)*0.0625;/*加*/temperature2=temperature*10+0.5;temperature=temperature2;/*加*/delay(200);return(temperature);/*函数功能:主程序入口参数:出口参数:*/void main()float i;while(1)i=ReadTemperature();display(i);七、画出电路原理图及PCB图电路原理图: PCB图:实物图: 八、产品

17、的制作及调试产品的制作具体步骤如下:在网上收集相关芯片的数据以及典型电路,为设计原理图和PCB图做准备。1、 用软件Altium Designer完成电路原理图制作,包括元件,封装的,以及寻找元件库,封装库。2、 利用软件Altium Designer导入原理图的元器件,并根据原理图进行人工布局布线,布线的线宽以20mil为基准,电源线用30mil.3、 转印。利用Altium Designer导出PCB图的pdf文件,通过打印机在热敏纸上打印出PCB图,用砂纸打磨铜板,去除铜表面的氧化层。然后将印有电路图的一面热转印纸与铜板压紧并剪去多余的热转印纸,进行五到六次遍不间断的来回加热,通过在高温

18、下将铜版纸上的电路图墨迹粘到铜板上,再检查线路是否清晰,是否联通,用油性马克笔在墨迹不清晰和断路的地方修补并加粗。4、 制版。首先用水壶把自来水加热,然后用腐蚀药粉与水按一定比例倒入水盆中,调制腐蚀液,水的量以浸没覆铜板为准,腐蚀粉大约四分之一包,然后将敷铜板放入其中,并不断地摇晃盆子加快反应速率。5、 打孔。利用钻孔机进行打孔。放置底座的孔要尽量对齐,可以在打孔前画一条直线,若孔口不足放入底座(元器件),则应该换一个大一点的钻头重新钻一遍。6、 将元器件焊接到相应位置,并用万用表检查是否出现断路、短路的情况。若出现断路,则应该重新焊上;若出现短路,则应该用电烙铁沾上松香使其断路。7、 利用k

19、eil uvision软件进行单片机程序编辑,然后将程序下载到单片机中。8、 测试,下载程序至单片机之后,对电路板进行测试工作(对电路板通入5V稳定电压,观察当前室温是否与显示对应。利用电烙铁靠近温度感应器加热,观察数码管显示变化,记录拍照)。九、实验结果及展示常温下用电烙铁靠近加热,每提高5记录数据一次温度计可以在50内正常运行十、实验感想从第十周开始上课开题布置设计任务,在十一周和十二周进行设计相关资料的收集,初步完成电路原理图的设计,到十三周将原理图转化为PCB图,将PCB图导出PDF文件,然后转印PCB图,腐蚀覆铜板并打孔,最后将元器件焊入电路板上并烧入程序测试成功。在这三个星期中也遇

20、到了挺多问题,比如,在设计PCB图自动布线线路太过曲折密集,无法满足实际要求,需要人为布线使之符合要求;在第一次把底座管脚无法顺利插入电路板中,后来才知道底座的孔口需要大一些,换上大一些的钻头重新打钻;再例如数码管只显示8888,无法正常工作,一步一步排查问题,检查电路图是否短路断路,元件是否烧坏,检查代码,最后发现是连接单片机VCC的管脚与电源正极管脚之间断路了。中间也有些问题反复出现,混淆了问题出处。万幸最后终于解决了问题。通过这次课程设计,更加加深了对PCB图的制作过程,也学到了制板的整个过程,也学会了如何运用网上的芯片手册进行原理图的设计。在完成每一步的过程中也感受到了课程设计带来的快乐,通过设计出的三位半温度计,提升了实验实践能力,培养了独立思考、动手操作的能力,在各种其它能力上也都有了提高。*;

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1