基于单片机的温度显示报警器

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
(1)数码管表面不要用手触摸,不要用手去弄引角;
(2)焊接温度:260度;焊接时间:5S
(3)表面有保护膜的产品,可以在使用前撕下来。
3.4.2 LED数码管的引脚说明
这类数码管可以分为共阳极与共阴极两种,共阳极就是把所有LED的阳极连接到共同接点com,而每个LED的阴极分别为a、b、c、d、e、f、g及dp(小数点);共阴极则是把所有LED的阴极连接到共同接点com,而每个LED的阳极分别为a、b、c、d、e、f、g及dp(小数点),如下图所示。图中的8个LED分别与上面那个图中的A~DP各段相对应,通过控制各个LED的亮灭来显示数字。
由DS18B20组建的温度测量单元体积小,便于携带、安装。同时,DS18B20的输出为数字量,可以直接与单片机连接,无需后级A/D转换,控制简单。由于DS18B20具有单总线特性,便于扩展,可在一根总线上挂接多个DS18B20来组建温度测量网络。
图3-1-2 DS18B20的实物管脚分布图
(1)引脚功能说明
(3)DS18B20的测温原理
如图3-1-4所示,图中低温度系数振荡器的振荡频率受温度影响很小,用于产生固定频率的脉冲信号送给减法计数器1;高温度系数振荡器随温度变化其振荡频率明显改变,所产生的信号作为减法计数器2的脉冲输入。
图3-1-4 DS18B20测温原理图
图中还隐含着计数门,当计数门打开时,DS18B20就对低温度系数振荡器产生的时钟脉冲进行计数,进而完成温度测量。计数门的开启时间由高温度系数振荡器来决定,每次测量前,首先将-55℃所对应的一个基数分别置入减法计数器1和温度寄存器中,减法计数器和温度寄存器被预置在-55℃所对应的一个基数值。
当晶体振荡频率为12MHz时,RC的典型值为C=10μF,R=8.2KΩ。
3.2.3最小系统
图3-2-3单片机最小系统
3.3 DS18B20
DS18B20可以采用两种供电方式:一种是采用电源供电方式,此时DS18B20的第1引脚接地,第2引脚作为信号线,第3引脚接电源;另外一种是寄生电源供电方式
当DS18B20处于写存储器操作和温度A/D转换操作时,总线上必须有强的上拉,上拉开启时间最长为500ms。采用寄生电源供电方式时,VDD和GND端接地。由于单线制只有一根线,因此发送接口必须是三态的。
采用温度芯片DS18B20测量温度,可以体现系统芯片化这个趋势。部分功能电路的集成,使总体电路更简洁,搭建电路和焊接电路时更快。而且,集成块的使用,有效地避免外界的干扰,提高测量电路的精确度。所以集成芯片的使用将成为电路发展的一种趋势。本方案应用这一温度芯片,也是顺应这一趋势。
2.2
方案一:
采用传统的七段数码LED显示器。LED虽然价格便宜,且能够满足一般的要求显示0-9字符,但是现代的许多仪表、各种电子产品显示要求很高,在这些产品中已经逐渐被LCD所取代。

3.1
STC89C52RC单片机是宏晶科技推出的新一代高速/低功耗/超强抗干扰的单片机,指令代码完全兼容传统8051单片机,12时钟/机器周期和6时钟/机器周期可以任意选择。
3.1.1 STC89C52的介绍
STC89C52引脚如图3-1-1所示:
图3-1-1 STC89C52引脚图
3.1.2 DS18B20的介绍
通过观察表4-5可以发现,一个十进制与二进制间有很明显的关系,就是把二进制的高字节的低半字节和低字节的高半字节组成一字节,这个字节的二进制化为十进制后,就是温度值的百、十、个位字节,所以二进制值范围是0~F,转换成十进制小数就是0.0625的倍数(0~15倍)。这样需要4位的数码管来表示小数部分。实际应用不必这么高的精度,采用1位数码管来显示小数,可以精确到0.1℃。

