数字温度计设计说明书

合集下载

数字温度计说明书

数字温度计说明书

单片机课程设计题目:数字温度计院别:机电学院专业:机械电子工程班级:姓名:学号:指导教师:二〇一三年十二月二十一日摘要本设计即用单片机对温度进行实时检测与控制,本文所介绍的数字温度计与传统的温度计相比,具有读数方便,测温范围广,测温准确,其输出温度采用数字显示,主要用于对测温比较准确的场所,或科研实验室使用,本次课程设计采用51单片机以及锁存器74HC573N、四位共阴数码管、DS18B20温度传感器、蜂鸣器、三极管等组成的自动过温报警器,该过温报警器测温准确,使用方便,显示清晰,最高精度可达到0.0625度,最长温度转换时间不到1秒,应用范围广泛。

用四位共阴数码管实现温度显示,能准确达到设计要求。

本温度计属于多功能温度计,功能较强,可以设置上下限报警温度,且测量准确、误差小。

当测量温度超过设定的温度上下限时,启动蜂鸣器和指示灯报警。

关键词过温报警;锁存器;单片机;温度传感器目录前言 (1)一.本次课程设计实践的目的和意义 (2)二.设计任务和要求 (2)2.1 设计题目 (2)2.2 主要技术性能指标 (2)2.3 功能及作用 (2)三. 系统总体方案及硬件设计 (2)3.1查阅相关资料后有以下两个方案可供选择 (2)3.2元件采购 (3)3.3系统总体设计 (3)四.接口电路设计 (6)4.1模块简介 (6)4.2 主控制器 (6)4.3 显示电路 (7)4.4温度传感器 (7)4.5温度报警电路 (9)五. 系统软件算法分析 (10)5.1主程序流程图 (10)5.2读出温度子程序 (11)5.3温度转换命令子程序 (11)5.4 计算温度子程序 (12)5.5 显示数据刷新子程序 (12)5.6按键扫描处理子程序 (13)六. 电路仿真 (14)七.焊接好的电路实体图 (15)八.检查与调试 (16)九.作品的使用 (16)十.设计心得 (20)参考文献 (20)附录 (21)前言温度是工业对象中主要的被控参数之一,如冶金、机械、食品、化工各类工业生产中,广泛使用的各种加热炉、热处理炉、反应炉等,对工件的温度处理要求严格控制。

数字温度计的设计说明

数字温度计的设计说明

数字温度计的设计说明实验六数字温度计的设计⼀、设计⽬的通过电⼦技术的综合设计,熟悉⼀般电⼦电路综合设计过程、设计要求、应完成的⼯作容和具体的设计⽅法。

通过设计有助于复习、巩固以往的学习容,达到灵活应⽤的⽬的。

设计完成后在实验室进⾏⾃⾏安装、调试,从⽽加强学⽣的动⼿能⼒。

在该过程中培养从事设计⼯作的整体概念。

⼆、设计要求1、利⽤所学的知识,通过上⽹或到图书馆查阅资料,完成数字温度计的设计;要求写出实验原理,画出原理功能框图,描述其功能。

2、需采⽤单⽚机STC15W404AS、NTC热敏电阻、共阳数码管等元器件进⾏设计,试确定设计⽅案详细⼯作原理,计算出参数。

3、技术指标:1)温度围: 0 --- +100℃; 误差≤± 2 ℃;2)选择设计⽅案;3)根据设计⽅案分析设计原理及写出详细的硬件电路设计过程;⽅案概要本设计是利⽤NTC热敏电阻MF52E-10K(B=3950)1%精度,作为温度传感器,其输出的信号通过STC15W404AS部AD进⾏模数转换,然后STC15W404AS对该温度数据进⾏处理,并由⼀个4位⼀体共阳数码管显⽰显⽰温度值。

实验报告要求原理、计算等)1、根据设计要求确定数字温度计⽅案,并完成电路设计,分别说明设计⽅案、电路⼯作原理:2、完成电路连接并进⾏数字温度计测试:参考设计电路图1 参考电路图表1元器件清单图2 参考电路图表2元器件清单图3 数码管引脚图参考程序:******************************************/#define MAIN_Fosc 22118400L //定义主时钟#include "STC15Fxxxx.H"/****************************** ⽤户定义宏***********************************/ #define Timer0_Reload (65536UL -(MAIN_Fosc /1000)) //Timer 0 中断频率, 1000次/秒/*****************************************************************************/#define DIS_DOT 0x20#define DIS_BLACK 16#define DIS_ 17#define AD_Cha 2 //0-4通道/************* 本地常量声明**************/u8 code t_display[]={ //标准字库共阳// 0 1 2 3 4 5 6 7 8 9 A B C D E F 0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e,0x40,0x79,0x24,0x30,0x19,0x12,0x02,0x78,0x00,0x10,0x46}; //0. 1. 2. 3. 4. 5. 6. 7. 8. 9. -1/*u8 code t_display[]={ //标准字库// 0 1 2 3 4 5 6 7 8 9 A B C D E F 0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F,0x77,0x7C,0x39,0x5E,0x79,0x71, //black - H J K L N o P U t G Q r M y0x00,0x40,0x76,0x1E,0x70,0x38,0x37,0x5C,0x73,0x3E,0x78,0x3d,0x67,0x50,0x37,0x6e,0xBF,0x86,0xDB,0xCF,0xE6,0xED,0xFD,0x87,0xFF,0xEF,0x46}; //0. 1. 2. 3. 4. 5. 6. 7. 8. 9. -1*/u8 code T_COM[]={0xEF,0xDF,0xBF,0x7F,0xEF,0xDF,0xBF,0x7F}; //位码/************* IO⼝定义**************/sbit P_HC595_SER = P4^0; //pin 14 SER data inputsbit P_HC595_RCLK = P5^4; //pin 12 RCLk store (latch) clocksbit P_HC595_SRCLK = P4^3; //pin 11 SRCLK Shift data clock/************* 本地变量声明**************/u8 LED8[8]; //显⽰缓冲u8 display_index; //显⽰位索引bit B_1ms; //1ms标志u8 offled;u16 msecond;/************* 本地函数声明**************/void Delayms(u16 dlayT);void DisplayScan(void);/**********************************************/void main(void){u8 i,k;u16 j;P0M1 = 0; P0M0 = 0; //设置为准双向⼝P1M1 = 0; P1M0 = 0; //设置为准双向⼝P2M1 = 0; P2M0 = 0; //设置为准双向⼝P3M1 = 0; P3M0 = 0; //设置为准双向⼝P4M1 = 0; P4M0 = 0; //设置为准双向⼝P5M1 = 0; P5M0 = 0; //设置为准双向⼝P6M1 = 0; P6M0 = 0; //设置为准双向⼝P7M1 = 0; P7M0 = 0; //设置为准双向⼝display_index = 4;offled = 0;P1ASF = 0x0F; //P1.0 P1.1 P1.2 P1.3做ADC ADC_CONTR = 0xE0; //90T, ADC power on CLK_DIV = CLK_DIV&0xDF; //CLK_DIV.5 ADRJ=0 AUXR = 0x80; //Timer0 set as 1T, 16 bits timer auto-reload, TH0 = (u8)(Timer0_Reload / 256); TL0 = (u8)(Timer0_Reload % 256);ET0 = 1; //Timer0 interrupt enablefor(k=11;k>0;k--){for(i=0; i<4; i++) LED8[i] = k-1; //上电消隐Delayms(1000);}while(1){if(B_1ms) //1ms到{B_1ms = 0;if(++msecond >= 300) //300ms到{msecond = 0;j = Get_ADC10bitResult(AD_Cha); //参数0~7,查询⽅式做⼀次ADC, 返回值就是结果, == 1024 为错误//j = 768;if(j < 1024){LED8[0] = j / 1000; //显⽰ADC值LED8[1] = (j % 1000) / 100;if(LED8[0] == 0) LED8[0] = 16;}else //错误{for(i=0; i<4; i++) LED8[i] = 14;}j = Get_ADC10bitResult(3); //参数0~7,查询⽅式做⼀次ADC, 返回值就是结果,== 1024 为错误j += Get_ADC10bitResult(3);j += Get_ADC10bitResult(3);j += Get_ADC10bitResult(3);if(j < 1024*4){LED8[0] = j / 1000; //显⽰ADC值LED8[1] = (j % 1000) / 100;LED8[2] = (j % 100) / 10;LED8[3] = j % 10;if(LED8[0] == 0) LED8[0] = DIS_BLACK;j = get_temperature(j); //计算温度值LED8[4] = j / 1000; //显⽰温度值LED8[5] = (j % 1000) / 100;LED8[6] = (j % 100) / 10 + DIS_DOT;LED8[7] = j % 10;if(LED8[4] == 0) LED8[4] = DIS_BLACK;if(F0) LED8[4] = DIS_; //显⽰-}else //错误{for(i=0; i<8; i++) LED8[i] = DIS_;}}}}}/**********************************************///======================================================================== // 函数: u16 Get_ADC10bitResult(u8 channel)// 描述: 查询法读⼀次ADC结果.// 参数: channel: 选择要转换的ADC.// 返回: 10位ADC结果.// 版本: V1.0, 2012-10-22//======================================================================== u16 Get_ADC10bitResult(u8 channel) //channel = 0~7ADC_RESL = 0;ADC_CONTR = (ADC_CONTR & 0xe0) | 0x08 | channel; //start the ADCNOP(4);while((ADC_CONTR & 0x10) == 0) ; //wait for ADC finish ADC_CONTR &= ~0x10; //清除ADC结束标志return (((u16)ADC_RES << 2) | (ADC_RESL & 3));}// MF52E 10K at 25, B = 3950, ADC = 12 bitsu16 code temp_table[]={140, //;-40 0149, //;-39 1159, //;-38 2168, //;-37 3178, //;-36 4188, //;-35 5199, //;-34 6210, //;-33 7222, //;-32 8233, //;-31 9246, //;-30 10259, //;-29 11272, //;-28 12286, //;-27 13367, //;-22 18 385, //;-21 19 403, //;-20 20 423, //;-19 21 443, //;-18 22 464, //;-17 23 486, //;-16 24 509, //;-15 25 533, //;-14 26 558, //;-13 27 583, //;-12 28 610, //;-11 29 638, //;-10 30 667, //;-9 31 696, //;-8 32 727, //;-7 33 758, //;-6 34 791, //;-5 35 824, //;-4 36 858, //;-3 37 893, //;-2 38 929, //;-1 39 965, //;0 40 1003, //;1 41 1041, //;2 421243, //;7 47 1285, //;8 48 1328, //;9 49 1371, //;10 50 1414, //;11 51 1459, //;12 52 1503, //;13 53 1548, //;14 54 1593, //;15 55 1638, //;16 56 1684, //;17 57 1730, //;18 58 1775, //;19 59 1821, //;20 60 1867, //;21 61 1912, //;22 62 1958, //;23 63 2003, //;24 64 2048, //;25 65 2093, //;26 66 2137, //;27 67 2182, //;28 68 2225, //;29 69 2269, //;30 70 2312, //;31 712519, //;36 76 2559, //;37 77 2598, //;38 78 2637, //;39 79 2675, //;40 80 2712, //;41 81 2748, //;42 82 2784, //;43 83 2819, //;44 84 2853, //;45 85 2887, //;46 86 2920, //;47 87 2952, //;48 88 2984, //;49 89 3014, //;50 90 3044, //;51 91 3073, //;52 92 3102, //;53 93 3130, //;54 94 3157, //;55 95 3183, //;56 96 3209, //;57 97 3234, //;58 98 3259, //;59 99 3283, //;60 1003393, //;65 105 3413, //;66 106 3432, //;67 107 3452, //;68 108 3470, //;69 109 3488, //;70 110 3506, //;71 111 3523, //;72 112 3539, //;73 113 3555, //;74 114 3571, //;75 115 3586, //;76 116 3601, //;77 117 3615, //;78 118 3628, //;79 119 3642, //;80 120 3655, //;81 121 3667, //;82 122 3679, //;83 123 3691, //;84 124 3702, //;85 125 3714, //;86 126 3724, //;87 127 3735, //;88 128 3745, //;89 1293791, //;94 134 3799, //;95 135 3807, //;96 136 3815, //;97 137 3822, //;98 138 3830, //;99 139 3837, //;100 140 3844, //;101141 3850, //;102 142 3857, //;103 143 3863, //;104 144 3869, //;105 145 3875, //;106 146 3881, //;107 147 3887, //;108 148 3892, //;109 149 3897, //;110 150 3902, //;111 151 3907, //;112 152 3912, //;113 153 3917, //;114 154 3921, //;115 155 3926, //;116 156 3930, //;117 157 3934, //;118 158};/******************** 计算温度***********************************************/ // 计算结果: 0对应-40.0度, 400对应0度, 625对应25.0度,最⼤1600对应120.0度.// 为了通⽤, ADC输⼊为12bit的ADC值.// 电路和软件算法设计: Coody/**********************************************/#define D_SCALE 10 //结果放⼤倍数, 放⼤10倍就是保留⼀位⼩数u16 get_temperature(u16 adc){u16 code *p;u16 i;u8 j,k,min,max;adc = 4096 - adc; //Rt接地p = temp_table;if(adc < p[0]) return (0xfffe);if(adc > p[160]) return (0xffff);min = 0; //-40度max = 160; //120度for(j=0; j<5; j++) //对分查表{k = min / 2 + max / 2;if(adc <= p[k]) m ax = k;if(adc == p[min]) i = min * D_SCALE;else if(adc == p[max]) i = max * D_SCALE;else // min < temp < max{while(min <= max){min++;if(adc == p[min]) {i = min * D_SCALE; break;}else if(adc < p[min]){min--;i = p[min]; //minj = (adc - i) * D_SCALE / (p[min+1] - i);i = min;i *= D_SCALE;i += j;break;}}}return i;}void Delayms(u16 dlayT){u16 i,j;。

