温度传感器的设计与实现 电气工程管理专业_第1页
温度传感器的设计与实现 电气工程管理专业_第2页
温度传感器的设计与实现 电气工程管理专业_第3页
温度传感器的设计与实现 电气工程管理专业_第4页
温度传感器的设计与实现 电气工程管理专业_第5页
免费预览已结束,剩余22页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1 引言在当今社会,对各种信息参数的准确性和精确性的要求越来越强烈。在今天的三个最重要的信息收集技术中,属于最顶端的是传感器技术,尤其是温度传感器技术的应用非常广泛。可以说,它涵盖了社会的各个方面,如在工业生产中,必须定期采集设备的运行温度。所以,温度采集方面的深层次研究在报警技术中发挥了巨大的作用。要向实现对温度的准确测定,必须在温度传感器上下足功夫。过去一直使用的分立式温度传感器可以发挥模拟集成作用的温度传感器可以发挥智能集成作用的温度传感器。从1990年开始,数字温度传感器被人们发现并运用,成为微电子,计算机技术和自动检测技术的高潮。具体功能是输出温度数据以适应各种微控制器。科学发展使人

2、们对传感器的功能要求越来越高。从集成到智能和网络化,它正在迅速发展。并且高科技技术的发展以及人们对总线可靠性要求的提高,加快了虚拟传感器技术研发以及单片温度测量系统的开发等。在这里,本课题会详细研究集成温度传感器DS18 B20中的基本构成要素,全面探讨它的基本控制功能,对STC89 C52单片机运行原理进行分析,探究数字温控装置的功能和程序设计。易于控制,温度的输出形式主要是数字,这种途径基本被运用在那些严格要求温度范围的情况。当然,它也被广泛地使用在学校的实验室中。温度控制器中常用的单片机类型是STC89C52,普遍使用的温度测量传感器形式主要是DALLAS DS18B20,通过数码管的形

3、式来实现温度显示。 2 设计内容及性能指标该设计主要基于单片温度报警系统,并着重于其硬件和软件设计。详细描述了功能模块。STC89C52 MCU实时检测温度传感器DS18B20的状态,并处理DS18820C收集的温度数据。上电后,数码管显示当前的环境温度值。使用按钮设置高温和低温报警值。蜂鸣器鸣响,在报警灯亮起来的时候,温度检测准确值将会始终维持在0.1度左右。此外,系统可以发挥掉电保存的基本功能,由于很多的数据都会在EEPOM中进行存储,设置界面显示之后,若按钮没有被及时地按下,则将要自行退出。3 系统方案比较、设计与论证从系统的基本内容来看,大致包括这样的几个内容:首先是温度采集,其次是温

4、度设定,最后是状态显示。下面将进行详细说明:3.1 主控制器模块方案1:控制器的形式是CPLD。它能够发挥多个不同的逻辑功能,如宽范围,高密度,小尺寸,高稳定性,丰富的IO资源,以及易于扩展的功能。并行的输入输出被使用的方案,不仅对系统的速度有所提升,而且容易应用于具有非常大的控制系统中。但是另一方面,此系统对于逻辑功能的要求并不很高。因此,基于经济成本的考虑,我们暂且不使用这个方案。方案2:在本课题中,系统的核心内容是STC89C52 MCU,控制温度报警功能,完成需求中的性能指标。通常,该系统侧重于温度和报警功能的自动显示。通过这种方式,MCU能够实现对不同资源的合理配置,在控制性能上较为

5、强大。此外,它在寻址操作功能上也发挥了较大的优势,由于低价格的特征,受到了人们的青睐。对于位操作指令而言,STC89 C52微控制器也有很大的优势,I / O端口可通过位寻址。对于这种设计也足够了,应该提到的是,STC89 C52微控制器的使用成本非常少。3.2 温度测量方案1:温度收集功能的实现由数字温度传感器DS18B20实现,输出信号的种类全部是数字信号。能够有效地管理与控制单片机,基本消除了过去测量上的额外电路。该芯片的物化性质非常稳定,可用做工业温度测量元件,该元件具有更好的线形。偏差始终都比1小得多。对于DS18 B20技术而言,最大的优势在于单总线数据传输行为的使用,温度测量设备

