单片机课程设计数字温度计样本.docx

上传人:b****6 文档编号:5075227 上传时间:2022-12-13 格式:DOCX 页数:30 大小:223.84KB
下载 相关 举报
单片机课程设计数字温度计样本.docx_第1页
第1页 / 共30页
单片机课程设计数字温度计样本.docx_第2页
第2页 / 共30页
单片机课程设计数字温度计样本.docx_第3页
第3页 / 共30页
单片机课程设计数字温度计样本.docx_第4页
第4页 / 共30页
单片机课程设计数字温度计样本.docx_第5页
第5页 / 共30页
点击查看更多>>
下载资源
资源描述

单片机课程设计数字温度计样本.docx

《单片机课程设计数字温度计样本.docx》由会员分享,可在线阅读,更多相关《单片机课程设计数字温度计样本.docx(30页珍藏版)》请在冰豆网上搜索。

单片机课程设计数字温度计样本.docx

单片机课程设计数字温度计样本

前言

单片机技术作为计算机技术一种分支,广泛地应用于工业控制,智能仪器仪表,机电一体化产品,家用电器等各个领域。

“单片机原理与应用”在工科院校各专业中已作为一门重要技术基本课而普遍开设。

学生在课程设计,毕业设计,科研项目中会广泛应用到单片机知识,并且,进入社会后也会广泛接触到单片机工程项目。

鉴于此,提高“单片机原理及应用”课教学效果,让学生参加课程设计实习甚为重要。

单片机应用技术涉及内容十分广泛,如何使学生在有限时间内掌握单片机应用基本原理及办法,是一种很有价值教学项目。

为此,咱们进行了“单片机学习与应用”方面课程设计,锻炼学生动脑动手以及协作能力。

单片机课程设计是针对模仿电子技术,数字逻辑电路,电路,单片机原理及应用课程规定,对咱们进行综合性实践训练实践学习环节,它涉及选取课设任务、软件设计,硬件设计,调试和编写课设报告等实践内容。

通过本次课程设计实现如下三个目的:

第一,让学生初步掌握单片机课程实验、设计办法,即学生依照设计规定和性能约束,查阅文献资料,收集、分析类似有关题目,并通过元器件组装调试等实践环节,使最后硬件电路达到题目规定性能指标;第二,课程设计为后续毕业设计打好基本,毕业设计是系统工程设计实践,而课程设计着眼点是让学生开始从理论学习轨道上逐渐引向实际运用,从已学过定性分析、定量计算办法,逐渐掌握工程设计环节和办法,理解科学实验程序和实行办法。

第三,培养学生勤于思考乐于动手习惯,同步通过设计并制作单片机类产品,使学生可以自己不断地学习接受新知识(如在本课设题目中存在智能测温器件DS18B20,就是课堂环节中不曾提及“新器件”),通过多人合伙解决现实中存在问题,从而不断地增强学生在该方面自信心及兴趣,也提高了学生动手能力,对学生后来步入社会参加工作打下一定良好实践基本。

摘要:

随着时代进步和发展,单片机技术已经普及到咱们生活,工作,科研,各个领域,已经成为一种比较成熟技术,单片机具备体积小、功耗低、控制功能强、扩展灵活、微型化和使用以便等长处,广泛应用于仪器仪表中,结合不同种类传感器,可实现诸如电压、湿度、温度、速度、硬度、压力等物理量测量。

本文将简介一种基于单片机控制理论及其应用系统设计数字温度计。

本文重要简介了一种基于AT89C51单片机测温系统,详细描述了运用数字温度传感器DS18B20开发测温系统过程,重点对传感器在单片机爱慕硬件连接,软件编程以及各模块系统流程进行了详尽分析,对各某些电路也进行一一简介,该系统可以以便是实现温度采集和显示,并可以依照需要任意设定上下限报警温度,它使用起来以便,具备精度高、量程宽、敏捷度高、体积小、功耗低等长处,适合咱们寻常生活和工农业生产中温度测量,也可以当做温度解决模块嵌入其她系统中,作为其她主系统辅助扩展。

DS18B20和AT89C51结合实现最简温度检测系统,该系统构造简朴,抗干扰能力强,适合与恶劣环境下进行现场温度测量,有广泛应用前景。

本设计一方面是拟定目的,气候是各个功能模块设计,再在Proteus软件上进行仿真,修改,仿真。

本温度计属于多功能温度计,可以设立上下报警温度,当温度不在设立范畴内时,可以报警。

