数字温度计设计报告毕业设计论文

数字温度计设计报告毕业设计论文
数字温度计设计报告毕业设计论文

数字温度计设计报告

学校:常州大学

院系:信息与电子工程系

班级:自动化141

姓名:肖磊蒋金林

指导老师:郑剑锋

时间:2016年12月1日

摘要

随着时代的进步和发展,单片机技术已经普及到我们生活、工作、科研、各个领域,已经成为一种比较成熟的技术 , 本文主要介绍了一个基于 89S51 单片机的测温系统,详细描述了利用数字温度传感器 DS18B20和时钟芯片DS1302 开发测温系统和时间系统的过程,并且通过芯片AT24C02进行数据掉电保存。重点对传感器在单片机下的硬件连接,软件编程以及各模块系统流程进行了详尽分析,特别是数字温度传感器 DS18B20和时钟芯片DS1302 的数据采集过程。对各部分的电路也一一进行了介绍,该系统可以方便的实现实现温度采集和时间显示,并可根据需要任意设定上下限报警温度,更改当前时间。它们使用起来相当方便,具有精度高、量程宽、灵敏度高、体积小、功耗低等优点,适合于我们日常生活和工、农业生产中的温度测量,也可以当作温度处理模块嵌入其它系统中,作为其他主系统的辅助扩展。 DS18B20 、DS1302与 AT89C51 结合实现最简温度,时间检测系统,该系统结构简单,抗干扰能力强,适合于恶劣环境下进行现场温度时间测量,有广泛的应用前景。

关键词:单片机DS18B20 温度传感器时钟芯片DS1302 AT24C02 AT89S52

目录

1 概述 (4)

1.1 课程设计的意义 (4)

1.2 设计的任务和要求 (4)

2 系统总体方案及硬件设计 (5)

2.1 数字温度计设计方案论证 (5)

2.1.1 方案一 (5)

2.1.2 方案二 (5)

2.2 系统总体设计 (6)

2.3 系统模块 (7)

2.3.1 主控制器 (7)

2.3.2 显示电路 (8)

2.3.3 温度传感器 (8)

2.3.4时钟芯片 ..................................................................................

2.3.5掉电数据保存电路……………………………………………………………..

2.3.6报警温度调整按键 (9)

3 系统软件算法分析 (10)

3.1 主程序流程图 (10)

3.2 读出温度子程序 (10)

3.3 温度转换命令子程序 (11)

3.4 计算温度子程序 (11)

3.5 显示数据刷新子程序 (11)

3.6 按键扫描处理子程序 (12)

4 实验仿真 (13)

5 总结与体会 (14)

参考文献 (15)

附 1 源程序代码 (16)

1概述

1.1数字温度计基本功能

1、能数字显示被测温度,测量温度范围0℃~100℃;

2、分辨率不低于0.5℃

3、带有计时和时间显示功能;

4、至少有高、低两路限温控制输出接口控制外部电路,实际制作时可以发光二

极管模拟显示其控制状态输出;

5、高、低两路限温控制点可在0℃~100℃范围内任意独立设置;

6、当温度达到高、低限温控制点发出声光报警。

扩展部分

1、提高温度测量精度,使分辨率不低于0.1℃;

2、自动顺时测量(测量间隔时间可调)并保存温度值和测量时间;

3、可以查询、回显存储器中自动测量的温度值和测量时刻;

4、多路温度巡检(至少两路)和多路温度、时间保存。

数字温度计框图

2 理论分析与计算

2.1 数字温度计设计方案论证

2.1 单片机的选择:

方案1:采用传统的STC89C52RC作为电机的控制核心。单片机算术运算功能强,软件编程灵活、自由度大,可用软件编程实现各种算法和逻辑控制,并且由于其功耗低、体积小、技术成熟和成本低等优点,使其在各个领域应用广泛。

方案2:采用STM32F103ZET6微控制器(ARM cortexM3内核),还带有非易失性512k Flash程序存储器。它是一种高性能、低功耗的32位CMOS微处理芯片,市场应用最多。其主要特点如下:512KB Flash ROM,72M的主频,片内集成AD、DA,以及具有DMA、SPI总线。

方案3:采用MSP430单片机,MSP430系列单片机是一个16位的单片机,采用了精简指令集(RISC)结构,具有丰富的寻址方式(7 种源操作数寻址、4 种目的操作数寻址)、简洁的27 条内核指令以及大量的模拟指令;大量的寄存器以及片内数据存储器都可参加多种运算;还有高效的查表处理指令。这些特点保证了可编制出高效率的源程序。

由于本系统对CPU运算速度要求不高,不需要执行很复杂的运算,加上成本上和队员各自的技术特点考虑,综合起来选STC89C52RC较适合本系统的要求。

2.2.温度传感器的选择

2.21. 方案一

由于本设计是测温电路,可以使用热敏电阻之类的器件利用其感温效应,在将随被测温度变化的电压或电流采集过来,进行 A/D 转换后,就可以用单片机进行数据的处理,在显示电路上,就可以将被测温度显示出来,这种设