6、中包含了两大器件:首先是STC89 C52,其次是DS18 B20。因此,测温系统所发挥的基本功能非常简单,它具有较小的体积。通过单片机来实现了控制功能,软件编程的自由度非常高,软件编程的功能不仅在于多种算法的实现,也在于实现逻辑控制功能。从它的实际运行原理来看,在硬件安装上非常简单化。DS18 B20在控制电路上具有一定的独立性,当然也能够通过PC上传数据。方案2: 温度的测量主要借助热电偶温度差来实现,通过低温热电偶技术来实现对温度的有效检测,热电偶的构成要素是具有不同性质的2个类似金属导体。而热电偶所引起的热电势通常包含的要素是:首先是接触电位,其次是单个导体具有的温差电位。通过对此处电

7、压的准确测定来推断检测中的实际温度。数据采集系统中,A / D功能的单片微计算机来收集随测量温度变化的电压或电流。 使用A / D转换后,数据可由单片机处理。被测温度将全部显现。热电偶的最大优势是它的工作温度范围非常宽,同时具有极小的尺寸。但是另一方面,它们的劣势不仅体现在较低的输出电压上,还体现在较大的噪声上等。此外,A / D转换电路对于温度测量设计起到了巨大的作用,温度传感电路较为复杂。图1 热电偶电路图从上述两种方案中,很容易看出第二种方案的温度测量装置可以测量宽温度范围和较小体积,但具有较大的线性误差。由于第一种方案具有较高的精准性,且在实现过程中显得非常容易,在这里主要使用第一种方

8、案。3.3 设置温度方案1:设定温度过程,主要是通过键盘来实现,键盘上的第一个按钮的目的是复位,第二个是功能设置按钮,第三个是加按钮,第四个减按钮。 四个按钮更简单,只设置了4个接口,应用起来较为简单。方案2: 键盘输入的形式是4*4矩阵,按键数量多,有许多用不到的浪费,它需要用到8个接口。综上所述,我们选择第一种方案。3.4 显示模块方案1: 用数码管进行显示。数码管已被广泛使用,因为它简单明了,实用且便宜。方案 2:用LCD液晶进行显示。LCD在清晰度方面优于数码管,显示内容多样,具有较多的显示信息,在显示速度上比其他的形式更快,应用非常广泛。 但在本系统中,无需显示所有的信息,只要显示数

9、字即可,且LCD液晶使用成本较高。总的来看,我们使用方案13.5 电源选取 实施系统工作我们考虑了以下选项为系统供电。方案1:系统供电来源是5V蓄电池。 但是由于其具有较大的尺寸,难以操作,因此不使用这个方案。方案2:通过电池来提供电源,实验表明了它具有较高的使用性能,与系统的电路设计要求相符合,且使用成本较低。方案3: 通过USB线来和USB端连接直接供电,方便展示基本是花费很少就能完成,非常好。因此,采用方案34 系统器件选择1.温度传感器的选择 因为大大多数的热敏电阻首先会进行电压的测量,然后变为相应的温度,因此需要更多的外部元件,并且硬件电路更复杂,并且制造成本也增加。该产品使用DAL

10、LAS型的传感器,常用的辅助测量元件是DS18B20。 外部封装形式 传感器电路图5 硬件实现及单元电路设计5.1 主控制模块STC89c52单片机的介绍STC89C52是以80c51为核心的,其构成与80c51相同。 引脚共有40个,同时包含了1个全双工异步串行口,优先级与中断源的数量分别是2个与5个,8位并行I/O端口的总数量是4个, 16位计数器与定时器的总数量是2。在89C52单片机系统中,主要由以下两项完成的:其一是具有128B的数据存储器,其二是具有4K的程序存储器。图4STC89C52单片机主要特性1. CPU是8 位的。2. CPU里面的存储器RAM(128 B),用于存储可读