单片机数字式温度计设计说明书(附带源程序)

单片机数字式温度计设计说明书(附带源程序)

附件1:学号:0121218700312课程设计题目数字式温度计学院物流工程学院专业物流工程班级姓名指导教师2015年1月18日附件2:课程设计任务书学生姓名:专业班级:指导教师:工作单位:题目: 数字式温度计设计初始条件:1、设计与仿真软件:Keil uVision 和Proteus要求完成的主要任务:(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求)1.18B20 设计一款能够显示当前温度值的温度计;2. 切换按钮可以切换华氏度和摄氏度显示;3.其他功能时间安排:2015年1月4 - 5日选择题目,布置任务2015年1月6 - 8日功能分析,硬件设计及修改2015年1月9 -13日软件设计与编程2015年1月14-18日调试并修改硬件组成2015年1月19-20日编写任务说明书2015年1月21-22日确认提交版、答辩指导教师签名:年月日系主任(或责任教师)签名:年月日附件6:本科生课程设计成绩评定表指导教师签字:年月日目录1 设计任务 (2)2设计方案 (3)2.1 任务分析 (3)2.2 方案设计 (3)3系统硬件设计 (5)3.1时钟电路设计 (5)3.2复位电路设计 (5)3.3 1602控制电路 (5)3.4 DS18B20通信电路,开关电路设计 (6)3.5系统原理图 (7)4系统软件设计 (8)4.1 1ms定时 (8)4.2 DS18B20初始化程序 (8)4.3对DS1802写一个字节的数据 (8)4.4 1602的操作程序 (8)4.5温度测算及转换程序 (10)5仿真与性能分析 (11)5.1系统仿真过程 (11)5.2系统性能分析 (11)6.小结与展望 (13)参考文献 (14)附录1 元件清单 (15)附录2 系统程序 (16)数字式温度计的设计摘要温度是一种最基本的环境参数,人民的生活、生产与环境的温度息息相关。

在工业生产过程中需要实时测量温度,在农业生产中也离不开温度的测量,因此研究温度的测量方法和装置也有重要的意义。

课程设计任务书数字温度计设计

课程设计任务书数字温度计设计

中北大学课 程 设 计 说 明 书学生姓名: 学 专 题 院: 业: 目:学 号:信息与通信工程学院 电子信息科学与技术 数字温度计设计指导教师: 指导教师:张志伟职称: 职称:教授2012 年 01 月 06 日中北大学课程设计任务书2011/2012 学年第 1 学期学 专院: 业:信息与通信工程学院 电子信息科学与技术 学 号: 电子电路综合实践 数字温度计设计学 生 姓 名: 课程设计题目:起 迄 日 期: 课程设计地点: 指 导 教 师: 系 主 任:2011 年 12 月 26 日~2012 年 1 月 6 日5 院楼 513、606 张志伟、王伟 程耀瑜下达任务书日期:2011 年 12 月 26 日课 程 设 计 任 务 书1.设计目的:针对电子线路课程要求,对设计者进行实用型电子线路设计、仿真测试等各环节的 综合性训练,培养设计者运用课程中所学的理论与实践紧密结合,独立地解决实际问题 的能力。

设计者必须独立完成一个选题的设计任务。

2.设计内容和要求(包括原始数据、技术参数、条件、设计要求等) :设计内容: 设计一数字式温度计,即用数字显示被测温度。

1.技术指标: 1) 测量范围:-50 度—150 度; 2) 测量精度 0.1 度; 3) 4 位 LED 数码管显示; 2.设计要求: 数字式温度计不仅读数方便,而且测量精确。

1)给出计算参数、总体设计电路; 2)画出完整电路图,写出设计总结报告。

3.设计工作任务及工作量的要求〔包括课程设计计算说明书(论文)、图纸、 实物样品等〕 :1 电路原理图; 2 器件的工作原理和应用,仿真结果; 3 课程设计说明书; 4 PROTEL 应用的基本知识。

课 程 设 计 任 务 书4.主要参考文献:要求按国标 GB 7714—87《文后参考文献著录规则》书写,例: 1 傅承义,陈运泰,祁贵中.地球物理学基础.北京:科学出版社,1985(5 篇以上)5.设计成果形式及要求:1 电路原理图; 2 课程设计说明书。

数字温度计设计说明书

数字温度计设计说明书

