曹志-温度测量

上传人:wm****3 文档编号:42177161 上传时间:2018-06-01 格式:DOC 页数:9 大小:78KB
返回 下载 相关 举报
曹志-温度测量_第1页
第1页 / 共9页
曹志-温度测量_第2页
第2页 / 共9页
曹志-温度测量_第3页
第3页 / 共9页
曹志-温度测量_第4页
第4页 / 共9页
曹志-温度测量_第5页
第5页 / 共9页
点击查看更多>>
资源描述

《曹志-温度测量》由会员分享,可在线阅读,更多相关《曹志-温度测量(9页珍藏版)》请在金锄头文库上搜索。

1、天 津 工 业 大 学生产实习课题名称 单片机生产实习 专业班级 电气 082 姓 名 曹志 学 号 0810430201 成 绩 2012 年 9 月 22 日1目目 录录1. 摘摘 要要2. 目的与意义目的与意义3. 应用应用4.4. DSl820 工作过工作过程程及时序及时序5. 方方案案6. 电路制作与软件调试电路制作与软件调试6.1 硬硬件件制作制作6.2 软件调试软件调试6.3 c 语言代码语言代码2一摘一摘 要要在现今科技高速发展的时代,各行各业对控制和测量的要求越来越高,其中,温度测量和控制在很多行业中都有比较重要的应用,尤其在工业上,如炼钢时对温度高低的控制。要控制好温度,测

2、量是前提,测量的精度影响着后续工序的进行,因此温度测量的方法和选取就显得相当重要了。针对各种温度测量方案的讨论分析后,我们组决定以 AT89S52 为核心,采用 DS18B20温度传感器进行温度信号的检测,并通过 LED 数码管显示测量所得温度。关键词:关键词:AT89S52、 DS18B20、 LED 数码管2设计目的与意义设计目的与意义随着电子技术的高速发展,对电子方面人才的要求越来越高,不仅要求其具备相关的专业理论知识,还要求其具有较强的设计、制作等实践动手能力。此次生产实习无疑是对从事电气工程及自动化专业的人的一次很好的锻炼和考验,是培养电气工程人才的一次良好的机会,为其提供了一个理论

3、知识与实践相结合的平台。通过本次课程设计,引导学生结合所学的电气电路理论知识,思考设计方案,以小组合作方式,分工完成各个部分,从而掌握相关的测量显示电路的设计和调试技术,一方面提高了学生的实践动手和协作能力,另一方面培养了学生综合运用所学理论知识进行工程设计的能力。回顾起此次课程设计,至今我仍感慨颇多,从理论到实践,在整整两个星期的日子里,我学到很多很多的东西,不仅巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的内容。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才是真正的知识,才能提高自己的

4、实际动手能力和独立思考的能力。在设计的过程遇到了各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固,通过这次课程设计,把以前所学过的知识重新温故,巩固了所学的知识。三三. .应用应用DSl820 数字温度计提供 9 位(二进制)温度读数 指示器件的温度 信息经过单线接口 送入 DSl820 或从 DSl820 送出因此从主机 CPU 到DSl820 仅需一条线(和地线) DSl820 的电源可以由数据线本身提供而不需要外部电源 因为每一个 DSl820 在出厂时已 经给定了唯一的序号因此任意多个 DSl820 可以存放在同一条单线总线上这允