核心词:

单片机,数字控制,温度计,DS18B20,AT89C51

前言…………………………………………………………………………………………1

摘要…………………………………………………………………………………………3

核心字………………………………………………………………………………………3

一.单片机简介………………………………………………………………………………5

1.1单片机应用…………………………………………………………………………5

1.2单片机开发过程……………………………………………………………………6

二、设计方案…………………………………………………………………………………6

2.1设计任务和规定………………………………………………………………………6

2.2方案辩证………………………………………………………………………………7

1温度计软件设计流程图………………………………………………………………7

2元器件选用…………………………………………………………………………7

3系统最后设计方案……………………………………………………………………8

三、设计方案总体设计框图……………………………………………………………8

3.1硬件电路框图…………………………………………………………………………8

3.2硬件电路概述…………………………………………………………………………9

3.3主控电路………………………………………………………………………………9

3.4显示电路………………………………………………………………………………10

3.5报警温度调节电路……………………………………………………………………10

3.6温度传感器及DS18B20测温原理…………………………………………………11

四、系统软件算法设计………………………………………………………………15

4.1主程序…………………………………………………………………………………15

4.2读出温度子程序………………………………………………………………………16

4.3温度转换命令子程序…………………………………………………………………17

4.4计算温度子程序………………………………………………………………………17

4.5显示数据刷新子程序…………………………………………………………………17

4.61602液晶显示……………………………………………………………………18

五、软件仿真………………………………………………………………………………18

5.1系统仿真设计…………………………………………………………………………18

5.2系统原理图……………………………………………………………………………19

结与体会……………………………………………………………………………………20

附录……………………………………………………………………………………………21

参照文献………………………………………………………………………………………29

二、设计方案

2.1设计务任和规定

1、基本范畴-20℃——125℃

2、精度误差不大于0.5℃

3、LED数码直读显示

4、可以任意设定温度上下限报警功能.

2.2方案辩证

1温度计软件设计流程图:

2元器件选用:

单片机芯片选用:

方案一.

采用89C51芯片作为硬件核心,运用FlashROM,内部具备4KBROM存储空间,能于3V超低压工作,并且与MCS-51系列单片机完全兼容,但是运用于电路设计中时由于不具备ISP在线编程技术,当在对电路进行调试时,由于程序错误修改或对程序新增功能需要烧入程序时,对芯片多次拔插会对芯片导致一定损坏。

方案二:

采用AT89C51单片机与MCS-51系列单片机相比有两大优势:

第一,片内程序存储器采用闪存,使程序写入更加以便;第二,提供了更小尺寸芯片,使整个硬件电路体积更小,且管脚数目为20个,与MCS-51相比减少一倍,使理解更容易。

综上所述:

本课设中单片机芯片采用AT89C51。

温度传感器选用:

方案一:

采用热敏电阻传感器。

运用热敏电阻随温度变化而明显变化,能直接将温度变化转换为能量变化,进而制成温度计。

但是其测温传感器比较复杂,并且不易通过编制程序来控制测温精度,增大系统设计难度。

方案二:

采用DS18B20温度传感器。

DS18B20内部3脚(或8脚)封装;使用特有温度测量技术,将被测温度转换成数值信号;3.0~5.5V电源供电方式和寄生电源供电方式;ROM由64位二进制数字构成,共分为8个字节;RAM由9个字节高速暂存器和非易失性电擦写ROM构成。

综上所述:

温度传感器选用智能测温器件DS18B20。

本设计显示电路采用1602液晶显示模块芯片。

3系统最后设计方案:

综上各方案所述,对本次课设方案选定:

采用AT89C51作为主控制系统;1602液晶显示模块芯片作为温度数据显示装置;而智能温度传感器DS18B20器件作为测温电路重要构成某些。

至此,系统最后方案拟定。

三、设计方案总体设计框图

温度计电路设计总体设计方框图如图所示,控制器采用单片机AT89C51,温度传感器采用DS18B20,用1602液晶显示屏以串口传送数据实现温度显示。

3.1硬件电路框图:

图 总体设计方框图

3.2硬件电路概述:

系统由单片机最小系统、显示电路、按键、温度传感器等构成。

本电路是由AT89C2051单片机为控制核心,具备与MCS-51系列单片机完全兼容,程序加密等功能,带2KB字节可编程闪存,工作电压范畴为2.7~6V,全静态工作频率为0~24MHZ;显示电路由1602液晶显示模块芯片,可以进行多行显示;温度报警按键设为五个,可以显示华氏温度,调节高低报警温度;温度传感器电路重要由DS18B20测温器件构成,该器件重要功能有:

采用单总线技术;每只DS18B20具备一种独立不可修改64位序列号;低压供电,电源范畴为3~5V;测温范畴为-20℃~+125℃,误差为±0.5℃;复位电路是10K电阻构成上电自动复位。

3.3主控电路

单片机AT89C51具备低电压供电和体积小等特点,四个端口只需要两个口就能满足电路系统设计需要,很适合便携手持式产品设计使用系统可用二节电池供电。

晶振采用12MHZ。

复位电路采用上电加自动复位。

主控芯片AT89C51

晶振电路

复位电路

3.4显示电路

本设计显示电路采用1602液晶显示模块芯片,该芯片可现实16x2个字符,比此前七段数码管LED显示屏在显示字符数量上要多得多。

此外,由于1602芯片编程比较简朴,界面直观,因而更加易于使用者操作和观测。

1602A芯片接口信号阐明如下表:

1602A芯片接口信号阐明

图液晶显示电路

3.5报警温度调节电路

本系统一共设立了五个按键,k1键只是显示华氏温度,k4键按下不松开显示高低报警温度,松开后恢复显示正常温度,k2键和k3键是分别用来调节高低报警温度,k键控制调节时上调或下调。

详细调节如将高温报警温度调高,第一步将k4键按下不松,k键升起位置,调节k2键,则高温报警温度向上增长,反之亦然。

低温报警同理。

图报警点调节电路

3.6温度传感器及DS18B20测温原理

DS18B20温度传感器是美国DALLAS半导体公司最新推出一种改进型智能温度传感器,与老式热敏电阻等测温元件相比,它能直接读出被测温度,并且可依照实际规定通过简朴编程实现9-12位数字值读数方式。

DS18B20性能特点如下:

(1)独特单线接口仅需要一种端口引脚进行通信,DS18B20在与微解决器连接时仅需要一条口线即可实现微解决器与DS18B20双向通讯。

(2)DS18B20支持多点组网功能,各种DS18B20可以并联在惟一三线上,实现多点组网测温;

(3)不必外部器件,所有传感元件及转换电路集成在形如一只三极管集成电路内;

(4)可通过数据线供电,电压范畴为3.0-5.5V;

(5)零待机功耗;

(6)温度以9或12位数字,相应可辨别温度分别为0.5℃、0.25℃、0.125℃和0.0625℃,可实现高精度测温;

(7)顾客可定义报警设立;

(8)报警搜索命令辨认并标志超过程序限定温度(温度报警条件)器件;

(9)负电压特性,电源极性接反时,温度计不会因发热而烧毁,但不能正常工作;

(10)测量成果直接输出数字温度信号,以"一线总线"串行传送给CPU,同步可传送CRC校验码,具备极强抗干扰纠错能力

DS18B20采用3脚PR35封装或8脚SOIC封装,其引脚排列及内部构造框图如图及测温原理图如下所示:

图引脚排列

图内部构造框图

 

图DS18B20测温原理图

64位ROM构造开始8位是产品类型编号,接着是每个器件惟一序号,共有48位,最后8位是前面56位CRC检查码,这也是各种DS18B20可以采用一线进行通信因素。

温度报警触发器TH和TL,可通过软件写入户报警上下限。

DS18B20温度传感器内部存储器还涉及一种高速暂存RAM和一种非易失性可电擦除EERAM。

高速暂存RAM构造为8字节存储器,构造如图4所示。

头2个字节包括测得温度信息,第3和第4字节TH和TL拷贝,是易失,每次上电复位时被刷新。

第5个字节,为配备寄存器,它内容用于拟定温度值数字转换辨别率。

DS18B20工作时寄存器中辨别率转换为相应精度温度数值。

该字节各位定义如图5所示。

低5位始终为1,TM是工作模式位,用于设立DS18B20在工作模式还是在测试模式,DS18B20出厂时该位被设立为0,顾客不要去改动,R1和R0决定温度转换精度位数,来设立辨别率。

温度LSB

温度MSB

TH顾客字节1

TL顾客字节2

配备寄存器

保存

保存

保存

CRC

TM

R1

R0

1

1

1

1

1

图5DS18B20字节定义

DS18B20辨别率定义如表1所示

表1辨别率设立表

R0

R1

辨别率

最大温度转移时间

0

0

9位

96.75ms