11、/写的数据。 例如,操作的中间值,最终值和要显示的数据,STC89系列MCU提供始终比1 K的RAM大得多。3.片内程序存储器ROM不仅能够发挥存储程序的作用,也可以对原始数据进行记录。但部分单片机内部并没有任何的ROM。STC89系列中包含了32K和64K闪存,可供用户选择。4.四个8位并行I/O接口P0P3,其中每一个接口的功能都能实现输入和输出5.两个定时器/计数器,每个定时器/计数器可设置为计数外部事件计数功能。两个计数器以及定时器,以实现计数功能,还有定时功能,而且可以控制计算机通过计数器和定时器得到的结果来实现。现有的52单片机控制器有16位定时器和计数器,是为了在设计串行通信时得

12、到方便。6. 五个属于中断源范畴的中断控制体系。7. MCU中全双工UART(通用异步接收发送器)的串行I / O接口的功能是启用MCU之间的多个串行通信。8. 单片机芯片内部存在的振荡器,又或者存在时钟发生电路。若石英晶体必须进行外部扩展。 图4-1单片主控电路部分引脚说明:1、时钟电路引脚XTAL1 和XTAL2:XTAL2(18 脚):对于89C52单片机而言,与高增益的反相放大器输出相一致;与微调电容形成了很好的连接。在外部时钟电路的使用过程中,它会保证对外部时钟信号的有效输出。在确定89C52的振荡器电路运行状态的时候,通过示波器的形式来实现对XTAL2端运行信息的查询,以确定脉冲信

13、号输出情况。XTAL1(19 脚):若采取外部的形式,则必须将其接地;与外部晶体临近,同时衔接于微调电容器。2、控制信号引脚RST,ALE,PSEN 和EA:RST/VPD(9 脚):高电平有效,保持备用电源输入的形式。如果Vcc出现错误,且特定的低电平+ 5V电源会发生转化从而成为高电平,以这种方式运行二十四个时钟震荡周期也就是2个机器周期。 上述过程就是复位的过程。 VPD也是RST引脚具备的能力,引脚可以和复位端相连,给RAM供电,保障储存在RAM信息不会因为突然的断电而丢失,能够在经过RST操作之后继续运行。ALE/PROG(30 脚): 允许地址存储的信号端。ALE引脚在89C52

14、单片机运作时通常发出的都是正脉冲信号。当处理器访问片外存储器时,ALE输出信号用作锁存低8位地址的控制信号。ALE端脉冲是振荡频率的1/6发送出来,那么说明片外存储器没有正常访问,所以ALE信号能用成外部输出时钟或定时信号。可以使用示波器检测ALE端有无产生脉冲信号输出来确认89C52单片机的质量, 倘若脉冲信号可以发出,那么89C52 单片机就不存在问题。ALE侧的负载驱动的运行依赖于八个LS型TTL(低功率非常快的TTL)负载来实现的。当使用片上4KB EPROM编程8951(固化程序)时,该引脚的第二个用途PROG用作编程脉冲输入。PSEN(29 脚): 允许程序存储输出信号端。在接触片

15、外程序存储器的过程中,这个终端会按照一定的频率发送负脉冲从而实现获得片外存储器的信息的功能。该脚连接到EPROM的SEN端子PSEN端子,可以访问存储在EPROM / ROM里的信息。 PSEN 端也具有运行8个LS 型TTL 负载的能力。要在89C52小型系统上电后检测CPU是否可以读取EPROM / ROM中的命令代码,您还可以使用示波器检测PSEN端子有没有输出脉冲。倘若检测到了脉冲就表示机器顺利运作。EA/Vpp(31 脚):允许输入/固化编程电压输入的外部程序存储器地址。如果是高电平连接到的EA引脚上,CPU只会读取片内EPROM / ROM的指令,然后按照内部程序存储器里存储的指令