目录1数字温度计简介 (1)2系统方案设计 (1)2.1方案的选择 (1)2.2电路设计过程 (2)3设计中用到的芯片介绍 (3)3.1温度传感器LM35 (3)3.1.1LM35的特性 (3)3.1.2LM35的引脚与封装 (4)3.1.3LM35的典型运用 (5)3.1.5LM35的使用要点 (5)3.2芯片ICL7101介绍 (6)3.2.1ICL7107转化器原理 (7)3.2.2ICL7107的引脚及个引脚功能 (8)3.2.3ICL7107的典型运用电路 (9)3.3电压比较器LM393 (9)3.4七段数码管 (10)4电路设计图及电路仿真 (12)4.1各模块设计图 (12)4.2电路总设计图 (13)4.3电路的仿真 (14)5实物的测试 (16)5.1实物图 (16)5.2测试结果 (17)6仿真软件proteus简介 (18)7心得体会 (22)8参考文献 (23)本科生课程设计成绩鉴定表 (24)摘要数字温度计是一种电子产品,由温感元件来识别温度,既将温度信号转化为模拟的电信号。

再经过数模转换为数字的电信号,最后经编码显示在数码管上,或者液晶屏上。

本文介绍基于LM35与ICL7107制作的数字温度计方法、原理以及电路工艺、并给出完整的电路。

该电路具有高精度,高稳定性,低温漂,低功耗的优点,且价格低廉,使用方便,是传统的水银温度计,金属温度计的理想替代品,广泛应用于工业、农业、医疗器械等领域的温度探测。

也在本文中详细介绍了各电路的工作模块及相应的芯片。

关键字:温度计 LM35 ICL7107 电路模块AbstractDigital thermometer is a kind of electronic products, feeling components to identify temperature by temperature, both the temperature signal into analog signals. After analog-to-digital conversion to digital electrical signals, finally the encoded in the digital tube display, or LCD screen.In this paper, the digital thermometer based on LM35 and ICL7107 production method, principle and circuit process, and complete circuit is given. The circuit has a high precision, high stability, low temperature drift, the advantages of low power consumption, and low cost, easy to use, is one of the traditional mercury thermometer, metal thermometer ideal substitutes, are widely used in industry, agriculture, medical apparatus and instruments in areas such as temperature detection. In this article also introduced the work of each circuit module and the corresponding chip.Key words: the thermometer LM35 ICL7107 circuit module1数字温度计简介数显温度计可以准确的判断和测量温度,以数字显示,而非指针或水银显示。

TR-10数字温度计使用说明书

TR-10数字温度计使用说明书

TR-10数字(shùzì)温度计使用说明书TR-10数字(shùzì)温度计使用说明书TR-10便携式记录(jìlù)型测温仪使用说明一,概述(ɡài shù):TR-10是一款具备数据记录(jìlù)功能的温度测量仪表,仪表可记录100个温度点和时间,摄氏华氏转换,超温报警等功能。

广泛应用于暖通制冷维修、食品、宠物等行业。

二,技术参数:1、温度传感器:NTC K=103,B=34352、测温范围(fànwéi):-40℃~+110℃,3、测温精度(jīnɡ dù):±1℃(-20℃~+80℃),±2℃(-40℃~-20℃,+80℃~+110℃)4、记录点数:100个,5、采样周期:记录状态下为间隔时间,非记录状态下为10S6、显示未定要求—电磁兼容测试:(1)EFT干扰测试>2级(2)ESD测试>2级7、时间:2009年1月1日—2099年12月31日产品出厂参数值:日期为09 01 01,时间为12:00 00间隔时间为001,(1分钟)上限温度值都为:000.0度下限温度值都为:000.0度三,产品示意图:正面图片:要求有液晶屏全部显示,以及能看清(kàn qīnɡ)按键上的字。

背面图片:要求说明有背面各个部分的功能,及按键的图片,必要时增加局部(júbù)放大的图片液晶屏显示(xiǎnshì)的说明:说明(shuōmíng)液晶屏各部分显示代表的参数四,按键操作(cāozuò)说明:按键使用(shǐyòng)模式说明:按一下按键立即抬起为“时间(shíjiān)按”,按住按键(àn jiàn)查过五秒后抬起为“长时间按”前置按键的使用说明:Record:功能一:开启和关闭记录功能功能二:在记录过程中或记录完成后,按此键可以查看温度记录点的参数。

数字温度计课程设计报告书

数字温度计课程设计报告书

H a r b i n I n s t i t u t e o f T e c h n o l o g y课程设计说明书(论文)课程名称:课程设计І设计题目:数字温度计的设计院系:电子与信息工程学院班级:设计者:学号:指导教师:设计时间:2011年4月15日至2011年6月6日哈尔滨工业大学2011年4月15日星期五哈尔滨工业大学课程设计任务书姓名:院(系):专业:班号:任务起至日期:2011年4 月15 日至2011 年6月5日课程设计题目:数字温度计的设计已知技术参数和设计要求:根据给定主要功能要求和主要元器件,设计一个完整的数字温度计。

(1) 自制稳压电源(2) 被测温度的范围在0至200°C(3) 用4位数码管显示温度值工作量:1.查找资料2.设计论证方案3.具体各个电路选择、元器件选择和数值计算4.具体说明各部分电路图的工作原理5.绘制电路原理图6.绘制印刷电路图7.元器件列表8.编写调试操作9.打印论文工作计划安排:1.查找资料、设计论证方案具体各个电路选择、元器件选择和数值计算绘制电路原理图一周2.绘制印刷电路图、元器件列表一周3.编写调试操作、打印论文一周同组设计者及分工:每人一组单独完成指导教师签字___________________2011年4月13日教研室主任意见:教研室主任签字___________________2011年4月13日*注:此任务书由课程设计指导教师填写。

一、任务技术指标主要内容:设计一个数字温度计,测量范围:0~200 O C。

温度的实时LED数字显示。

测量温度信号为模拟量。

基本要求:1.画出数字温度计的结构框图。

2.画出系统原理图、印制版图与仿真图。

3.计算所需器件数值,列写元器件清单4.进行调试操作5.按要求完成课程设计报告,打印报告二、总体设计思想1.基本原理温度的测量,在工业生产的过程和科研工作中都非常重要。

数字式温度测量的特点是采用数码管直接显示出被测温度值,这种数字显示不仅直观,测量精度高而且便于进行自动控制。

基于AT89S52的数字温度计设计说明

基于AT89S52的数字温度计设计说明

基于AT89S52的数字温度计设计说明一、设计背景温度计是指可以测量并显示环境温度值的仪器。

数字温度计是将温度转换为数字信号,再通过数码管显示温度值的一种温度计。

随着微处理器技术的不断发展,数字温度计也不断得到改进,成为了一种重要的电子测量仪器。

本设计基于AT89S52单片机,设计一款简单的数字温度计。

二、设计方案本设计方案采用DS18B20数字温度传感器作为温度检测器件,通过AT89S52单片机进行信号处理,并将温度值显示在四位数码管上。

具体方案如下:1. 电路连接将DS18B20数字温度传感器的VCC引脚连接到单片机的5V供电端口,GND引脚连接到单片机的GND端口,DQ引脚连接到单片机的P2.0口。

将四位共阳数码管的COM1-COM4引脚连接到单片机的P1.0-P1.3口,a-g引脚连接到单片机的P0.0-P0.6口。

2. 软件设计主程序通过定时器产生1s的时间基准,读取DS18B20传感器的温度值,将温度值转化为数码管可以显示的温度值,并将温度值显示在数码管上。

主程序具体运作流程如下:(1)初始化定时器,设定时间基准为1s。

(2)初始化DS18B20传感器,进行一次温度检测。

(3)将读取到的温度值存入RAM中。

(4)将温度值转化为数码管可以显示的温度值,并存入RAM中。

(5)将数码管显示温度值。

(6)等待1s后,再进行温度检测,重复执行。

三、应用领域数字温度计是一种广泛应用于家庭、实验室、工厂、疾病诊断等领域的电子测量仪器。

本设计采用的AT89S52单片机和DS18B20数字温度传感器成本较低,制作简单,可以在生活中进行自制,具有一定的实用价值。

单片机数字式温度计设计说明书(附带源程序)

单片机数字式温度计设计说明书(附带源程序)

附件1:课程设计题目数字式温度计学院物流工程学院专业物流工程班级姓名指导教师2015年1月18日附件2:课程设计任务书学生姓名:专业班级:指导教师:工作单位:题目: 数字式温度计设计初始条件:1、设计与仿真软件:Keil uVision 和Proteus要求完成的主要任务:(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求)1。

18B20 设计一款能够显示当前温度值的温度计;2. 切换按钮可以切换华氏度和摄氏度显示;3。

其他功能时间安排:2015年1月4 - 5日选择题目,布置任务2015年1月6 — 8日功能分析,硬件设计及修改2015年1月9 -13日软件设计与编程2015年1月14-18日调试并修改硬件组成2015年1月19-20日编写任务说明书2015年1月21-22日确认提交版、答辩指导教师签名: 年月日系主任(或责任教师)签名:年月日附件6:本科生课程设计成绩评定表指导教师:年月日目录1 设计任务 (2)2设计方案 (3)2.1 任务分析 (3)2.2 方案设计 (3)3系统硬件设计 (5)3.1时钟电路设计 (5)3.2复位电路设计 (5)3.3 1602控制电路 (5)3.4 DS18B20通信电路,开关电路设计 (6)3.5系统原理图 (7)4系统软件设计 (8)4.1 1ms定时 (8)4.2 DS18B20初始化程序 (8)4.3对DS1802写一个字节的数据 (8)4.4 1602的操作程序 (8)4.5温度测算及转换程序 (10)5仿真与性能分析 (11)5.1系统仿真过程 (11)5.2系统性能分析 (11)6.小结与展望 (13)参考文献 (14)附录1 元件清单 (15)附录2 系统程序 (16)数字式温度计的设计摘要温度是一种最基本的环境参数,人民的生活、生产与环境的温度息息相关。