1.1
采用89C51单片机和温度传感器DS18B20设计一种数字温度计,测量精度为0.1℃,由按键设定报警上下限值TH和TL,采用点阵字符型液晶模块作为数字温度计的显示器。当实测温度超过设定温度限制范围时,发出声光报警信号。
1.2
随着电子技术的发展,人们的生活日趋数字化,多功能的数字温度计可以给我们的生活带来很大的方便;支持“一线总线”接口的温度传感器简化了数字温度计的设计,降低了成本;以美国MAXIM/DALLAS半导体公司的单总线温度传感器DS18B20为核心,以ATMEL公司的AT89S51为控制器设计的DS18B20温度控制器结构简单、测温准确、具有一定控制功能的智能温度控制器。
计算机每次开始工作,CPU和系统中的其他部件都必须要有一个确定的初值,即复位状态。图3-2-2是单片机复位电路仿真图。
图3-2-2复位电路
单片机RST引脚是高电平有效。单片机在上电瞬间C1充电,RST引脚端出现正脉冲,只要RST断保持两个机械周期(大约10ms)以上的高电平,单片机就能复位。在单片机工作后,如果还想再次复位,只需按下开关,单片机就能重新变成复位状态。
3.2.1时钟电路
图3-2-1是时钟电路的PROTEUS仿真图。
图3-2-1时钟电路
单片机允许的振荡晶体可在1.2~24MHz之间选择,一般为11.0592MHz。电容C2,C3的取值对振荡频率输出的稳定性、大小及振荡电路起振速度有一定的影响,可在20~100pF之间选择,典型值位30pF。
3.2.2复位电路
2.1
方案一:
采用热敏电阻,可满足40摄氏度至90摄氏度测量范围,但热敏电阻精度、重复性、可靠性较差,对于检测1摄氏度的信号是不适用的。而且在温度测量系统中,采用单片温度传感器,比如AD590,LM35等.但这些芯片输出的都是模拟信号,这样就使得测温装置的结构较复杂.
方案二:
采用数字温度芯片DS18B20测量温度,输出信号全数字化。便于单片机处理及控制,省去传统的测温方法的很多外围电路。且该芯片的物理化学性很稳定,它能用做工业测温元件,此元件线形较好。在0—100摄氏度时,最大线形偏差小于1摄氏度。DS18B20的最大特点之一采用了单总线的数据传输,由数字温度计DS1820和微控制器AT89C51构成的温度测量装置,它直接输出温度的数字信号,可直接与计算机连接。这样,测温系统的结构就比较简单,体积也不大,且由于AT89C51可以带多个DSB1820,因此可以非常容易实现多点测量.轻松的组建传感器网络。
方案二:
采用LCD液晶屏进行显示。LCD液晶显示器是一种低压、微功耗的显示器件,只要2~3伏就可以工作,工作电流仅为几微安,是任何显示器无法比拟的,同时可以显示大量信息,除数字外,还可以显示文字、曲线,比传统的数码LED显示器显示的界面有了质的提高。在仪表和低功耗应用系统中得到了广泛的应用。优点为:

若采用一般温度传感器采集温度信号,则需要设计信号调理电路、A/D转换及相应的接口电路,才能把传感器输出的模拟信号转换成数字信号送到计算机去处理。这样,由于各种因素会造成检测系统较大的偏差;又因为检测环境复杂及各种干扰的影响,会使检测系统的稳定性和可靠性下降。所以温度检测系统的设计的关键在于:温度传感器的选择。温度传感器应用范围广泛、使用数量庞大,也高居各类传感器之首。
(1)由于数码管价格便宜且容易驱动。
(2)功率消耗小,相比而言数码管显示器的主要功耗在内部电极和驱动IC上,因而耗电量比其他器件要小很多。
虽然LCD液晶屏的功能强大,但数码管的足以实现温度的显示,所以在本设计中采用数码管显示。
2.3
对于单片机的选择,可以考虑使用8031与8051系列,由于8031没有内部RAM,系统又需要大量内存存储数据,因而不适用。STC89C52是STC公司生产的一种低功耗高性能CMOS8位微控制器,具有8k在系统可编程Flash储存器。其使用经典的MCS-51内核,但做了很多的改进使得芯片具有传统51单片机不具备的功能。在芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使得STC89C52为众多嵌入式控制应用系统提供高灵活超有效的解决方案。所以这次选择STC89C52。
减法计数器1对低温度系数振荡器产生的脉冲信号进行减法计数,当减法计数器1的预置减到0时,温度寄存器的值将加1,减法计数器1的预置值将重新被装入,并重新开始对低温度系数振荡器产生的脉冲信号进行计数。如此循环,直到减法计数器2计数到0时,停止温度计数器值的累加,此时温度寄存器中的数值就是所测温度值。图3-1-4中的斜率累加器用于补偿和修正测温过程的非线形性,直到温度寄存器达到被测温度值。
GND是地址信号;
DQ是数据输入/输出引脚,开漏单总线接口引脚,当被用在寄生电源下,也可以向器件提供电源;
VDD为外接供电电源输入端(在寄生电源接线方式时接地)。
(2)DS18B20内部结构及功能
图3-1-3 DS18B20内部结构
DS18B20采用3脚PR—35封装或8脚SOIC封装,其内部结构如3.1-3图所示,主要包括:寄生电源,温度传感器,64位ROM和单总线接口,存放中间数据的高速暂存器RAM,用于存储用户设定温度上下限值的TH和TL触发器,存储与控制逻辑,8位循环冗余校验码(CRC)发生器等7部分。如上图3-1-3所示
读出温度子程序流程图如图4-2所示:
图4-2读出温度子程序流程图
4.3
温度转换命令子程序主要是发温度转换开始命令,当采用12位分辨率时,转换时间约为750ms。在本程序设计中,采用1s显示程序延时法等待转换的完成。温度转换命令子程序流程图如图4-3所示:
图4-3温度转换命令子程序流程图
4.4
计算温度子程序将RAM中读取值进行BCD码的转换运算,并进行温度值正负的判定。计算温度子程序流程图如图4-4所示:
图4-4计算温度子程序流程图
4.5
从DS18B20读取出的二进制值必须转换成十进制值,才能用于字符的显示。DS18B20的转换精度为9~12位,为了提高精度采用12位。在采用12位转换精度时,温度寄存器里的值是以0.0625为步进的,即温度值为寄存器里的二进制值乘以0.0625,就是实际的十进制温度值。
3.4
3.4.1 LED
图3-4-1数码管
数码管使用条件:
a、段及小数点上加限流ຫໍສະໝຸດ Baidu阻;
b、使用电压:段:根据发光颜色决定;小数点:根据发光颜色决定;
c、使用电流:静态:总电流80mA(每段10mA);
动态:平均电流4-5mA;
峰值电流100mA;
上面这个只是七段数码管引脚图,其中共阳极数码管引脚图和共阴极的是一样的,4位数码管引脚图数码管使用注意事项说明:
许多情况下需要测量温度参数。通常测温系统的主要器件是热敏电阻,由于它体积小、重复性好、测量方法简单,所以在测温系统中广泛应用。但采用热敏电阻的测温系统需要A/D转换,而且测量精度不高。本文采用Dallas公司生产的一种新型温度传感器DS18B20,它集温度测量、A/D转换于一体,其测量范围宽(-55℃~+125℃),精度高(0.0625℃),DS18B20是一款具有单总线结构的器件。
图3-4-2(1)共阳数码管内部结构
图3-4-2(2)共阴数码管内部结构

4.1
主程序主要功能是负责温度的实时显示、读出处理DS18B20的测量温度值。
主程序流程图如图4-1所示:
图4-1主程序流程图
4.2
读出温度子程序的主要功能是读出RAM中的9字节。在读出时须进行CRC校验,校验有错时不进行温度数据的改写。
另外,DS18B20单线通信功能是分时完成的,有严格的时隙概念,因此读/写时序很重要。系统对DS18B20的各种操作必须按协议进行。操作协议为:初始化DS18B20(发复位脉冲→发ROM功能命令→发存储器操作命令→处理数据。
3.2
单片机最小系统就是指能使单片机工作的最少的器件构成的系统。因为单片机已经包含了数据存储器和程序存储器,所以只要在其外部加上时钟电路和复位电路就可以构成单片机最小系统。
本课题研究的重要意义在于生产过程中随着科技的不断发展,现代社会对各种信息参数的准确度和精确度的要求都有了几何级的增长,而如何准确而又迅速的获得这些参数,就需要受制于现代信息基础的发展水平。在三大信息信息采集(即传感器技术)、信息传输(通信技术)和信息处理(计算机技术)中,传感器属于信息技术的前沿尖端产品,尤其是数字温度传感器技术,在我国各领域已经应用的非常广泛可以说是渗透到社会的每一个领域,与人民的生活和环境的温度息息相关。
相关文档
最新文档