16、工作。然而如果程序计数器也就是PC中的数值大于0 FFFH(89 K52是4 K),那么片外程序存储器里的程序就会自己启动运作。如果是低电平也就是接地状态连接EA引脚的话,CPU会读取外部EPROM / ROM且按照外部程序存储器里保存的指令运作,而不管片上程序存储器如何。对于没有片上ROM的8031或者8032,要在EA引脚保持低电平的前提下,增加外接EPROM。 这个引脚的其他作用是当Vpp被编程为施加更高的编程电压(通常为12V至21V)时,Vpp是8751片内EPROM的输入。3、输入/输出端口P0/P1/P2/P3:P0口(P0.0P0.7,3932 脚): P0端口是开漏8位准双向

17、I / O接口。当用作开漏输出端口的情况下,各位都能够运作八个LS型TTL负载。如果P0端口可以作为输入端口发挥作用,就能够把数字1传输到地址为80 H的端口锁存器。在这个时候,端口P0出的引脚都能够发挥高阻抗的作用因为它们都处在悬空状态。准双向端口意味着要想利用输入端口就要进行写入。如果通过CPU读取片外存储器的内容,P0端口是由八位数据以及低八位地址组成的多路复用总线。 在上述过程中,P0口存在的上拉电阻是能够使用的。P1口(P1.0P1.7,18 脚):端口P1是一个8位准双向I / O接口,带有内部上拉电阻。 P1口每位都可以使用4个LS 型TTL 负载。如果输入端口使用的是P1端口,

18、它应第一步是把数字1传输到90H P1端口。P2口(P2.0P2.7,2128 脚):端口P2是一个8位准双向I / O接口,带有内部上拉电阻。 P口各位都能够使用4个LS 型TTL 负载。如果读取片外EPROM / RAM中的数据,就会向外输出高8位的地址。P3口(P3.0P3.7,1017 脚):P3端口中存在有效的内部上拉电阻,是一个8位8位双向I / O端口。 P3口的各位都可以使用4个LS型TTL负载。 P3端口有着自己的独特之处,其各个引脚都具备额外的能力,见下文:(3) 89C52单片机的中断系统 STC89C52 有6个中断源:两个外部中断功能( INT0和 INT1),三个定

19、时器中断器(定时器0,1,2)和串行中断每个中断源可由特殊寄存器 IE设置或清除相关的中断允许控制位分别变为有效或无效。IE还有一个允许总控制位EA的中断,它可以立即停止所有中断。 允许定时器2由寄存器T2CON中的TF2和EXF2的或触发。程序进入中断服务后,可以通过硬件清除这些标志。实际上,中断服务程序必须确定它是TF2还是EXF2有效中断,并且该标志也必须由软件清零。(4)89C52单片机的定时/计数器定时扫描,定时输出等时序控制行为都存在于MCU系统内。 有时还要统计外部事件的数量。89C52单片机的T0和T1可以统计外部事件的数量还能够发挥时序控制的效果,此外T1还能够用作串口波特率

20、发生器。晶振特性如图2所示,STC89C52微控制器有一个反相放大器,构成内部振荡器。石英晶体和陶瓷谐振器可以一起使用以形成自激振荡器。 自激振荡器原理图5.2 显示模块电路 数字显示器采用四位数码管。 关闭位选择,打开另一位,然后发送相应的段代码,然后打开数码管,每次选择开关时,时间间隔小于20毫秒显示电路如图5图5 数码管显示数码管由七个发光二极管组成,形成日本字形。 形成方式可以是共阴极或共阳极。 这就是它的工作原理.基本的半导体数字管由七条发光二极管(LED)组成,如图1所示。 可以在屏幕上显示”09”和一些简单的符号。此外,考虑到了小数点的显示方法,加入了点状发光二极管的部分,所以总