计需要用到 A/D 转换电路,其中还涉及到电阻与温度的对应值的计算,感温电路比较麻烦。而且在对采集的信号进行放大时容易受温度的影响出现较大的偏差。

2.2 2 .方案二

进而考虑到用温度传感器,在单片机电路设计中,大多都是使用传感器,所以这是非常容易想到的,所以可以采用一只温度传感器 DS18B20,此传感器,可以很容易直接读取被测温度值,进行转换,电路简单,精度高,软硬件都以实现,而且使用单片机的接口便于系统的再扩展,满足设计要求。

2.2方案选择

从以上两种方案,很容易看出,采用方案二,电路比较简单,费用较低,可靠性高,软件设计也比较简单,故采用了方案二。

2.3 温度时间显示模块:

2.31. 方案1:使用液晶显示屏显示时间温度数字。液晶显示屏(LCD)具有轻薄短小、低耗电量、无辐射危险,平面直角显示以及影象稳定不闪烁等优势,可视面积大,画面效果好,分辨率高,抗干扰能力强等特点,但是液晶显示屏使用的温度范围很窄,正常工作温度范围为0℃~+55℃,存储温度范围-20℃~60℃。

2.32. 方案2:使用传统的LED数码管显示。数码管具有:低能耗、低损耗、低压、寿命长、耐老化、防晒、防潮、防火、防高(低)温,对外界环境要求低,易于维护,同时其精度比较高,称重轻,精确可靠,操作简单。但显示效果很差。

方案3:使用彩屏(TFT)显示时间温度数字,彩屏显示屏幕较大,所需代码冗长,处理不方便。

由于试题上说明显示只能采用数码管显示,故采用传统的LED数码管显示。

三键盘模块:

方案1:使用独立式键盘。独立式键盘是指直接用I/O口线构成的单个按键电路。独立式按键电路配置灵活,软件结构简单。

方案2:使用矩阵式键盘。矩阵式键盘是由行线和列线组成,按键位于行、列的交叉点上,行线、列线分别连接到按键开关的两端。其特点是简单且不增加成本,这种键盘适合按键数量较多的场合。

由于考虑到本系统所需的按键的不多,并且为了简化程序,选择独立式按键。

电路与程序设计

主控制器STC89C52RC

STC89C52RC单片机是宏晶科技推出的新一代高速、低功耗、超强抗干扰的单片机,指令代码完全兼容传统8051单片机,12时钟、机器周期和6时钟、机器周期可以任意选择。

主要特性如下:

●增强型8051单片机,6时钟、机器周期和12时钟、机器周期可以任意

选择,指令代码完全兼容传统8051单片机。

●工作电压:5.5V~3.3V

●工作频率范围:0~44MHz。

●用户应用程序空间为8K字节

●片上集成512字节RAM

●通用I/O口32个,复位后为:P1/P2/P3/P4是准双向口/弱上位,P0口

是漏极开路输出,作为总线扩展用时,不用加上拉电阻,作为I/O口用

时,需加上拉电阻。

●ISP(在系统可编程)/IAP(再应用可编程),无需专用编程器,无需专用仿

真器,可通过串口(RXD/P3.0,TXD/P3.1 )直接下载用户程序,数秒即可

完成一片。

●具有EEPROM功能

●具有看门狗功能

●共3个16位定时器/计数器。及定时器T0、T1、T2

●外部中断4路,下降沿中断或低电平触发电路,Power Down模式可由

外部中断低电平触发中断方式唤醒

●通用异步串行口(UART),还可用定时器实现多个UART

●工作温度范围:-40℃~+85℃(工业级)/0℃~75℃(商业级)

●PDIP封装

主控制器STC89C52RC电路图

温度探测单元:

DALLAS 最新单线数字温度传感器DS18B20是一种新型的“一线器件”,其体积更小、更适用于多种场合、且适用电压更宽、更经济。DALLAS 半导体公司的数字化温度传感器DS18B20是世界上第一片支持“一线总线”接口的温度传感器。温度测量范围为-55~+125 摄氏度,可编程为9位~12 位转换精度,测温分辨率可达0.0625摄氏度,分辨率设定参数以及用户设定的报警温度存储在EEPROM 中,掉电后依然保存。被测温度用符号扩展的16位数字量方式串行输出;其工作电源既可以在远端引入,也可以采用寄生电源方式产生;多个DS18B20可以并联到 3 根或 2 根线上,CPU只需一根端口线就能与诸多DS18B20 通信,占用微处理器的端口较少,可节省大量的引线和逻辑电路。因此用它来组成一个测温系统,具有线路简单,在一根通信线,可以挂很多这样的数字温度计,十分方便。

DS18B20 的性能特点如下:

●独特的单线接口方式,DS18B20在与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20的双向通讯

●DS18B20支持多点组网功能,多个DS18B20可以并联在唯一的三线上,实现组网多点测温