0

1

10位

187.5ms

1

0

11位

375ms

1

1

12位

750ms

由表1可见,DS18B20温度转换时间比较长,并且辨别率越高,所需要温度数据转换时间越长。

因而,在实际应用中要将辨别率和转换时间权衡考虑。

主机控制DS18B20完毕温度转换过程是:

每一次读写之前都要对DS18B20进行复位,即将数据总线下拉500us,然后释放,DS18B20收到信号后等待16-60us左右,之后发出60-240us存在低脉冲,主CPU收到此此信号表达复位成功;复位成功后发送一条ROM指令,然后发送RAM指令,这样才干对DS18B20进行预订读写操作。

表2ROM指令集

指令

商定代码

功能

读ROM

33H

读DS18B20中编码

符合ROM

55H

发出此命令后,接着发出64位ROM编码,访问单线总线上与该编辑相相应DS18B20使之做出响应,为下一步对该DS18B20读写作准备

搜索ROM

0F0H

用于拟定挂接在同一总线上DS18B20个数和辨认64位ROM地址,为操作各器件作准备

跳过ROM

0CCH

忽视64位ROM地址,直接向DS18B20发送温度变换指令

告警搜索命令

0ECH

执行后,只有温度跳过设定值上限或下限片子才干做出反映

表3RAM指令集

指令

商定代码

功能

温度转换

44H

启动DS18B20进行温度转换

读暂存器

0BEH

读暂存器9个字节内容

写暂存器

4EH

将数据写入暂存器TH、TL字节

复制暂存器

48H

把暂存器TH、TL字节写到E2RAM中

重调E2RAM

0B8H

把E2RAM中TH、TL字节写到暂存器TH、TL字节

读供电方式

0B4H

启动DS18B20发送电源供电方式信号给主CPU

DS18B20测温原理是这这样,器件中低温度系数晶振振荡频率受温度影响很小,用于产生固定频率脉冲信号送给减法计数器1;高温度系数晶振随温度变化其振荡频率明显变化,所产生信号作为减法计数器2脉冲输入。

器件中尚有一种计数门,当计数门打开时,DS18B20就对低温度系数振荡器产生时钟脉冲进行计数进而完毕温度测量。

计数门启动时间由高温度系数振荡器来决定,每次测量前,一方面将最低温所相应一种基数分别置入减法计数器1、温度寄存器中,计数器1和温度寄存器被预置在最低温所相应一种基数值。

减法计数器1对低温度系数晶振产生脉冲信号进行减法计数,当减法计数器1预置值减到0时,温度寄存器值将加1,减法计数器1预置将重新被装入,减法计数器1重新开始对低温度系数晶振产生脉冲信号进行计数,如此循环直到减法计数器计数到0时,停止温度寄存器累加,此时温度寄存器中数值就是所测温度值。

其输出用于修正减法计数器预置值,只要计数器门仍未关闭就重复上述过程,直到温度寄存器值大体被测温度值。

测温电路

四、系统软件算法设计

整个系统是由硬件配合软件来实现,在硬件拟定后,编写软件功能也就基本定型了。

因此软件功能大体可分为两个某些:

一是监控,这也是系统核心某些,二是执行某些,完毕各个详细功能。

系统程序重要涉及主程序,读出温度子程序,温度转换命令子程序,计算温度子程序,显示数据刷新子程序等。

4.1主程序

主程序重要功能是负责温度实时显示、读出并解决DS18B20测量当前温度值,温度测量每1s进行一次。

这样可以在一秒之内测量一次被测温度,其程序流程见图所示。

 

图主程序流程图图读温度流程图

4.2读出温度子程序

读出温度子程序重要功能是读出RAM中9字节,在读出时需进行CRC校验,校验有错时不进行温度数据改写。

其程序流程图如图示

 

图温度转换流程图

4.3温度转换命令子程序

温度转换命令子程序重要是发温度转换开始命令,当采用12位辨别率时转换时间约为750ms,在本程序设计中采用1s显示程序延时法等待转换完毕。

温度转换命令子程序流程图如上图,图9所示

4.4计算温度子程序

计算温度子程序将RAM中读取值进行BCD码转换运算,并进行温度值正负鉴定,其程序流程图如图所示。

 

图 计算温度流程图 图 显示数据刷新流程图

4.5显示数据刷新子程序

显示数据刷新子程序重要是对显示缓冲器中显示数据进行刷新操作,当最高显示位为0时将符号显示位移入下一位。