5、许在许 多不同的地方放置温度敏感DSl820 的测量范围从-55到+125增量值为 0.5 可在 l s(典型值)内把温度变换成数字.每一个 DSl820 包括一个唯一的 64 位长的序号 该序号值 存放在 DSl820 内部的 ROM(只读存贮器)中 开始8位是产品类型编码(DSl820 编码均 为(10H)接着的48位是每个器件唯一的序号最后8位是前面 56位的CRC(循环冗余校验)码 DSl820 中还有用于贮存测得的温度值的两个 8 位存贮器 RAM编号为 0 号和 1号1号存3贮器存放温度值的符号,如果温度为负,则 1 号存贮器 8 位全为 1,否则全为 0, 0 号 存贮器用于存放

6、温度值的补码,LSB(最低位)的1表示0.5将存贮器中的二进制数求补再转换 成十进制数并除以 2 就得到被测温度值(-550 125 ),DSl820 的引脚如图 2 26-l 所示 。每 只 DS18b20 都可以设置成两种供电方式 :即数据总线供电方式和外部供电方式 ,采取 数据总线供电方式可以节省一根导线 ,但完成温度测量的时间较长;采取外部供电方式则 多用一根导线,但测量速度较快.四四DSl820 工作过程及时序DSl820 工作过程中的协议如下初始化RoM 操作命令 存储器操作命令 处理数据 1初始化 单总线上的所有处理均从初始化开始2 ROM 操作品令 总线主机检测到 DSl820

7、 的存在便可以发出 ROM 操作命令之一这些命令如 代码 指令Read ROM(读 ROM) 33H Match ROM(匹配 ROM) 55H Skip ROM(跳过 ROM CCH Search ROM(搜索 ROM) F0H Alarm search(告警搜索) ECH 3存储器操作命令 代码 指令Write Scratchpad(写暂存存储器) 4EH Read Scratchpad(读暂存存储器) BEHCopy Scratchpad(复制暂存存储器) 48H Convert Temperature(温度变换) 44H Recall EPROM(重新调出) b8H Read Powe

8、r supply(读电源) b4H 4 时序主机使用时间隙(time slots)来读写 DSl820 的数据位和写命令字的位 (1)初始化时序见图 2.25-2主机总线 to 时刻发送一复位脉冲(最短为 480us 的低电平信号)接着在 tl 时刻释放总线并进入接收状DSl820 在检测到总线的上升沿之后 等待 15-60us接DS1820 在 t2 时刻发出存在脉冲(低电平持续 60-240 us)如图中虚线所示以下子程序在 MCS51 仿真机上通过其晶振为 12M.初始化子程序五五. .方案方案:该方案以 AT89S52 为控制器,采用 DS18B20 温度传感器检测温度信号,并通过 L

9、ED 数码管显示。工作框图如图所示:4DS18B20 数字温度传感器DS18B20 是美国 DALLAS 半导体公司智能温度传感器,他能够直接读出被测温度并且可根据实际要求通过简单的编程实现 912 位的数字值读数方式从 DS18B20 读出的信息或写入 DS18B20 的信息仅需要一根口线(单线接口)读写,温度变换功率来源于数据总线,使用DS18B20 可使系统结构更趋简单,可靠性更高。他在测温精度、转换时间、传输距离、分辨率等方面拥有很大优势,给用户带来了更方便的使用和更令人满意的效果。测量显示方案:我们采用 LED 显示。LED 数码显示中每一个像素单元就是一个发光二极管,如果是单色,一

10、般是红色发光二级管。如果是彩色,一般是三个三原色小二极管组成的一个大二级管。这些二级管组成的矩阵由数码控制实时显示文字或者图像,造价相对低廉,组成的显像面积大。3电路制作与软件调试电路制作与软件调试6.1 硬件制作本次实习应用 Protel 99 绘制电路原理图,生成 PCB 图,然后用雕刻机刻板,焊接电路元件,最后用程序调试系统功能。硬件电路主要由单片机最小系统、DS18B20 为核心的传感器电路、LED 显示电路组成。单片机最小系统:提供一个上电复位高电平,和 12MHZ 时钟振荡。DS18B20 传感器电路:加电即可工作,DATA 端加 4.7K 电阻作上拉电阻保证有足够大的灌拉电流。6

11、.2 软件调试主程序流程主程序流程图56.3 程序代码#include #define uchar unsigned char #define uint unsigned int#define jump_ROM 0xCC #define start 0x44 #define read_EEROM 0xBEsbit DQ = P23; /DS18B20 数据口unsigned char TMPH,TMPL; uchar code table10 = 0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f; /* * 名称 : delay() * 功能

12、: 延时,延时时间大概为 140US。 * 输入 : 无 * 输出 : 无 */void delay() int i,j; for(i=0; i i; temp = temp write_bit(temp); delay(5); 8/* * 名称 : Main() * 功能 : 主函数 * 输入 : 无 * 输出 : 无 */ void main() float tt; uint temp; P2 = 0x00; while(1) Reset(); write_byte(jump_ROM); write_byte(start); Reset(); write_byte(jump_ROM); write_byte(read_EEROM); TMPL = read_byte(); TMPH = read_byte(); temp = TMPH; temp = 8; temp = temp | TMPL; tt = TMPL * 0.0625; temp = TMPL / 16 + TMPH * 16; P0 = tabletemp/ 10; /显示高位键值 P2 = 0x00; Delay_1ms(5); P0 = tabletemp % 10;/显示低位键值 P2 = 0x01; Delay_1ms(5);

展开阅读全文
相关资源
相关搜索

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

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号