版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、精品文档黄河科技学院单片机应用技术课程设计题目:基于数字温度传感器的数字温度计姓 名: 时鹏院(系): 工学院专业班级:学 号:指导教师:黄河科技学院课程设计任务书工 学院 机械 系 机械设计制造及其自动化专业s13 级 1 班学号 1303050025 姓名 时鹏 指导教师 朱煜桂题目:基于数字温度传感器的数字温度计设计课程:单片机应用技术课程设计课程设计时间2014 一年1(_月22 日至2014年11月10日 共2周课程设计工作内容与基本要求(设计要求、设计任务、工作计划、所需相关资料 )(纸张不够可加页)4欢在下载精品文档课程设计任务书及摘要一、课程设计题目:基于数字温度传感器的数字温
2、度计二、课程设计要求利用数字温度传感器ds18b20f单片机结合来测量温度。利用数字温度传感 器ds18b20w量温度信号,计算后在led数码管上显示相应的温度值。其温度测 量范围为-55c125c,精确到0.5 c。数字温度计所测量的温度采用数字显示, 控制器使用单片机at89c51温度传感器使用ds18b20用3位共阳极led数码 管以串口传送数据,实现温度显示。三、课程设计摘要ds18b2隽一种可组网的高精度数字式温度传感器, 由于其具有单总线的独 特优点,可以使用户轻松地组建起传感器网络,并可使多点温度测量电路变得简 单、可靠。本文结合实际使用经验,介绍了 ds18b20t?温度传感器
3、在单片机下 的硬件连接及软件编程,并给出了软件流程图。该系统由上位机和下位机两大部分组成。下位机实现温度的检测并提供标准 rs232通信接口,芯片使用了 atme心司的at89c51单片机和 dalla铃司的 ds18b2嗷字温度传感器。上位机部分使用了通用pg该系统可应用于仓库测温、 楼宇空调控制和生产过程监控等领域。四、关键字:单片机 温度测量ds18b20数字温度传感器at89c511欢向下载精品文档3欢好载目录绪论31 .原理绍41.1 总体案.41.2 主控分41.3 总体图.42 .硬件路52.1 硬件设计方设计框电路预精品文档2.2 ds18b20介绍.52.3 at89c51介
4、绍.82.4数码管绍103 .程序计113.1 程序流图113.2 程序单124 .仿真效图165 .结论与结18绪论随着人们生活水平的不断提高,单片机控制无疑是人们追求的目标之一,它 所给人带来的方便一是不可否定的, 其中数字温度计就是一个典型的例子, 但人 们对它的要求越来越高,腰围现代人工作、科研、生活提供更好更方便的设施就 需要从单片机技术入手,一切向着数字化控制,智能化控制方向发展。随着时代的进步和发展,单片机技术已经普及到我们生活,工作,科研等各 个领域,已经成为一种比较成熟的技术,在工、农业生产和日常生活中,对温度 的测量及控制占据着极其重要的地位。首先了解一下多点温度检测系统在
5、各个方 面的应用领域:消防电气的非破坏性温度检测,电力、电讯设备之过热故障预知 检测,空调系统的温度检测,各类运输工具之组件的过热检测, 保全与监视系统 之应用,医疗与健诊的温度测试,化工、机械等设备温度过热检测。由此可见, 温度检测系统应用十分广阔。本设计所介绍的数字温度计与传统的温度计相比,具有读数方便,测温范围 广,测温准确,其输出温度采用数字显示,该设计控制器使用单片机at89c51测温传感器使用ds18b20用3位共阳极led数码管以串口传送数据,实现温度 显示,能准确达到以上要求。本温度计属于多功能温度计,可以设置上下报警温 度,当温度不在设置范围内报警。4欢野载精品文档1 .原理
6、介绍1.1 总体设计方案总体设计方案采用at89c51i1片机作控制器,温度传感器选用ds18b20fe设 计数字温度计,系统由3个模块组成:主控制器、测温电路及显示电路。主控制 器由单片机at89c51实现,测温电路由温度传感器 ds18b2cr现,显示电路由4 位led数码管直读显示。本设计所介绍的数字温度计与传统的温度计相比,具有读数方便,测温范围广,测温准确其输出温度采用数字显示,主要用于对测温比较准确的场所,或科研实验室使用,该设计控制器使用单片机at89c51测温传感器使用ds18b20用4位共阳极led数码管以串口传送数据,实现温度显示,能 准确达到以上要求。1.2 主控制部分本
7、设计采用at89c51k位单片机实现。单片机软件编程的自由度大,可通过 编程实现各种各样的算术算法和逻辑控制。而且体积小,硬件实现简单,安装方便。既可以单独对多ds18b20空制工作,还可以与pc机通信.运用主从分布式思 想,由一台上位机(pc微型计算机),下位机(单片机)多点温度数据采集, 组成两级分布式多点温度测量的巡回检测系统,实现远程控制。另外at89c51在 工业控制上也有着广泛的应用,编程技术及外围功能电路的配合使用都很成熟。系统采用针对传统温度测温系统测温点少,系统兼容性及扩展性较差的特 点,运用分布式通讯的思想。设计一种可以用于大规模多点温度测量的巡回检测 系统。该系统采用的是
8、 rs-232串行通讯的标准,通过下位机(单片机)进行现 场的温度采集,温度数据既可以由下位机模块实时显示, 也可以送回上位机进行 数据处理,具有巡检速度快,扩展性好,成本低的特点。1.3 总体设计框图控制器采用单片机 at89c51温度传感器采用ds18b20用4位led数码管5欢好载精品文档显示温度。总体设计框图如图1-1所示led显示时沪振荡主控电路号二1 温度传感器单片机复位 匚二7欢if载图1.1总设计框图2 .硬件电路2.1 硬件电路预览 1窜44石1g rzaacfi 一, f?s*aq fjfai- fzzavp-jaw c fl, gt m - j1ft h- itcv ad
9、jg usrr-a+nflt 曹:-rfrre1a匚!l-l-*.,.lprcfeeh.l-lhhh图2.1总电路2.2 ds18b20 介绍ds18b2比由美国dallas导体公司研制的一款数字温度传感器,与一般的热敏电阻相比,它能够直接检测出被测温度并且可根据实际的要求通过简单的 编程实现912位的数字读取方式。ds18b2林用独特的单总线接口方式,只需 一根线与单片机直接连接便可实现数据的读写操作,简化了分布式温度传感网络 的应用。ds18b2嗷字温度传感器的优点是结构简单,耐磨耐碰,体积较小,使 用方便,与传统温度传感器相比测量精度较高,其抗干扰能力强,封装形式也有很多种,可以根据不同
10、的应用场合而选择不同形式的封装。因此,本系统选择 ds18b20作为系统温度传感器,可以简化系统结构,使测量方便、可靠,同时 ds18b20勺价格也比较便宜。ds18b20t以下优点:(1)单总线接口方式:ds18b20与单片机联接只需一根数据总线便能完成 数据的全双工通信。(2)在使用时不需要外围元器件。(3) ds18b20r作电压范围宽,可工作于 3.0 v5.5v ,可以由数据线直接 供电,不需要外部电源。(4)测温范围为:-55 c+125c,可以满足一般的生产生活需要,测温分 辨率0.5 c(5)可编程的分辨率为912位,对应的可分辨温度分别为0.5 c、0.25 c、 0.125
11、 c、0.0625 c,可实现高精度测温。(6) ds18b20支持多传感器组成测温网功能,可以由单片机引出的一条总 线上并联多个温度传感器以实现多点组网测温。ds18b20勺封装有很多种,最常见的是to-92封装,它的管脚说明如图所示。 其封装结构共有三个引脚,分别为电源引脚(vcc ,数据线引脚(dq)和接地引 脚(gnddallas 18b201 2 30 q口 ifbotto!kte!i-:tom(ds1sb20)图 2.2 ds18b20 的 to-92 封装精品文档ds18b20勺内部结构如图所示。图2.3 ds18b20的内部结构图从图中我们可以看出,ds18b20数字温度传感器
12、主要由四部分组成:64位 row读存储器、温度传感器、高低温度触发器 th和tl、配置寄存器。ds18b20 的管脚排列如图2.3所示,其中dq为数字信号i/o 口; gn师电源地,需要与 单片机共地;vdm外接电源输入端。每个ds18b20i勺rom?有不同64位序列号,其序列号是出厂前被光刻好的, 不可更改,它可以看作是该 ds18b20b勺地址序列码。64位rom勺排循环冗余校 验码是crc=x8x5+ x4+ 1。romff列号的作用是使每一个 ds18b2嘟各不相同, 这样就可以实现一根总线上并联多个 ds18b2改现多点组网测温的目的。温度的测量由ds18b2(fr的温度传感器完成
13、,并将检测到的温度用16位带符号扩展的二进制补码读数形式由数据总线传出,以 0.0625 c/lsb形式表达, 其中s为符号位。例如+ 125c的数字输出为07d0h + 25.0625 c的数字输出为 0191h, 25.0625 c的数字输出为ff6fh 55c的数字输出为 fc90h高速暂存器是一个9字节的随机存储器。开始低位两个字节包含被测温度的 数字量信息;第3、4、5字节分别是th tl、配置寄存器的临时拷贝,每一次 上电复位时被重置;第6、7、8字节未用,默认为全逻辑1;第9字节读出的是 前面所有8个字节的crck,可用来保证通信正确。ds18b20&使用中的注意事项。ds18b
14、23然具有测温电路简单、测温精度较高、连接方便、占用 i/o端口 线少等优点,在实际应用中应注意以下几个问题:(1)简单的硬件电路需要相对复杂的软件进行编辑,ds18b20与单片机问采用串行数据传送,因此,在对ds18b208行读取和写入编程时,必须严格保证 读写时序,否则将无法读取测温结果。(2)在实际应用中,当单总线上所挂 ds18b20t好不要超过8个,否则, 就需要解决单片机的总线驱动问题。(3)连接ds18b2q5勺总线电路是有长度限制的。当采用普通信号电缆传输 数据,且电缆长度超过50m时,读取的测温数据会因为有外界的干扰而发生错误。 而将总线电缆改为双绞线带屏蔽电缆时,正常通信距
15、离最远可达150m因此,在用ds18b208行长距离测温系统设计时,需要解决总线分布电容的阻抗匹配问 题。(4)在ds18b20w温程序设计中,向ds18b20出温度转换命令后,程序 需要等待ds18b20i勺返回信号。实际应用中难免出现某个 ds18b2嘶线问题,当 程序需要读该ds18b20寸,将没有返回信号,程序将进入死循环。测温电缆最好 采用带屏蔽4芯双绞线,其中一对线接地线与信号线,另一组接电源线和地线, 屏蔽层在源端单点接地。2.3at89c51 介绍mcs-51单片机是指由美国英特尔公司生产的一系列单片机的总称,这一系 列单片机包括很多种,如 8031、8032、8051、805
16、2、8752等。其中8051是最早 研制的且最具典型性的产品,而该系列其他单片机都是以8051为基础发展起来的,与8051的基本结构和软件特征相似。8051单片机包含微型计算机所必须具 备的基本功能部件,各部件相互独立地集成在同一块芯片上。8051基本功能特性如下:(1) 8 位 cpu(1) 四个8位并行i/o端口;(3) 4kb程序存储器(rom ,外部可扩充至64kb;(4) 128b数据存储器(ram ,外部可扩充至64kb(5)两个16位定时/计数器;(6) 5个中断源;(7)全双工的串行通信口;(8)具有布尔运算能力;标准的8051单片机有几种不同的封装形式。最常见,也是最廉价的是
17、pdip40 封装的塑料双列直插40引脚8051单片机,其引脚排列如图所示。9欢通f载精品文档ot2/?i. 0 !140 vcct2ex/p1.1 1239_p0.0/ad0pl2 338_ p0, 1/ad1pl3 _1437_ p0, 2/ad2pl4 _1 536_ p0, 3/ad3p1.5 1 635i p0, 4/ad4p1.6 734_ p0,5/ad5pl7 11 833_ p0.6/ad6rst _1 9232_ p0. 7/ad7rxd/巴工01 10731_ eatxd/p3. 1 111台30_ ale/rroginto/p3- 2 1229_ psi 式1nt1/p
18、3, 3 _1328-p2.7/a15wp3r _| 1427_| p2. 6/a14t1/p3,3 1 1526_1 p2. 5/a13m/p3. 6 _11625 p2. 4/a12rd/p3, 7 1 1724_ p2, 3/a11xtal2 一1 1823_ p2.2/a】。xtal1 i 1922p2.1/a9vss 1 2021i_ p2,0/a8图2.4单片机的管脚排列图40个引脚功能如下:(1)主电源引脚vs&口 vccvss地线。vcc 5v电源。(2)外界晶振引脚xtal1和xtal2xtal1外接晶体的引线端。当使用芯片内部时钟时,此端用于外接石英品 体和微调电容;当使用
19、外部时钟时,对于hmosi片机,此引脚接地;对于chmos 单片机,此引脚作为外部振荡信号的输入端。xtal2外接晶体引线端。当使用芯片内部时钟时,此端用于外接石英晶体 和微调电容;当使用外部时钟时,对于 hmosi片机,此引脚接外部振荡源;对 于chmos片机,此引脚悬空不接。(3)控制或与其他电源复用引脚 rst ale/ prog, pesn和ea 。rst复位信号。当输入的复位信号延续2个机器周期以上高电平即为有效,用以完成单片机的复位初始化操作。在vece生故障、降低到低电平规定值掉电 期间,此引脚可接上备用电源 vpd由vpd向内部ramft电,以彳持内部raw 的数据。ale/
20、prog :地址锁存控制信号。在系统扩展时,ale用于控制把p0 口输出的低8位地址锁存器锁存起来,以实现低位地址和数据的隔离。此外由于ale是以晶振六分之一的固定频率输出的正脉冲,因此可作为外部时钟或外部定时脉冲使用。pesn :外部程序存储器读选通信号。在读外部rom时有效(低电平),以实现外部rom1元的读操作。ea :访问程序存储控制信号。当 ea信号为低电平时,对rom勺读操作先低昂在外部程序存储器;而当 ea信号为高电平时,则对 rom的读操作是从 内部程序存储器开始,并可延至外部程序存储器。(4)输入/输出引脚,p0dp3口。p0 口(p0.0-p0.7) : 8位双向并行i/o
21、 口。扩展片外存储器或i/o 口时, 作为低8位地址总线和8位数据总线的分时复用接口,它为双向三态。p0 口能以吸收电流的方式驱动8个lsttl负载。p1 口(p1.0-p1.7) : 8位准双向并行i/o接口。p1 口每一位都可以独立设 置成输入输出位。p1 口能驱动4个lsttl负载。p2 口(p2.0-p2.7) : 8位准双向并行i/o 口。扩展外部数据、程序存储器 时,作为高八位地址输出端口。p2口能驱动4个lsttl负载。p3 口(p3.0-p3.7) : 8位准双向并行i/o 口。p3 口除了作为一般的准双向 口使用外,每个引脚还有特殊功能.p3 口能驱动4个lsttl负载。2.
22、4数码管介绍le国码管(ledsegmentdisplays )由多个发光二极管封装在一起组成 “8” 字型的器件,引线已在内部连接完成,只需引出它们的各个笔划,公共电极。数 码管实际上是由七个发光管组成 8字形构成的,加上小数点就是8个。这些段分 别由字母a,b,c,d,e,f,g,dp 来表示。led数码管常用段数一般为7段有的另加一个小数点,还有一种是类似于 3 位“+1”型。位数有半位,1, 2, 3, 4, 5, 6, 8, 10位等等.,led数码管 根据led的接法不同分为共阴和共阳两类,了解led的这些特性,对编程是很重 要的,因为不同类型的数码管,除了它们的硬件电路有差异外,
23、编程方法也是不 同的。图2是共阴和共阳极数码管的内部电路, 它们的发光原理是一样的,只是 1制刚下载精品文档它们的电源极性不同而已。颜色有红,绿,蓝,黄等几种。 led数码管广泛用于 仪表,时钟,车站,家电等场合。选用时要注意产品尺寸颜色,功耗,亮度,波 长等。下面将介绍常用led数码管内部引脚图片。图2.5数码管3.程序设计3.1程序流程图开始- 5获取温度并转: r . 获取温度并显示-h图3.1主程序流程图精品文档1宠衙载图3.2 ds18b20程序流程图3.2程序清单#include#include#define uchar unsigned char#define uint unsi
24、gned intsbit ds=p1a0; uint temp; float f_temp; bit flag;/温度传感器信号线/定义整形的温度数据/定义浮点型的温度数据/共阳极数码管显示0-9/带小数点的0-9/正负温度标志位uchar code table0xc0,0xf9,0xa4,0xb0, 0x99,0x92,0x82,0xf8, 0x80,0x90, 0x40,0x79,0x24,0x30, 0x19,0x12,0x02,0x78,精品文档15;的下载0x00,0x10,0xbf,0xff;/ 正负号void delay(uint z)/ 延时函数,约 1msuint x,y;f
25、or(x=z;x0;x-)for(y=110;y0;y-);)void dsreset(void) uint i;ds=0;i=103;while(i0)i-; ds=1;i=4;while(i0)i-;)/ds18b20 复位,初始化函数bit tempreadbit(void) uint i;bit dat;ds=0;i+;ds=1;i+;i+;dat=ds;i=8;while(i0)i-; return(dat);)/读一位数据函数uchar tempread(void)uchar i,j,dat;dat=0;for(i=1;i=8;i+)j=tempreadbit();dat=(j1)
26、;)return(dat);/读一个字节数据函数精品文档1&15下载void tempwritebyte(uchar dat) uint i;uchar j;bit testb;for(j=1;j1;if(testb)ds=0;i+;i+;ds=1;i=8;while(i0)i-; elseds=0;i=8;while(i0)i-;ds=1;i+;i+;/ 向ds18b20f一个字节数据函数void tempchange(void)dsreset();delay;tempwritebyte(0xcc); /tempwritebyte(0x44); / /ds18b20开始获取温度并转换跳过读r
27、om旨令 写温度转换指令uint get_temp()uchar a,b;dsreset();delay;tempwritebyte(0xcc);tempwritebyte(0xbe); a=tempread();b=tempread();/读取寄存器中存储的温度数据/读低八位读高八位精品文档temp=b;temp=8;/两个字节组合为一个字temp=temp|a;if(temp=0x800)flag=1;temp=temp+1;f_temp=temp*0.0625;/ 温度在寄存器中为12位,分辨率为0.0625 temp=f_temp*10+0.5;/乘以10表示小数点后取一位,加0.5是
28、四舍五入f_temp=f_temp+0.05;return temp;/temp 是整型1欲衙载void dis_temp(int t) / .显示温度数值函数,t传递的是整型的温度值uchar b,s,g;b=t/100; s=t%100/10;g=t%100%10;/除100得到商,为温度的十位/100 取余除以10,为温度的各位/100 取余再用10取余,为温度的小数位if(flag=1)p2=0x01;p0=table20; delay(1);else if(flag=0)p2=0x01;p0=table21; delay(1);p2=0x02;p0=tableb;delay;p2=0x04;p0=tables+10;delay;p2=0x08;/温度的正负号/温度显示精品文档1及17下载p0=tableg;delay; void init(void)p0=0x00;p2=0x00;p1=0x00;/i/o 口初始化void main()uchar i;init();while(1)tempchange(); for(i=10;i0;i-) /主函数/温度转换函数dis_temp(get_temp(); 获取温度并显示4.仿真效果图精品文档1歆%下载ziu.ji.-*.; p1
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026高三名校联考高分作文范文(4篇)
- 护理文书的持续学习
- 2026年江西电力职业技术学院单独招生《职业适应性测试》模拟试题及参考答案
- 高一历史学案(中外历史纲要上)第6课 从隋唐盛世到五代十国
- 矿山隧道建设面试全解析
- 虚拟团队2026年教育咨询合同协议
- 基于数据分析的医院护理部人力资源优化研究
- 基于机器视觉的智能监控技术应用
- 旅检员日常工作汇报模板
- 护理服务流程优化与医疗信息化建设
- 2025年秋招:民生银行笔试真题及答案
- 新型电磁感应加热道岔融雪系统设计与实验
- CJ/T 136-2007给水衬塑复合钢管
- T/CSMT-KJ 001-2022超薄均热板性能测试方法
- 调岗调薪补充合同协议
- 2025年地理高考复习 热点专练 天津重难点13 农业区位因素与粮食安全(解析版)
- 2024船用电气电子产品型式认可试验指南
- 《调酒与咖啡制作》课件-鸡尾酒装饰物装饰
- 人教版2025三下英语单词表
- 高等数学(慕课版)教案 教学设计-5.1 定积分的定义与性质;5.2 微积分基本公式
- 公路桥梁下部结构组合钢模板技术规范
评论
0/150
提交评论