●DS18B20在使用中不需要任何外围元件,全部传感元件及转换电路集成在形如一只三极管的集成电路内

●适应电压范围更宽,电压范围:3.0~5.5V,在寄生电源方式下可由数据线供电

●测温范围-55℃~+125℃,精度为±0.5℃

●零待机功耗

●测量结果直接输出数字信号,以“一线总线”穿行传送给CPU,同时可传送CRC 校验位,具有极强的抗干扰纠错能力

●负电压特性,电源极性接反时,温度计不会因发热而烧毁,但不能正常工作以上特点使DS18B20非常适用与多点、远距离温度检测系统。

以上特点使DS18B20非常适用与多点、远距离温度检测系统。

DS18B20内部结构主要由四部分组成:64位光刻ROM、温度传感器、非挥发的温度报警触发器TH和TL、配置寄存器。DS18B20的管脚排列、各种封装形式如图 4.2 所示,DQ 为数据输入/输出引脚。开漏单总线接口引脚。当被用着在寄生电源下,也可以向器件提供电源;GND为地信号;VDD为可选择的VDD引脚。当工作于寄生电源时,此引脚必须接地。

2

DS18B20温度传感器接线图

外部时钟电路:

系统采用DS1302时钟芯片,DS1302是美国DALLAS公司推出的具有涓细电流充电功能的低功耗实时时钟芯片,它可以对年、月、日、星期、时、分、秒进行计时,还具有闰年补偿等多种功能,而且DS1302的使用寿命长,误差小;数字显示是采用的液晶显示屏来显示,可以同时显示年、月、日、星期、时、分、秒和温度等信息。此外,该电子时钟还具有时间校准等功能。

DS1302的性能特性:

●实时时钟,可对秒、分、时、日、周、月以及带闰年补偿的年进行比较;

●用于高速数据暂存的31*8位RAM;

●最少引脚的串行I/O;

● 2.5~5.5V电压工作范围;

● 2.5V时耗小于300nA;

●用于时钟或RAM数据读/写的单字节或多字节(脉冲方式)数据传送方

式;

●简单的三线接口。

时钟芯片DS1302与外围电路的连接:与MCS-51单片机的接口是由3条线来完成的,MCS-51单片机的P1.0与时钟芯片的数据传输端I/O相连,P1.1用来作为DS1302输入时钟SCLK控制端,P1.2控制DS1302的复位输入端RST。DS1302的X1和X2管脚外接标DS1302的复位引脚通过把RST输入驱动置高电平来启动所有的数据传送。 RST输入有两种功能:首先,RST接通控制逻辑,允许地址/命令序列送入移位寄存器;其次,RST提供了终止单字节或多字节

数据的传送手段。当RST为高电平时,所有的数据传送被初始化,允许对DS1302进行操作。如果在传送过程中置RST为低电平,则会终止此次数据传送,并且I/O引脚变为高阻态。上电运行时,在Vcc≥2.5V之前,RST必须保持低电平。只有在SCLK为低电平时,才能将RST置为高电平。

外部DS1302时钟电路接线图

外部存储电路:

系统兼有时间温度显示功能,对工作数据要进行掉电保护,并需要再硬件上增加掉电检测电路,但存在电池不可靠及拓展存储芯片占用单片机过多口线的缺点。采用具有I2C总线接口的串行EEPROM器件可很好的解决掉电数据保护问题。系统采用AT24C01数据存储芯片。

AT24C01性能特征:

1、与400KHz I2C 总线兼容;

2、1.8 到6.0 伏工作电压范围;

3、低功耗CMOS 技术;

4、写保护功能当WP 为高电平时进入写保护状态;

5、页写缓冲器;

6、自定时擦写周期;

7、1,000,000 编程/擦除周期;

8、可保存数据100 年;

外部AT24C01存储电路接线图

显示电路

设计主要使用数码管功能实现,显示部分硬件用8只数码管为显示管。前四个显示温度,后四个显示温度。这些数码管的共阴相连在一起通过在数码管的阳极加+5V电压或0V电压数码管形成不同的数字。

数码管性能特征:

1、低功耗CMOS 技术;

2、a~p数码管段选;

3、A~D数码管位选;

4、低功耗CMOS 技术;

数码管连线图

声光报警电路接线图:

按键功能:

A:温度,高温报警,低温报警切换。B:报警值加一;

C:报警值减一;

D:返回到当前温度;

E:时分之间切换;

F:时分加一;G:时分减一;

系统软件设计

数字温度计的测量温度程序主要包括5个方面的内容:一是单片机从DS1302中读取数据进行计数,二是利用按键进行时间温度上下限的调整,三是单片机中读取DS1302,EEPROM中的和DS18B20采集的数据在数码管上显示时间温度。

主程序流程图

主程序的主要功能是负责温度,时间的实时显示、读出并处理 DS18B20 的测量的当前温度值,DS1302的时间。

主程序流程图

相关文档
最新文档