在工业生产过程中需要实时测量温度,在农业生产中也离不开温度的测量,因此研究温度的测量方法和装置也有重要的意义。

数字温度计的设计说明

数字温度计的设计说明

实验六数字温度计的设计一、设计目的通过电子技术的综合设计,熟悉一般电子电路综合设计过程、设计要求、应完成的工作容和具体的设计方法。

通过设计有助于复习、巩固以往的学习容,达到灵活应用的目的。

设计完成后在实验室进行自行安装、调试,从而加强学生的动手能力。

在该过程中培养从事设计工作的整体概念。

二、设计要求1、利用所学的知识,通过上网或到图书馆查阅资料,完成数字温度计的设计;要求写出实验原理,画出原理功能框图,描述其功能。

2、需采用单片机STC15W404AS、NTC热敏电阻、共阳数码管等元器件进行设计,试确定设计方案详细工作原理,计算出参数。

3、技术指标:1)温度围: 0 --- +100℃; 误差≤± 2 ℃;2)选择设计方案;3)根据设计方案分析设计原理及写出详细的硬件电路设计过程;方案概要本设计是利用NTC热敏电阻MF52E-10K(B=3950)1%精度,作为温度传感器,其输出的信号通过STC15W404AS部AD进行模数转换,然后STC15W404AS对该温度数据进行处理,并由一个4位一体共阳数码管显示显示温度值。

实验报告要求原理、计算等)1、根据设计要求确定数字温度计方案,并完成电路设计,分别说明设计方案、电路工作原理:2、完成电路连接并进行数字温度计测试:参考设计电路图1 参考电路图表1元器件清单图2 参考电路图表2元器件清单图3 数码管引脚图参考程序:******************************************/#define MAIN_Fosc 22118400L //定义主时钟#include "STC15Fxxxx.H"/****************************** 用户定义宏***********************************/#define Timer0_Reload (65536UL -(MAIN_Fosc / 1000)) //Timer 0 中断频率, 1000次/秒/*****************************************************************************/#define DIS_DOT 0x20#define DIS_BLACK 16#define DIS_ 17#define AD_Cha 2 //0-4通道/************* 本地常量声明**************/u8 code t_display[]={ //标准字库共阳// 0 1 2 3 4 5 6 7 8 9 A B C D E F 0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e,//black - H J K L N o P U t G Q r M y 0xff,0xBF,0x76,0x1E,0x70,0x38,0x37,0x5C,0x73,0x3E,0x78,0x3d,0x67,0x50,0x37,0x6e,0x40,0x79,0x24,0x30,0x19,0x12,0x02,0x78,0x00,0x10,0x46}; //0. 1. 2. 3. 4. 5. 6. 7. 8. 9. -1/*u8 code t_display[]={ //标准字库// 0 1 2 3 4 5 6 7 8 9 A B C D E F 0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F,0x77,0x7C,0x39,0x5E,0x79,0x71,//black - H J K L N o P U t G Q r M y 0x00,0x40,0x76,0x1E,0x70,0x38,0x37,0x5C,0x73,0x3E,0x78,0x3d,0x67,0x50,0x37,0x6e, 0xBF,0x86,0xDB,0xCF,0xE6,0xED,0xFD,0x87,0xFF,0xEF,0x46}; //0. 1. 2. 3. 4. 5. 6. 7. 8. 9. -1*/u8 code T_COM[]={0xEF,0xDF,0xBF,0x7F,0xEF,0xDF,0xBF,0x7F}; //位码/************* IO口定义**************/sbit P_HC595_SER = P4^0; //pin 14 SER data inputsbit P_HC595_RCLK = P5^4; //pin 12 RCLk store (latch) clocksbit P_HC595_SRCLK = P4^3; //pin 11 SRCLK Shift data clock/************* 本地变量声明**************/u8 LED8[8]; //显示缓冲u8 display_index; //显示位索引bit B_1ms; //1ms标志u8 offled;u16 msecond;/************* 本地函数声明**************/u16 get_temperature(u16 adc);u16 Get_ADC10bitResult(u8 channel); //channel = 0~7void Delayms(u16 dlayT);void DisplayScan(void);/**********************************************/void main(void){u8 i,k;u16 j;P0M1 = 0; P0M0 = 0; //设置为准双向口P1M1 = 0; P1M0 = 0; //设置为准双向口P2M1 = 0; P2M0 = 0; //设置为准双向口P3M1 = 0; P3M0 = 0; //设置为准双向口P4M1 = 0; P4M0 = 0; //设置为准双向口P5M1 = 0; P5M0 = 0; //设置为准双向口P6M1 = 0; P6M0 = 0; //设置为准双向口P7M1 = 0; P7M0 = 0; //设置为准双向口display_index = 4;offled = 0;P1ASF = 0x0F; //P1.0 P1.1 P1.2 P1.3做ADC ADC_CONTR = 0xE0; //90T, ADC power on CLK_DIV = CLK_DIV&0xDF; //CLK_DIV.5 ADRJ=0 AUXR = 0x80; //Timer0 set as 1T, 16 bits timer auto-reload, TH0 = (u8)(Timer0_Reload / 256);TL0 = (u8)(Timer0_Reload % 256);ET0 = 1; //Timer0 interrupt enableTR0 = 1; //Tiner0 runEA = 1; //打开总中断for(k=11;k>0;k--){for(i=0; i<4; i++) LED8[i] = k-1; //上电消隐Delayms(1000);}while(1){if(B_1ms) //1ms到{B_1ms = 0;if(++msecond >= 300) //300ms到{msecond = 0;j = Get_ADC10bitResult(AD_Cha); //参数0~7,查询方式做一次ADC, 返回值就是结果, == 1024 为错误//j = 768;if(j < 1024){LED8[0] = j / 1000; //显示ADC值LED8[1] = (j % 1000) / 100;LED8[2] = (j % 100) / 10;LED8[3] = j % 10;if(LED8[0] == 0) LED8[0] = 16;}else //错误{for(i=0; i<4; i++) LED8[i] = 14;}j = Get_ADC10bitResult(3); //参数0~7,查询方式做一次ADC, 返回值就是结果,== 1024 为错误j += Get_ADC10bitResult(3);j += Get_ADC10bitResult(3);j += Get_ADC10bitResult(3);if(j < 1024*4){LED8[0] = j / 1000; //显示ADC值LED8[1] = (j % 1000) / 100;LED8[2] = (j % 100) / 10;LED8[3] = j % 10;if(LED8[0] == 0) LED8[0] = DIS_BLACK;j = get_temperature(j); //计算温度值if(j >= 400) F0 = 0, j -= 400; //温度>= 0度else F0 = 1, j = 400 - j; //温度< 0度LED8[4] = j / 1000; //显示温度值LED8[5] = (j % 1000) / 100;LED8[6] = (j % 100) / 10 + DIS_DOT;LED8[7] = j % 10;if(LED8[4] == 0) LED8[4] = DIS_BLACK;if(F0) LED8[4] = DIS_; //显示-}else //错误{for(i=0; i<8; i++) LED8[i] = DIS_;}}}}}/**********************************************///========================================================================// 函数: u16 Get_ADC10bitResult(u8 channel)// 描述: 查询法读一次ADC结果.// 参数: channel: 选择要转换的ADC.// 返回: 10位ADC结果.// 版本: V1.0, 2012-10-22//======================================================================== u16 Get_ADC10bitResult(u8 channel) //channel = 0~7ADC_RESL = 0;ADC_CONTR = (ADC_CONTR & 0xe0) | 0x08 | channel; //start the ADCNOP(4);while((ADC_CONTR & 0x10) == 0) ; //wait for ADC finish ADC_CONTR &= ~0x10; //清除ADC结束标志return (((u16)ADC_RES << 2) | (ADC_RESL & 3));}// MF52E 10K at 25, B = 3950, ADC = 12 bitsu16 code temp_table[]={140, //;-40 0149, //;-39 1159, //;-38 2168, //;-37 3178, //;-36 4188, //;-35 5199, //;-34 6210, //;-33 7222, //;-32 8233, //;-31 9246, //;-30 10259, //;-29 11272, //;-28 12286, //;-27 13367, //;-22 18 385, //;-21 19 403, //;-20 20 423, //;-19 21 443, //;-18 22 464, //;-17 23 486, //;-16 24 509, //;-15 25 533, //;-14 26 558, //;-13 27 583, //;-12 28 610, //;-11 29 638, //;-10 30 667, //;-9 31 696, //;-8 32 727, //;-7 33 758, //;-6 34 791, //;-5 35 824, //;-4 36 858, //;-3 37 893, //;-2 38 929, //;-1 39 965, //;0 40 1003, //;1 41 1041, //;2 421243, //;7 47 1285, //;8 48 1328, //;9 49 1371, //;10 50 1414, //;11 51 1459, //;12 52 1503, //;13 53 1548, //;14 54 1593, //;15 55 1638, //;16 56 1684, //;17 57 1730, //;18 58 1775, //;19 59 1821, //;20 60 1867, //;21 61 1912, //;22 62 1958, //;23 63 2003, //;24 64 2048, //;25 65 2093, //;26 66 2137, //;27 67 2182, //;28 68 2225, //;29 69 2269, //;30 70 2312, //;31 712519, //;36 76 2559, //;37 77 2598, //;38 78 2637, //;39 79 2675, //;40 80 2712, //;41 81 2748, //;42 82 2784, //;43 83 2819, //;44 84 2853, //;45 85 2887, //;46 86 2920, //;47 87 2952, //;48 88 2984, //;49 89 3014, //;50 90 3044, //;51 91 3073, //;52 92 3102, //;53 93 3130, //;54 94 3157, //;55 95 3183, //;56 96 3209, //;57 97 3234, //;58 98 3259, //;59 99 3283, //;60 1003393, //;65 105 3413, //;66 106 3432, //;67 107 3452, //;68 108 3470, //;69 109 3488, //;70 110 3506, //;71 111 3523, //;72 112 3539, //;73 113 3555, //;74 114 3571, //;75 115 3586, //;76 116 3601, //;77 117 3615, //;78 118 3628, //;79 119 3642, //;80 120 3655, //;81 121 3667, //;82 122 3679, //;83 123 3691, //;84 124 3702, //;85 125 3714, //;86 126 3724, //;87 127 3735, //;88 128 3745, //;89 1293791, //;94 134 3799, //;95 135 3807, //;96 136 3815, //;97 137 3822, //;98 138 3830, //;99 139 3837, //;100 140 3844, //;101 141 3850, //;102 142 3857, //;103 143 3863, //;104 144 3869, //;105 145 3875, //;106 146 3881, //;107 147 3887, //;108 148 3892, //;109 149 3897, //;110 150 3902, //;111 151 3907, //;112 152 3912, //;113 153 3917, //;114 154 3921, //;115 155 3926, //;116 156 3930, //;117 157 3934, //;118 158};/******************** 计算温度***********************************************/ // 计算结果: 0对应-40.0度, 400对应0度, 625对应25.0度, 最大1600对应120.0度.// 为了通用, ADC输入为12bit的ADC值.// 电路和软件算法设计: Coody/**********************************************/#define D_SCALE 10 //结果放大倍数, 放大10倍就是保留一位小数u16 get_temperature(u16 adc){u16 code *p;u16 i;u8 j,k,min,max;adc = 4096 - adc; //Rt接地p = temp_table;if(adc < p[0]) return (0xfffe);if(adc > p[160]) return (0xffff);min = 0; //-40度max = 160; //120度for(j=0; j<5; j++) //对分查表{k = min / 2 + max / 2;if(adc <= p[k]) m ax = k;if(adc == p[min]) i = min * D_SCALE;else if(adc == p[max]) i = max * D_SCALE;else // min < temp < max{while(min <= max){min++;if(adc == p[min]) {i = min * D_SCALE; break;}else if(adc < p[min]){min--;i = p[min]; //minj = (adc - i) * D_SCALE / (p[min+1] - i);i = min;i *= D_SCALE;i += j;break;}}}return i;}void Delayms(u16 dlayT){u16 i,j;{_nop_();}}/********************** 显示扫描函数************************/void DisplayScan(void){u8 i;for(i=0;i<10;i++){P3=0xff;P1 = 0xff;}P3 = t_display[LED8[display_index]]; //输出段码P1 = T_COM[display_index]; //输出位码if(++display_index >= 8) display_index = 4; //8位结束回0}/********************** Timer0 1ms中断函数************************/ void timer0 (void) interrupt TIMER0_VECTOR{DisplayScan();//1ms扫描显示一位B_1ms = 1; //1ms标志}附件:1 、NTC热敏电阻原理及应用2、STC15Fxxxx.H程序头文件3、STC15.pdf单片机芯片资料(a 请仔细阅读第10章STC15系列A/D转换第863页b 第7章定时器/计数器第578页)4 、stc-isp-15xx-v6.80.exe程序烧写软件5、STC-ICE-VER2-chinese.DOC烧写软件使用说明书NTC热敏电阻原理及应用NTC热敏电阻是指具有负温度系数的热敏电阻。