21、共由八个LED构成了整个数字管。 上述LED管的名称分别是” a, b, c, d, e, f, g, dp”根据LED电极的连接方式,数码管分为两种类型:普通数码管和共阴极数码管。把发光二极管的阴极相连以形成共阴极(COM)的数字管。当应用共阴极数字管时,公共极COM应连接到地线GND。当段的阳极为低电平时,相应的二极管不亮。 连接如图3所示。阳阳数码管是指将所有LED的阳极连接在一起成为共阳极(COM)的数码管。使用普通数码管时,公共极COM应连接到+ 5V。 当场的阴极高时,相应的场不发光。5.3 数码管显示驱动电路通过三极管9012启动四位数字管既能够减少成本还十分方便。图6 驱动电路

22、5.4 温度传感器(DS18B20)电路5.4.1 DS18B20基本介绍DS18 B20传感器是DALLAS Semiconductor的第一款温度传感器,支持“一线总线”接口。它有着很强的抗干扰效果,且能耗低,性能好,体积小,可以装载微处理器的特征。采集温度可以直接转换为由处理器处理的串行数字信号。这个传感器的特色在于可以执行精确的温度 - 数字转换,I / O口需要有足够的能量才能正常的进行温度转换。温度转换的过程中传感器DS18B20往往通过1mA的电流,如果进行的是多点温度测量也就是把很多温度传感器都加入到一条 I/ O线运作, 其中功能的装置是4.7 K的上拉电阻,因此难以供应充足

23、的能量,这会导致温度或温度不发生变化。工作电源VCC必须保证在5V温度的读取:DS18 B20传感器的初始设置是12位,在温度读取的过程总需要读取16位,多以后方的11位数转换为十进制并乘以0.0625以获得测量温度。 还要进行数字正度的判断。 前5位符号位的大小是0就代表温度是正。DS18B20的初始化: 1. 第一步是要把将数据线调整到高电平“1”。2.延迟(将时间尽可能压缩,没有明确的要求)。3. 数据线降低到低电平“0”的状态。4. 延迟750s(这个延迟可以在480-960s的范围内)。5.数据线调整到高电平“1”的状态。6.延迟等待(倘若成果实现初始化,DS18B20返回的低电平“

24、0”在15到60毫秒内生成。 按照所处的状态,可以证明其存在,然而需要特别留意的是等待是由限制的,如果长时间处于等待状态程序会发生无限循环,所以需要超时控制措施的存在。7.倘若CPU在数据线获得的数据是低电平“0”,则仍需要延迟及其延迟从高电平的时候开始进行计算(步骤(5)中所需要的时间在480s以上)。8.把数据线调整到高电平“1”整个程序完成。 DS18B20的写操作: 1. 数据线先调整到低电平“0”的状态。 2. 延时最终准确的时长是15s。3. 传输字节的顺序是由低位至高位(每次传输1位)。4. 延时时长是45s。 5. 数据线调整到高电平状态。6. 再循环(1)至(6)的步骤使字节

25、能够都传输完毕。7. 再把数据线调整到高电平状态。DS18B20的读操作:1. 把数据线调整到高电平“1”。2. 延时时长是2s。3. 把数据线调整到低电平状态“0”。4. 延时时间15s。5. 把数据线调整为高电平状态“1”。6. 延时时间15s。7. 延时30微妙 图7 传感器电路引脚图5.4.2 DS18B20控制方法DS18B20具有6条控制命令:5.4.3 DS18B20与单片机的典型接口设计DS18B20传感器具有温度测量简单,测温精度高,连接方便,线路占用少等优点。 连接Dsl8B20和MCU的硬件有两种选择:首先,Vcc连接到外部电源,GND接地,I0连接到微控制器的I0线;

26、第二种是使用寄生电源,此时,UDD和GND都接地,I0连接到微控制器I0。 无论电源模式如何,I0线应连接到约4.7k Q的上拉电阻。5.4.4 DS18B20供电方式(1) DS18B20寄生电源供电方式:DS18B20的能量来源是单线信号线:如果信号线的状态是低电平,那么寄生电源(电容器)的能量发生损耗,电容器充电进入充电状态,直至信号线恢复高电平状态。如果信号线 DQ的状态是高电平,那么能量存在于内部电容器处。寄生电源的形式有下列优点: 1) 电路得到简化,测温过程只需要IO口2) 不需要本地电源的存在就可以实现远距离测温3) 读取ROM时可以不存在普通电源如果DS18 B20传感器可以