程序流程图如图。

4.61602液晶显示

1602液晶显示流程图:

五、软件仿真

5.1系统仿真设计

本设计是在Proteus环境下进行仿真,仿真所用到器件有:

单片机AT89C51,DS1820温度传感器,蜂鸣器,液晶显示屏,某些电阻,电容等。

仿真成果如下:

显示屏显示传感器温度

高低报警温度

高温报警低温报警

报警时led灯提示

5.2系统原理图

 

六、总结与体会

通过将近三周单片机课程设计,终于完毕了我数字温度计设计,虽然没有完全达到设计规定,但从心底里说,还是高兴,毕竟这次设计把实物都做了出来,高兴之余不得不深思呀!

在本次设计过程中,我发现诸多问题,虽然此前还做过这样设计但这次设计真让我长进了诸多,单片机课程设计重点就在于软件算法设计,需要有很巧妙程序算法,虽然此前写过几次程序,但我觉写好一种程序并不是一件简朴事,举个例子,此前写那几次,数据加减时,我用都是BCD码,这一次,我所有用都是16进制数直接加减,显示解决时在用除法去删分,感觉效果比较好,有好多东西,只有咱们去试着做了,才干真正掌握,只学习理论有些东西是很难理解,更谈不上掌握。

从这次课程设计中,我真真正正意识到,在后来学习中,要理论联系实际,把咱们所学理论知识用到实际当中,学习单机片机更是如此,程序只有在经常写与读过程中才干提高,这就是我在这次课程设计中最大收获。

通过这次对数字温度计设计与制作,让我理解了设计电路程序,也让我理解了关于数字温度计原理与设计理念,要设计一种电路总要先用仿真仿真成功之后才实际接线。

但是最后成品却不一定与仿真时完全同样,由于,再实际接线中有着各种各样条件制约着。

并且,在仿真中无法成功电路接法,在实际中由于芯片自身特性而可以成功。

因此,在设计时应考虑两者差别,从中找出最适合设计办法。

通过这次学习,让我对各种电路均有了大概理解,因此说,坐而言不如立而行,对于这些电路还是应当自己动手实际操作才会有深刻理解。

从这次课程设计中,我真真正正意识到,在后来学习中,要理论联系实际,把咱们所学理论知识用到实际当中,学习单机片机更是如此,程序只有在经常写与读过程中才干提高,这就是我在这次课程设计中最大收获。

 

附录:

//******************************************************

#include

#include//shiyongyanshi

#include

#defineucharunsignedchar

#defineuintunsignedint

sbitDQ=P3^3;

sbitRS=P2^0;

sbitRW=P2^1;

sbitEN=P2^2;

sbitk=P1^0;

sbitk1=P1^4;

sbitk2=P1^5;

sbitk3=P1^6;

sbitk4=P1^7;

sbitled_red=P2^5;

sbitled_blue=P2^6;

sbitBEEP=P3^7;

ucharbz=1;

//BEEP=0;

ucharng=0;//fuhaobiaoshiwei

ucharTempBuffer[]={"TEMP:

"};

inttemp_value;//温度值

ucharcodedis_title[]={"--currenttemp--"};

voidxianshi_huashi();

uchargw=40;

chardw=10;

ucharxianshi_title[]={"TEMPALARM"};

ucharxianshi_baojing[]={"HI:

LO:

"};//34510``12

//----------------延时--------------------------------

voiddelayxus(uintx)

{

uchari;

while(x--)for(i=0;i<200;i++);

}

//*********************LCD控制********************

//读lcd状态

ucharread_lcd_state()

{

ucharstate;

RS=0;RW=1;EN=1;delayxus

(1);state=P0;EN=0;delayxus

(1);

returnstate;

}

//忙等待

voidlcd_busy_wait()

{

while((read_lcd_state()&0x80)==0x80);

delayxus(5);

}

//向LCD写数据

voidwrite_lcd_data(uchardat)

{

lcd_busy_wait();

RS=1;RW=0;EN=0;P0=dat;EN=1;delayxus

(1);EN=0;

}

//向LCD写指令

voidwrite_lcd_cmd(ucharcmd)

{lcd_busy_wait();

RS=0;RW=0;EN=0;P0=cmd;EN=1;delayxus

(1);EN=0;

}

//-----------------------------------------------------------------------------------------------------

//LCD初始化

voidinit_lcd()

{

write_lcd_c

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

当前位置:首页 > PPT模板 > 其它模板

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1