Apollo数字温度计说明书

Apollo数字温度计说明书

QUALITYU.E.i. is committed to providing a superior quality temperature tester and placed a strong emphasis on quality design, forward thinking innovation, and a systematic approach to product development, to ensure that we not only build a competitive thermometer line, but a superior one that creates real world solutions.EXPECTATIONSWe include customers in this process, by doing so we areable to react to industry demands and prioritize their requirements into our product’s performance helping us meet or exceed our customer’s changing expectations. We also stand behind the Apollo series with an industry leading warranty.PERFORMANCEThe Apollo Digital Thermometer™series was manufactured to conform to the I I P67standard, meeting performance expectations of water submersion and high-pressure dust resistance. This benchmark ensures the Apollo will function as expected under the most extreme working conditions.INPUT JACKS Conveniently located at the top allowing for unobstructed operation. The Apollo II calculates differential T1 from T2, while the Apollo IV offerssimultaneous differential ofT1-T2 and T3-T4.DISPLA Y The amber backlit display offers large easy-to-read digits showing all necessary information on screen with a user-friendly navigationto get to the functionsyou need quickly.PROBE STORAGE The Apollo series offers a unique solution to storing probes. Now, just wind the wires around the probes and store away in the back storage housing. This helps extend probe life and keeps them ready forthe next job.LOGGING The Apollo series offers loggingcapabilities with 9,999 memory positions, monitoring and uploading data to a computer via USB can be routine, helping to analyze systemperformance trends withthe included software.APOLLO IDT301Functions• Single Thermocouple input• Temp range -346˚ to +2192˚F (J)• Temp range -328˚ to +2498˚F (K)• Data logging• 9,999 Memory positions• USB interface (software included)• Thermocouple temperature offset• MIN, MAX, AVG & Hold• Probe Storage•Accepts J, K, T and E type probes• 5 year limited warrantySafety Compliance• IP67• Water submersion (3’ for 30 min.)• High pressure dust resistance(max depression of 20 mbar for 8 hours)•CAT 1 Overvoltage•CE CertifiedAccessories included• 1 J type probe with clip• 2 AAA batteries• Quick Start Guide• Owners Manual APOLLO IIDT302Functions• Dual Thermocouple input• Differential T1-T2• Temp range -346˚ to +2192˚F (J)• Temp range -328˚ to +2498˚F (K)• Data logging• 9,999 Memory positions• USB interface (software included)• Thermocouple temperature offset• MIN, MAX, AVG & Hold• Probe Storage•Accepts J, K, T and E type probes• 5 year limited warrantySafety Compliance• IP67• Water submersion (3’ for 30 min.)• High pressure dust resistance(max depression of 20 mbar for 8 hours)•CAT 1 Overvoltage•CE CertifiedAccessories included• 2 K type probes with lead wraps• 2 AAA batteries• Quick Start Guide• Owners ManualAPOLLO IVDT304Functions• Quad Thermocouple input• Differential T1-T2 and T3-T4• Temp range -346˚ to +2192˚F (J)• Temp range -328˚ to +2498˚F (K)• Data logging• 9,999 Memory positions• USB interface (software included)• Thermocouple temperature offset• MIN, MAX, AVG & Hold• Probe Storage•Accepts J, K, T and E type probes• 5 year limited warrantySafety Compliance• IP67• Water submersion (3’ for 30 min.)• High pressure dust resistance(max depression of 20 mbar for 8 hours)•CAT 1 Overvoltage•CE CertifiedAccessories included• 4 K type probes with lead wraps• 2 AAA batteries• Quick Start Guide• Owners ManualDimension 7.20” (H) x 3.70” (W) x 1.70” (D) Weight Approx. 16.2 ozBattery 2 x LR03 (AAA) type 1.5V Certification CE Safety IEC 1010-1 (2001), UL 3111-1 (6, 1994),EN 61010-1 (2001), CSA C22.2 No. 1010.1 (1992)CAT I Over Voltage (Installation) CATEGORY I,Pollution Degree 2 per IEC 1010-1Compliance IEC 60529: IP67 (Ingress Protection rating)Water Immersion (3’ up to 30 min) No ingress of dust (20mBar up to 8 hrs.)Accuracy is specified for ambient temperatures between 64˚F (18˚C)and 82˚F (28˚C) for a period of 1 year. The above specifications do notinclude thermocouple error.CalibrationThe Apollo Digital Thermometer’s annual calibration, starting one year after purchase, is recommended to ensure that thethermometer performs to its accuracy specifications.To calibrate the thermometer, contact your nearest UEi distributor or UEi Service Center at 1-800-547-5740.Copyright © 2008 UEi. APOLLO Digital Thermometers™ is a trademark of UEi. All Rights Reserved. Specifications are subject to change without notice.L310 PARA110.30k 0508DISTRIBUTED BY :USA 1-800-547-5740 • Fax: (503) •Email:****************CANADA 1-877-475-0648 • Vancouver Fax: (604) 278-8299 Toronto Fax: (905) 238-5117EUROPE +44 1707 375550 • Fax: +44 1707 393277PLEASE RECYCLEAPOLLO SPECIFICATIONSMeasurement Range J-Type: -346˚ to +2192˚F (-210˚ to +1200˚C)K-Type: -328˚ to +2498˚F (-200˚ to +1370˚C)T-Type: -418˚ to +752˚F (-250˚ to +400˚C)E-Type: -238˚ to +1832˚F (-150˚ to +1000˚C)Display Resolution 0.1˚F/˚C < 1000˚1.0˚F/˚C ≥ 1000˚Accuracy J, K, T, and E-Type; ±[0.1% +1.0˚F (0.5˚C)][Below -148˚F (-100˚C): add 0.2% of readingfor J, K, and E-Type; and 0.1% of reading for T-Type]Temperature 0.01% of reading 0.1˚F per ˚F(+0.05˚C per ˚C) Coefficient for <+64˚F (+18˚C) or +82˚F (+28˚C) [Below -148˚F (-100˚C): add 0.05% of reading for J, K, and E-type; and 0.1% of reading for T-type]Real TimeAbout 1 second per day Clock Tolerance Maximum Differential 1V (maximum voltage difference between Common Mode any pair of inputs)Voltage Temperature Scale ITS-90 (International Temperature Scale of 1990)Applicable Standards N.I.S.T. Monograph 175 revised to ITS-90。