27、完成准确的温度变化过程,IO线的工作需要充足的能量供应。因为温度转换时的各 DS18 B20的电流只有1 m mA,所以如果很多温度传感器都位于一样的IO线实现多点温度监测, 单独的4.7 K上拉电阻的能量供应不足,这会导致温度差异。因此,此电路不可以用于电池供电系统,可以用于测量温度传感器的温度。但是该电路的工作电源VCC确保在5V。(2) DS18B20寄生电源强上拉供电方式: 为了使DS18 B20传感器在动态转换周期内获得足够的电流供应,应将其进行温度转换或复制到E2存储器操作。在发出涉及复制到E2存储器或开始温度转换的任何指令后,使用MOSFET将IO线拉至VCC可提供足够的电流。

28、务必将IO线更改为强上拉状态,最长可达10S。 (3) DS18B20传感器的外部电源供电方式: 在外部电源模式下,DS18 B20由VDD引脚供电,其VDD端子由3至5.5 V电源供电。此时不会发生电源电流不足的现象,不需强上拉I/O口,且VDD引线位于总线上,提高转化精度,从理论上来讲,VDD引线可以同时连接几台DS18 B20传感器。形成多点测温系统。 DS18B20外部电源供电方式 DS18B20温度转换期间的强上拉供电(寄生电源方式) 5.4.5 DS18B20 的内部结构 储存中间数据的高速寄存器、64位激光ROM单线接口、温度传感器、寄生电源共同组成DS18B20的内部结构。(中

29、间RAM)。TH和TL触发存储和控制逻辑以及8位循环冗余校验码(CRC)生成器用于存储用户设置的温度上限和下限。前8位位产品编号,后8位是之前56位循环冗余校验码,中间48位是DS18B20传感器的序列号,即为64位光刻ROM的序列。光刻R0M的目的是使每个DS18B20不同,这样可以达到在一条总线上连接多个DS18B20的目的。暂存器存储器包含八个连续字节,首个字节为温度的低8位,次个字节是温度的高8位,这两个字节代表温度信号。第三和第四个字节是TH,TL的易失性副本,第五个字节是结构寄存器的易失性副本。上电复位时第3、4、5字节的内容更新,内部计算由第六个字节、第七个字节、第八个字节共同完

30、成。第9个字节是冗余检验字节。C64 位ROM和单线接口高速缓存存储器与控制逻辑温度传感器高温触发器TH低温触发器TL配置寄存器8位CRC发生器Vdd5.4.6 DS18B20 的测温原理 计数器2的脉冲输入是高温系数晶体振荡器的信号,其信号的振荡频率随着温度变化而变化。温度寄存器与计数器1都预设为对应于-55C的基值。计数器1采用减法计数的方式计算低温度系数晶体振荡器的脉冲信号,计数器1的预设数量降低至零时,其预设数量再次被填充,温度寄存器的数值加一,计数器1进入新的循环,计算低温度系数晶体振荡器中的脉冲信号。当计数器2为零时,计数循环停止,温度寄存器停止数字的累积,温度寄存器中的数字是测量

31、的温度。在常温测量下,DS18B20的温度分辨率为0.5摄氏度。首先使用DS18 B20读取暂存器命令(BEH)以0.5C的分辨率读取温度测量值。然后移除测量结果的最低有效位( LSB)以获得测量的实际温度的整数部分 TZ,然后使用 BEH指令获取计数器1的计数残值 CS和每度的计数值 CD。考虑到DS18B20的测量温度的整数部分在0.25C和0.75C之间的关系作为进位限制,实际温度TS可以通过以下公式计算: TS=(TZ0.25) (CDCS)CD 。 5.4.7 告警信号: DS18B20将温度转换为数字信号,并将测得的数值与TH和TL进行比较。 如果T TH或T TL,则设置设备中的

32、警报标志,然后响应来自主机的警报搜索命令。 这允许测量温度和警报搜索。 如果温度测量点超出限制,主机可以使用警报搜索命令识别被警告的设备,然后读取其序列号,然后不必查看非警报设备。 5.4.8 CRC 的产生: 循环冗余校验(CRC)出现在64位ROM的最高有效字节中。 主机依靠ROM的前56位来计算CRC值,然后检查存储在DS18B20中的CRC值,以验证主机接收的ROM数据是否正确。 CRC 的函数表达式为: CRC=XXX1。为了确保存储数据的传输没有错误,DS18B20需要根据暂存器中的数据为主机生成8位CRC。5.4.9 DS18B20使用中注意事项 DS18B20传感器在使用时出现

33、的问题: (1)硬件成本较低,必须依靠软件加以补偿,由于微处理器与DS18B20的数据传输模式为串行数据传输,读取和写入 DS18 B20的程序操作时,请务必读写时序,才能准确的读取测量的结果(2)在DS18 B20的许多文章中,没有提到在单一总线上挂起的DS18 B20的数量。当使用多点温度测量系统时,如果总线上有超过8个DS18B20,则微处理器会出现总线驱动问题。(3) 连接DS18B20的总线电缆是有长度限制的。当正常通信线路超出一定距离时,得到的温度数据中会出现错误。用有屏蔽线的双绞线换掉总线时,正常通信长度到150米。这种是因为总线分布电容引起的信号波形失真引起的。(4) 就死循环

34、出现的情况:传感器的测温程序中,程序接受传感器形成的温度转换指令并一直等待DS18B20的反馈信号。程序读取指令之后步入死循环。需要在DS18B20硬件连接和软件设计中解决这种情况。5.5 蜂鸣器、发光二极管报警电图8蜂鸣器、发光二极管驱动引脚图6 系统软件设计6.1 程序结构分析按钮设置报警温度程序、温度信号处理程序、数码管显示程序为主程序的子程序。其中数码管显示程序:数码管接收数字并将显示数字。温度信号处理程序:该程序接收、处理、判断、显示温度芯片发出的温度信号。按键设定程序:设置的高低温报警精度较高,通常可以精确到0.1。6.2 系统程序流图主程序接收传感器发来的温度信号,并测量温度,即

35、实时显示温度数据。能够在极短的时间内测量温度,然后和报警数值进行比对。通过检索读取温度子程序,存储器中的小数部分和整数部分存在两个单元内,只要查看子程序就可以显示这些数据。调用显示子程序初始化1s到?初次上电发温度转换开始命令读出温度值温度计算处理显示数据刷新图9 DS18B20温度流程图6.2.1 DS18B20初始化程序流程图图10为DS18B20的初始化流程图:发复位命令发跳过ROM命令 初始化成功 结束 图10 初始化程序流程图6.2.2 读温度子程序流程图 传感器将温度数据传送给程序,并将其保存于温度暂存器内。具体的程序流程图为:发复位命令发跳过ROM命令 发读取温度命令 移入温度暂存器 结束 图11 温度子程序流程图7 系统的安装与调试7.1 安装步骤1.检查元件的质量依据电路图选购组件,应当检测组件的好坏,并根据每个组件的检测方案单独处理检测,这需要特别注意。 还要仔细检查原理图是否一致,并且在检查完成后,才能装组件和焊件,为了之后不出现焊接错误带来的诸多不便就要多核对几次。2.放置、焊接各组件将组件放置在与原理图对应的位置。 特别是,容易损坏的部件应

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论