数字式温度计设计说明书

数字式温度计设计说明书

学习情境三数字式温度计制作与调试说明书电子1034班组别:第四组组员:XXXXXX2012年3月8日目录一、工作任务.............................................................................................. - 3 -二、总体设计思路...................................................................................... - 3 -2.1整体功能说明 .................................................. - 3 -2.2总体框图 ...................................................... - 3 -三、硬件设计.................................................................................................. - 3 -3.1硬件模块组成 .................................................. - 3 -3.2各模块说明 .................................................... - 3 -1)主控制器......................................................................................................................... - 3 - 2)显示驱动与显示电路........................................................................................................... - 4 - 3)测温模块............................................................................................................................... - 4 - 4)报警电路............................................................................................................................... - 4 - 5)复位电路............................................................................................................................... - 5 -四、软件设计.................................................................................................. - 5 -4.1程序结构 ...................................................... - 5 -4.2各模块说明及流程图 ............................................ - 6 -1)主程序流程图 ......................................................................................................................... - 6 -2)读出温度子程序流程图....................................................................................................... - 6 - 3)显示数据刷新子程序流程图............................................................................................... - 7 - 4)计算温度子程序流程........................................................................................................... - 7 - 5)温度转换命令子程序流程图............................................................................................... - 8 -4.3程序清单 ...................................................... - 8 -五、调试过程................................................................................................ - 13 -5.1调试方法与步骤 ............................................... - 13 -5.2调试结果 ..................................................... - 13 -六、附件........................................................................................................ - 14 -一、工作任务开发完成一个简易的数字式温度计。

高精度数字温度计说明书

高精度数字温度计说明书

Dimensions: [mm]detail AScale - 1,5:1157136V12701Schematic:157136V12701157136V12701157136V12701157136V12701157136V12701157136V12701T e m p e r a t u r eT T T 157136V12701Cautions and Warnings:The following conditions apply to all goods within the product series of Optoelectronic Components of Würth Elektronik eiSos GmbH & Co. KG:General:•This optoelectronic component is designed and manufactured for use in general electronic equipment.•Würth Elektronik must be asked for written approval (following the PPAP procedure) before incorporating the components into any equipment in fields such as military, aerospace, aviation, nuclear control, submarine, transportation (automotive control, train control, ship control), transportation signal, disaster prevention, medical, public information network, etc. where higher safety and reliability are especially required and/or if there is the possibility of direct damage or human injury.•Optoelectronic components that will be used in safety-critical or high-reliability applications, should be pre-evaluated by the customer. •The optoelectronic component is designed and manufactured to be used within the datasheet specified values. If the usage and operation conditions specified in the datasheet are not met, the wire insulation may be damaged or dissolved.•Do not drop or impact the components, the component may be damaged•Würth Elektronik products are qualified according to international standards, which are listed in each product reliability report. Würth Elektronik does not warrant any customer qualified product characteristics beyond Würth Elektroniks’ specifications, for its validity and sustainability over time.•The responsibility for the applicability of the customer specific products and use in a particular customer design is always within the authority of the customer. All technical specifications for standard products also apply to customer specific products.Product specific:Soldering:•The solder profile must comply with the technical product specifications. All other profiles will void the warranty.•All other soldering methods are at the customers’ own risk.Cleaning and Washing:•Washing agents used during the production to clean the customer application might damage or change the characteristics of the optoelectronic component body, marking or plating. Washing agents may have a negative effect on the long-term functionality of the product.•Using a brush during the cleaning process may break the optoelectronic component body. Therefore, we do not recommend using a brush during the PCB cleaning process.Potting:•If the product is potted in the customer application, the potting material might shrink or expand during and after hardening. Shrinking could lead to an incomplete seal, allowing contaminants into the optoelectronic component body, pins or termination. Expansion could damage the components. We recommend a manual inspection after potting to avoid these effects.Storage Conditions:• A storage of Würth Elektronik products for longer than 12 months is not recommended. Within other effects, the terminals may suffer degradation, resulting in bad solderability. Therefore, all products shall be used within the period of 12 months based on the day of shipment.•Do not expose the optoelectronic component to direct sunlight.•The storage conditions in the original packaging are defined according to DIN EN 61760-2.•For a moisture sensitive component, the storage condition in the original packaging is defined according to IPC/JEDEC-J-STD-033. It is also recommended to return the optoelectronic component to the original moisture proof bag and reseal the moisture proof bag again. •The storage conditions stated in the original packaging apply to the storage time and not to the transportation time of the components. Packaging:•The packaging specifications apply only to purchase orders comprising whole packaging units. If the ordered quantity exceeds or is lower than the specified packaging unit, packaging in accordance with the packaging specifications cannot be ensured. Handling:•Violation of the technical product specifications such as exceeding the nominal rated current, will void the warranty.•The product design may influence the automatic optical inspection.•Certain optoelectronic component surfaces consist of soft material. Pressure on the top surface has to be handled carefully to prevent negative influence to the function and reliability of the optoelectronic components.•ESD prevention methods need to be applied for manual handling and processing by machinery.•Resistors for protection are obligatory.•Luminaires in operation may harm human vision or skin on a photo-biological level. Therefore direct light impact shall be avoided. All products are additionally certified as risk groups 0 to 2 according to DIN EN 62471:2008.•In addition to optoelectronic components testing, products incorporating these devices have to comply with the safety precautions given in IEC 60825-1, IEC 62471 and IEC 62778•Please be aware that Products provided in bulk packaging may get bent and might lead to derivations from the mechanical manufacturing tolerances mentioned in our datasheet, which is not considered to be a material defect.Technical specification:•The typical and/or calculated values and graphics of technical parameters can only reflect statistical figures. The actual parameters of each single product, may differ from the typical and/or calculated values or the typical characteristic line.•On each reel, only one bin is sorted and taped. The bin is defined on intensity, chromaticity coordinate or wavelength and forwardWürth Elektronik eiSos GmbH & Co. KGEMC & Inductive SolutionsMax-Eyth-Str. 174638 WaldenburgGermanyCHECKED REVISION DATE (YYYY-MM-DD)GENERAL TOLERANCE PROJECTIONMETHODPLD001.0022023-05-27DIN ISO 2768-1mDESCRIPTIONWL-T7DS 7 Segments Display THTSingle Digit ORDER CODE157136V12701SIZE/TYPE BUSINESS UNIT STATUS PAGEvoltage.•In order to ensure highest availability, the reel binning of standard deliveries can vary. A single bin cannot be ordered. Please contact us in advance, if you need a particular bin sorting before placing your order.•Test conditions are measured at the typical current with pulse duration < 30ms. •Wavelength tolerance under measurement conditions ± 2nm. •Optical intensity tolerance under measurement conditions ±15%. •Forward voltage tolerance under measurement conditions ± 0.2V.These cautions and warnings comply with the state of the scientific and technical knowledge and are believed to be accurate and reliable.However, no responsibility is assumed for inaccuracies or incompleteness.Würth Elektronik eiSos GmbH & Co. KG EMC & Inductive Solutions Max-Eyth-Str. 174638 Waldenburg GermanyCHECKED REVISION DATE (YYYY-MM-DD)GENERAL TOLERANCEPROJECTION METHODPLD001.0022023-05-27DIN ISO 2768-1mDESCRIPTIONWL-T7DS 7 Segments Display THT Single DigitORDER CODE157136V12701SIZE/TYPEBUSINESS UNITSTATUSPAGEImportant NotesThe following conditions apply to all goods within the product range of Würth Elektronik eiSos GmbH & Co. KG:1. General Customer ResponsibilitySome goods within the product range of Würth Elektronik eiSos GmbH & Co. KG contain statements regarding general suitability for certain application areas. These statements about suitability are based on our knowledge and experience of typical requirements concerning the areas, serve as general guidance and cannot be estimated as binding statements about the suitability for a customer application. The responsibility for the applicability and use in a particular customer design is always solely within the authority of the customer. Due to this fact it is up to the customer to evaluate, where appropriate to investigate and decide whether the device with the specific product characteristics described in the product specification is valid and suitable for the respective customer application or not.2. Customer Responsibility related to Specific, in particular Safety-Relevant ApplicationsIt has to be clearly pointed out that the possibility of a malfunction of electronic components or failure before the end of the usual lifetime cannot be completely eliminated in the current state of the art, even if the products are operated within the range of the specifications.In certain customer applications requiring a very high level of safety and especially in customer applications in which the malfunction or failure of an electronic component could endanger human life or health it must be ensured by most advanced technological aid of suitable design of the customer application that no injury or damage is caused to third parties in the event of malfunction or failure of an electronic component. Therefore, customer is cautioned to verify that data sheets are current before placing orders. The current data sheets can be downloaded at .3. Best Care and AttentionAny product-specific notes, cautions and warnings must be strictly observed. Any disregard will result in the loss of warranty.4. Customer Support for Product SpecificationsSome products within the product range may contain substances which are subject to restrictions in certain jurisdictions in order to serve specific technical requirements. Necessary information is available on request. In this case the field sales engineer or the internal sales person in charge should be contacted who will be happy to support in this matter.5. Product R&DDue to constant product improvement product specifications may change from time to time. As a standard reporting procedure of the Product Change Notification (PCN) according to the JEDEC-Standard inform about minor and major changes. In case of further queries regarding the PCN, the field sales engineer or the internal sales person in charge should be contacted. The basic responsibility of the customer as per Section 1 and 2 remains unaffected.6. Product Life CycleDue to technical progress and economical evaluation we also reserve the right to discontinue production and delivery of products. As a standard reporting procedure of the Product Termination Notification (PTN) according to the JEDEC-Standard we will inform at an early stage about inevitable product discontinuance. According to this we cannot guarantee that all products within our product range will always be available. Therefore it needs to be verified with the field sales engineer or the internal sales person in charge about the current product availability expectancy before or when the product for application design-in disposal is considered. The approach named above does not apply in the case of individual agreements deviating from the foregoing for customer-specific products.7. Property RightsAll the rights for contractual products produced by Würth Elektronik eiSos GmbH & Co. KG on the basis of ideas, development contracts as well as models or templates that are subject to copyright, patent or commercial protection supplied to the customer will remain with Würth Elektronik eiSos GmbH & Co. KG. Würth Elektronik eiSos GmbH & Co. KG does not warrant or represent that any license, either expressed or implied, is granted under any patent right, copyright, mask work right, or other intellectual property right relating to any combination, application, or process in which Würth Elektronik eiSos GmbH & Co. KG components or services are used.8. General Terms and ConditionsUnless otherwise agreed in individual contracts, all orders are subject to the current version of the “General Terms and Conditions of Würth Elektronik eiSos Group”, last version available at .Würth Elektronik eiSos GmbH & Co. KGEMC & Inductive SolutionsMax-Eyth-Str. 174638 WaldenburgGermanyTel. +49 (0) 79 42 945 - 0*******************CHECKED REVISION DATE (YYYY-MM-DD)GENERAL TOLERANCE PROJECTIONMETHODPLD001.0022023-05-27DIN ISO 2768-1mDESCRIPTIONWL-T7DS 7 Segments Display THTSingle Digit ORDER CODE157136V12701SIZE/TYPE BUSINESS UNIT STATUS PAGE0.52"eiPal PCN11/11This electronic component has been designed and developed for usage in general electronic equipment only. This product is not authorized for use in equipment where a higher safety standard and reliability standard is especially required or where a failure of the product is reasonably expected to cause severe personal injury or death, unless the parties have executed an agreement specifically governing such use. Moreover Würth Elektronik eiSos GmbH & Co KG products are neither designed nor intended for use in areas such as military, aerospace, aviation, nuclear control, submarine, transportation, transportation signal, disaster prevention, medical, public information network etc.. Würth Elektronik eiSos GmbH & Co KG must be informed about the intent of such usage before the design-in stage. In addition, sufficient reliability evaluation checks for safety must be performed on every electronic component which is used in electrical circuits that require high safety and reliability functions or performance.。

数字温度计设计说明书

数字温度计设计说明书

《单片机》课程设计说明书专业名称:电气工程及其自动化班级:093学号: 20090202101姓名:张淑冠指导教师:姚广芹日期:2011年7月8日单片机课程设计评阅书摘要随着人们生活水平的不断提高,单片机控制无疑是人们追求的目标之一,它所给人带来的方便也是不可否定的,其中数字温度计就是一个典型的例子,但人们对它的要求越来越高,要为现代人工作、科研、生活、提供更好的更方便的设施就需要从数单片机技术入手,一切向着数字化控制,智能化控制方向发展。

本设计是基于AT89S52单片机的温度测量系统。

通过对单片机技术基础及温度传感器使用方法的学习,本组利用Protel设计工作电路,并用PROTUES进行仿真后,焊接电路,这次课程设计综合利用所学单片机知识完成了一个单片机应用系统设计并仿真,焊接电路实现功能,从而加深对单片机软硬知识的深层次理解,获得初步的应用经验,为走出校门从事单片机应用的相关工作打下了一定的基础.关键词:单片机;AT89S52;温度计;数字控制目录1 课题描述 (1)2 设计过程 (2)2。

1 数字温度计系统设计方框图 (2)2。

2 单片机所实现功能说明 (2)2.3 电路板各部分电路图及其原理 (2)3 测试 (5)总结 (6)参考文献 (7)附录1 (8)附录2 (9)1 课题描述本设计所介绍的数字温度计与传统的温度计相比,具有读数方便,测温范围广,测温准确,其输出温度采用数字显示,主要用于对测温比较准确的场所,或科研实验室使用,该设计控制器使用单片机AT89S52,测温传感器使用DS18B20,用4位共阳极LED数码管以串口传送数据,实现温度显示,能准确达到以上要求.开发工具:protel2 设计过程由于本设计是测温电路,进而考虑到用温度传感器,在单片机电路设计中,大多都是使用传感器,所以这是非常容易想到的,所以可以采用一只温度传感器DS18B20,此传感器,可以很容易直接读取被测温度值,进行转换,就可以满足设计要求。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《单片机》课程设计说明书专业名称:电气工程及其自动化班级:093学号:20090202101姓名:张淑冠指导教师:姚广芹日期:2011年7月8日单片机课程设计评阅书摘要随着人们生活水平的不断提高,单片机控制无疑是人们追求的目标之一,它所给人带来的方便也是不可否定的,其中数字温度计就是一个典型的例子,但人们对它的要求越来越高,要为现代人工作、科研、生活、提供更好的更方便的设施就需要从数单片机技术入手,一切向着数字化控制,智能化控制方向发展。

本设计是基于AT89S52单片机的温度测量系统。

通过对单片机技术基础及温度传感器使用方法的学习,本组利用Protel设计工作电路,并用PROTUES进行仿真后,焊接电路,这次课程设计综合利用所学单片机知识完成了一个单片机应用系统设计并仿真,焊接电路实现功能,从而加深对单片机软硬知识的深层次理解,获得初步的应用经验,为走出校门从事单片机应用的相关工作打下了一定的基础。

关键词:单片机;AT89S52;温度计;数字控制目录1 课题描述 (1)2 设计过程 (2)2.1 数字温度计系统设计方框图 (2)2.2 单片机所实现功能说明 (2)2.3 电路板各部分电路图及其原理 (2)3 测试 (5)总结 (6)参考文献 (7)附录1 (8)附录2 (9)1 课题描述本设计所介绍的数字温度计与传统的温度计相比,具有读数方便,测温范围广,测温准确,其输出温度采用数字显示,主要用于对测温比较准确的场所,或科研实验室使用,该设计控制器使用单片机AT89S52,测温传感器使用DS18B20,用4位共阳极LED数码管以串口传送数据,实现温度显示,能准确达到以上要求。

开发工具:protel2 设计过程由于本设计是测温电路,进而考虑到用温度传感器,在单片机电路设计中,大多都是使用传感器,所以这是非常容易想到的,所以可以采用一只温度传感器DS18B20,此传感器,可以很容易直接读取被测温度值,进行转换,就可以满足设计要求。

2.1 数字温度计系统设计方框图图2.1系统设计方框图2.2 单片机所实现功能说明本次实训所设计的为数字温度计,能实现对温度的测试,所测温度由数码管以整数的形式显示。

同时可调所测温度的上下限,如果超出所测温度的限制,能够发出报警,报警信号由LED灯和蜂鸣器同时发出。

性能指标基本要求:(1)能够显示当前室内温度,分辨率为1摄氏度。

(2)具有超限声光报警功能,能够通过按键设定报警温度的上限和下限。

控制器采用单片机AT89S52,温度传感器采用DS18B20,用数码管显示器实现温度显示。

2.3 电路板各部分电路图及其原理(一)单片机AT89S52图2.3.1单片机AT89S52是一种低功耗、高性能CMOS8位微控制器,具有8K 在系统可编程Flash 存储器。

使用Atmel 公司高密度非易失性存储器技术制造,与工业80C51 产品指令和引脚完全兼容。

片上Flash允许程序存储器在系统可编程,亦适于常规编程器。

在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash,使AT89S52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。

(二)晶振和复位装置图2.3.2a晶振图2.3.2b复位电路(1)晶体振荡器,能产生振荡,其特点是固有频率十分稳定,而且震动具有多谐性,除了奇频震动外还有奇次谐波泛音震动。

性能上,晶振的品质因素Q和特性阻抗都非常高,而且接入系数很小,因此具有很高的频率稳定度。

(2)复位电路,与单片机第9引脚,也就是RST引脚相连,起复位作用,高电平有效(三)温度传感器DS18B20图2.3.3温度传感器DS18B20在使用中不需要任何外围元件,全部传感元件及转换电路集成在形如一只三极管的集成电路内,温范围-55℃~+125℃。

有三个引脚,其中1引脚接高电平,第3引脚接地,第2引脚接单片机的16引脚,即P3.6口以送入温度信号。

(四)报警电路——LED灯和蜂鸣器图2.3.4aLED灯图2.3.4b蜂鸣器此次所设计的数字温度计可以设置上下限,当超出上下限后能够报警,报警信号又LED灯和蜂鸣器同时发出。

其中LED灯要有一个上拉电阻和高电平相连,LED报警信号由单片机的P1.0口送出。

蜂鸣器采用无源连接,报警信号由单片机的P3.7引脚送出(五)按键。

按键实现对温度计所测温度的上下限进行节。

图2.3.5按键3 测试将制作好的数字温度计用USB线与电脑连接,把编的程序写入单片机中,测试温度计显示数据是否正确。

调节环境温度,利用温度计(事先准备一个)确定环境温度,观察数码管所显示的数据,并与温度计示数对比。

调节温度使温度达到声光报警温度,测试声光报警是否正常。

总结课程设计的过程是艰辛的,但是收获却是很大的。

这次课程设计我主要是应用以前学习的编程以及单片机的一些知识,综合起来才完成了这个温度计的设计,虽然所设计器件很小,但是付出却是艰辛的。

首先,综合课程设计让我把以前学习到的知识得到巩固和进一步的提高认识,对已有知识有了更进一步的理解和认识,再次,我在课程设计中碰到了很多的问题,我通过查阅相关书籍,资料,通过自己钻研,特别是得到了姚老师的谆谆教导,姚老师给予了我很大的帮助,不仅给了我思路上的开阔,还让我认识到了自己对以前所学知识的不足方面。

随着社会发展,单片机技术的迅速普及,以及飞速发展,人们对实时数字的要求越来越迫切,需求日益增加,单片机的应用无处不在,从小小的电子表,到大型的计算机都离不开单片机,因此我们更需要学习单片机工作原理的及其编程。

通过这次课程设计,我也发现了自身的很多不足之处,在以后的学习中,我会不断的完善自我,不断进取,能使自己在单片机运用这方面有一个大的发展。

参考文献[1] 张毅刚彭喜元彭宇《单片机原理及其应用》高等教育出版社[2] 王守忠赵明明索世文《51单片机应用开发速查手册》人民邮电出版社[3] 谢自美《电子线路综合设计》华中科技大学出版社[4] 夏继强《单片机应用设计培训教程—实践篇》北京航空航天大学出版社[5] 李广弟, 朱月秀, 王秀山《单片机基础》北京航空航天大学出版社[6] 王毅《单片机器件应用手册》人民邮电出版社附录1 总电路图附录2 程序/**********************************程序功能:基于四眼兔子单片机学习板的温度计数码管显示温度,十位与个位时间:2010.3.14***********************************/ #include <reg52.h>#include <intrins.h>#define uchar unsigned char#define uint unsigned intbit presence;bit flow0;sbit led=P1^0;sbit DQ=P3^6;//定义温度传感器sbit led1=P2^0;sbit led2=P2^1;sbit led3=P2^2;sbit led4=P2^3;sbit key1=P3^2;sbit key2=P3^3;sbit key3=P3^4;sbit key4=P3^5;float i=0;int datt=0;int aa=0;int bb=0;int cc=0;int dd=0;int wendu=30;int wenduxia=25;uchar ge,shi,bai,xiao,xiao1;sbit BEEP=P3^7;unsigned char code tab[]={0xC0, 0xF9, 0xA4, 0xB0, 0x99, 0x92, 0x82, 0xF8, 0x80, 0x90 };unsigned char init[] ={0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00};unsigned char init1[] ={0x12, 0x12, 0x12, 0x12, 0x12, 0x12,0x33};void delayms(uchar xms){while(xms--){uchar time;for(time=114;time>0;time--);}}void display(void){P0=tab[shi];led4=0;delayms(1);P2=0xff;P0=tab[ge];led3=0;delayms(1);P2=0xff;P0=0xc6;led1=0;delayms(1);P2=0xff;P0=0x9c;led2=0;delayms(1);P2=0xff;}/**********************************************延时微妙函数************************************************/ void delayus(unsigned char x){unsigned char i;while (x--){for (i = 0; i < 14; i++){;}}}void beep(){ uint j;BEEP=0;for (j = 3; j > 0; j--){ delayms(1);BEEP = ~BEEP;}BEEP = 1;}/********************************************************** us延时函数 (8*1.085)*num**********************************************************/ void Delay(unsigned int num) //延时函数{while (--num);}void xianshi(){int q ;char z;for(z=5;z>0;z--){for(q=20;q>0;q--){P0=tab[aa];led4=0;delayms(1);P2=0xff;P0=tab[bb];led3=0;delayms(1);P2=0xff;P0=tab[cc];led2=0;delayms(1);P2=0xff;P0=tab[dd];led1=0;delayms(1);P2=0xff;} }}void xianshi1(){ aa=0;bb=0;cc=wenduxia/10;dd=wenduxia%10;P0=tab[aa];led4=0;delayms(1);P2=0xff;P0=tab[bb];led3=0;delayms(1);P2=0xff;P0=tab[cc];led2=0;delayms(1);P2=0xff;P0=tab[dd];led1=0;delayms(1);P2=0xff;}void shengwen(){if(key1==0){delayms(100);;if(key1==0){ wendu++;aa=wendu/10;bb=wendu%10;cc=0;dd=0;xianshi();delayms(150);}}}void jiangwen(){if(key2==0){ delayms(100);if(key2==0){ wendu--;aa=wendu/10;bb=wendu%10;cc=0;dd=0;xianshi();delayms(150);}}}void xianshixianzhi(){if(key3==0){ delayms(100);if(key3==0){aa=wendu/10;bb=wendu%10;cc=wenduxia/10;dd=wenduxia%10;xianshi();delayms(150) ;}}}/****************************************初始化18b20****************************************/uchar ds18b20_init(void){DQ = 0; //单片机发出低电平复位信号Delay(60); //延时>480usDQ = 1; //释放数据线Delay(8); //延时>64us,等待应答presence = DQ; //接收应答信号Delay(50); //延时>400us,等待数据线出现高电平DQ = 1; //释放数据线return (presence); //返回presence信号}/********************************************************** 读一个字节数据**********************************************************/ unsigned char ReadOneChar(void){unsigned char i = 0;unsigned char dat = 0;DQ = 1;for (i = 0; i < 8; i++)//一个字节8个bit{DQ = 0; //给低脉冲信号dat >>= 1;DQ = 1; //释放总线_nop_();_nop_();if (DQ)//读总线电平状态dat |= 0x80;//最高位置1Delay(6); //延时>45usDQ = 1; //释放总线,表示此次读操作完成}return(dat);}/********************************************************** 写一个字节数据**********************************************************/ void WriteOneChar(unsigned char dat){unsigned char i = 0;for (i = 0; i < 8; i++)//一个字节8个bit{DQ = 0; //给低脉冲信号Delay(1); //延时<15usdat >>= 1; //数据右移一位,最低位移入CYDQ = CY; //写1bit数据Delay(6); //延时>45usDQ = 1; //释放总线,表示此次写操作完成}/*****************************************读温度函数*****************************************/void read_temp(void){uint d=1;uchar temp1=0;uchar temp2=0;uint t=0;float tt;uint zong=0;ds18b20_init();WriteOneChar(0xcc);//跳过ROM匹配WriteOneChar(0x44);//启动温度转换ds18b20_init();WriteOneChar(0xcc);//跳过ROM匹配WriteOneChar(0xbe);//读温度寄存器temp1=ReadOneChar();//温度低8位temp2=ReadOneChar();//温度高8位if(temp2>112)//判断温度正负,负温度时执行大括号内程序{temp1=(~temp1)+1;if((~temp1)+1>=0xff){temp2=(~temp2)+1;}elsetemp2=(~temp2);flow0=1;//温度是零下}else //温度值为零上flow0=0;t=temp2;t<<=8;t=t|temp1;tt=t*0.0625*100;datt=(int)tt;bai=datt/10000;shi=(datt%10000)/1000;ge=datt%1000/100;xiao=datt%100/10;xiao1=datt%10;if(xiao1>=5)//四舍五入计算小数点后一位xiao++;zong=bai*100+shi*10+ge;if(zong>=wendu||zong<=wenduxia) {led=0;beep();}if(zong<wendu||zong>wenduxia) led=1;}void shezhixiaxian(){if(key4==0){delayms(30);if(key4==0){while(1){if(key4==0){delayms(50);if(key4==0){break;}}if(key1==0){delayms(50);if(key1==0){ wenduxia++;aa=0;bb=0;cc=wenduxia/10;dd=wenduxia%10;xianshi();} }if(key2==0){delayms(50);if(key2==0){ wenduxia--;aa=0;bb=0;cc=wenduxia/10;dd=wenduxia%10;xianshi();}}xianshi1();}}}}/**************************************************主函数**************************************************/void main(void){P2=0xff;P0=0xff;while(1){ read_temp(); //读取温度值display();shengwen();jiangwen();xianshixianzhi();shezhixiaxian();}}。

相关文档
最新文档