




已阅读5页,还剩16页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
宿迁泽达职业技术学院毕业设计毕 业 设 计摘 要:温度测量与控制在工业、农业、国防等行业有着广泛的应用。利用单片机技术的温度测控系统以其体积小,可靠性高而被广泛采用。本文对该测控系统进行了分析设计。本设计采用支持ISP在线编程的AT89S52单片机作为主控芯片;温度采集器件采用单总线式的DS18B20数字温度传感器,读出的温度值为数字信号,电路简单,价格低廉;显示器件采用四位一体数码来适时显示采集到的温度值。通过按键可以设置温度的上下限报警值,当温度超出设的范围时蜂鸣器鸣笛同时红色LED发光报警以提示温度超过极限设定值。关键字:温度报警,单片机,DS18B20Abstract:The temperature survey and the control in profession and so on industry, agriculture, national defense has the widespread application. Using monolithic integrated circuit technology temperature observation and control system by its volume small, the reliability is high but is widely used. This article has carried on the analysis design to this observation and control system.The paper is proposed to use the online programming AT89S52 SCM as the main control chip. Its very important in the system as the head to control the whole system. Monobus DS18B20 is used as the Temperature gathering devices to read the temperature, then the value as the digital signal to put in. This circuit has the followed advances such as the circuit is simple, lowcost, and display devices is quaternity digital LED to have better visual result. Through the buttons can set the boundary value of the temperature. Whats more, when the temperature exceeds the scope of set temperature, the buzzer and the LED would work to give an alarm.Keywords: temperature alarm,SCM, DS18B20目 录1 引言42 概述42.1 课题研究的目的及意义42.2 课题研究现状分析52.3 技术指标53 总体设计53.1 系统设计方案论证53.2 系统结构框图64 系统硬件组成64.1 系统结构框图74.2 测温部分115 系统的软件部分145.1 DS18B20温度值读取部分155.2 中断服务程序166 系统测试166.1 硬件调试166.2 软件调试17结束语18致 谢19参考文献201 引言在工业生产中,电流、电压、温度、压力、流量、流速和开关量都是常用的主要被控参数。其中,温度控制也越来越重要。在工业生产的很多领域中,人们都需要对各类加热炉、热处理炉、反应炉和锅炉中的温度进行检测和控制。采用单片机对温度进行控制不仅具有控制方便、简单和灵活性大等优点,而且可以大幅度提高被控温度的技术指标,从而能够大大的提高产品的质量和数量。因此,单片机对温度的控制问题是一个工业生产中经常会遇到的控制问题。 单片机是一种集CPU、RAM、ROM、I/O接口和中断系统等部分于一体的器件,只需要外加电源和晶振就可实现对数字信息的处理和控制。因此,单片机广泛用于现代工业控制中。随着“信息时代”的到来,作为获取信息的手段传感器技术得到了显著的进步,其应用领域越来越广泛,对其要求越来越高,需求越来越迫切。传感器技术已成为衡量一个国家科学技术发展水平的重要标志之一。因此,了解并掌握各类传感器的基本结构、工作原理及特性是非常重要的。由于传感器能将各种物理量、化学量和生物量等信号转变为电信号,使得人们可以利用计算机实现自动测量、信息处理和自动控制,但是它们都不同程度地存在温漂和非线性等影响因素。传感器主要用于测量和控制系统,它的性能好坏直接影响系统的性能。因此,不仅必须掌握各类传感器的结构、原理及其性能指标,还必须懂得传感器经过适当的接口电路调整才能满足信号的处理、显示和控制的要求,而且只有通过对传感器应用实例的原理和智能传感器实例的分析了解,才能将传感器和信息通信和信息处理结合起来,适应传感器的生产、研制、开发和应用。另一方面,传感器的被测信号来自于各个应用领域,每个领域都为了改革生产力、提高工效和时效,各自都在开发研制适合应用的传感器,于是种类繁多的新型传感器及传感器系统不断涌现。温度传感器是其中重要的一类传感器。其发展速度之快,以及其应用之广,并且还有很大潜力。为了提高对传感器的认识和了解,尤其是对温度传感器的深入研究以及其用法与用途,基于实用、广泛和典型的原则而设计了本系统。本文利用单片机结合传感器技术而开发设计了这一温度监控系统。文中传感器理论与单片机实际应用有机结合,详细地讲述了基于单片机AT89S51和温度传感器DS18B20的温度控制系统的设计方案与软硬件实现方案。系统包括数据采集模块,单片机控制模块,显示模块和温度设置模块,报警电路五个部分1。文中对每个部分功能、实现过程作了详细介绍。本设计应用性比较强,系统稍微改装可以作为生物培养液温度监控系统,可以做热水器温度调节系统、实验室温度监控系统等等。设计后的系统具有操作方便,控制灵活等优点。2 概述2.1 课题研究的目的及意义随着社会的发展,温度的测量及控制变得越来越重要。温度是生产过程和科学实验中普遍而且重要的物理参数。在工业生产过程中为了高效地进行生产,必须对生产工艺过程中的主要参数,如温度,压力,流量,速度等进行有效的控制。其中温度的控制在生产过程中占有相当大的比例。准确测量和有效控制温度是优质,高产,低耗和安全生产的重要条件。在工业的研制和生产中,为了保证生产过程的稳定运行并提高控制精度,采用微电子技术是重要的途径。它的作用主要是改善劳动条件,节约能源,防止生产和设备事故,以获得好的技术指标和经济效益。本课题采用51单片机来对温度进行控制,不仅具有控制方便、组态简单和灵活性大等优点,而且可以大幅度提高被控温度的技术指标。作为控制系统中的一个典型实验设计,单片机温度控制系统综合运用了微机原理、自动控制原理、传感器原理、模拟电子技术、数字控制技术、键盘显示技术等诸多方面的知识,是对所学知识的一次综合测试。2.2 课题研究现状分析由于现代工艺越来越多的需要对实时温度进行监测和控制,而且需要的精度越来越高。所以温度控制系统国内外许多有关人员的重视,得到了十分广泛的应用。温度控制系统发展迅速,而且成果显著。由于单片微处理器的性能日益提高、价格又不断降低,使其性能价格比的优势非常明显。因此,如何将单片微处理器应用到锅炉温度自动控制领域,为越来越多的生产厂家所重视。目前先进国家各种炉窑自动化水平较高,装备有完善的检测仪表和计算机控制系统。其计算机控制系统已采用集散系统和分布式系统的形式,大部分配有先进的控制算法,能够获得较好的工艺性能指标。单片微型计算机是随着超大规模集成电路的技术的发展而诞生的。由于它具有体积小,功能强,性价比高等优点,所以广泛应用于电子仪表,家用电器,节能装置,军事装置,机器人,工业控制等诸多领域,使产品小型化,智能化,既提高了产品的功能和质量又降低了成本,简化了设计。2.3 技术指标设计并制作一个基于单片机的温度控制系统3,能够显示环境的实时温度,并能通过按键设置温度的上下限,当温度高于设定温度或者低于设定温度时系统就会通过三极管驱动蜂鸣器报警,并且红色LED亮。当温度在设定的范围内时绿灯亮表示正常。温度设定范围为099,最小区分度为1,温度控制的误差1能够用数码管精确显示当前实际温度值按键控制:设置复位键、加一键、减一键越限报警3 总体设计3.1 系统设计方案论证实现温度控制的方法主要有以下几种方案一:采用纯硬件的闭环控制系统2。该系统的优点在于速度较快,但可靠性比较差控制精度比较低、灵活性小、线路复杂、调试、安装都不方便。且要实现题目所有的要求难度较大。方案二:FPGA/CPLD或采用带有IP内核的FPGA/CPLD方式。即用FPGA/CPLD完成采集,存储,显示及A/D等功能,由IP核实现人机交互及信号测量分析等功能。这种方案的优点在于系统结构紧凑,可以实现复杂的测量与与控制,操作方便;缺点是调试过程复杂,成本较高。方案三:单片机与高精度温度传感器结合的方式。即用单片机完成人机界面,系统控制,信号分析处理,由前端温度传感器完成信号的采集与转换。这种方案克服了方案一、二的缺点,所以本课题任务是基于单片机和温度传感器实现对温度的控制。3.2 系统结构框图系统主要包括数据采集模块,单片机控制模块,显示模块和温度设置模块,驱动电路五个部分。系统框图如图1所示。温度传感器单片机键盘控制复位电路显示电路报警电路控制电路图1 系统框图 其中数据采集模块负责实时采集温度数据,采集到的温度数据传输到单片机,由单片机处理后的数据送显示部分显示。设置模块可设置预定温度,当检测到的温度低于设定温度时,单片机控制驱动电路启动加热(外加继电器即可),并发出报警声;当检测温度高于设定温度时,停止加热4。4 系统硬件组成系统主要有单片机主控单元;温度采集部分;按键控制部分,声光报警部分组成,其整体电路图如下:图4-1系统整体电路图4.1 系统结构框图系统的主控单元由AT89S52及其最小工作系统构成,主要功能是控制系统的总体,是系统的核心,相当于系统的大脑和心脏。其电路图如下:4.1.1 单片机AT89S52简介AT89S52是一种低功耗、高性能CMOS8位微控制器,具有8K 在系统可编程Flash 存储器。使用Atmel 公司高密度非易失性存储器技术制造,与工业80C51 产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash,使得AT89S52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。图4-2系统主控单元4.1.2 主要功能及特性AT89S52具有以下标准功能:8k字节Flash,256字节RAM,32 位I/O 口线,看门狗定时器,2 个数据指针,三个16 位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。另外,AT89S52 可降至0Hz 静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止5。l 与MCS-51单片机产品兼容l 8K字节在系统可编程Flash存储器l 1000次擦写周期l 全静态操作:0Hz33Hzl 三级加密程序存储器l 32个可编程I/O口线l 三个16位定时器/计数器l 八个中断源l 全双工UART串行通道l 低功耗空闲和掉电模式l 掉电后中断可唤醒l 看门狗定时器l 双数据指针l 掉电标识符4.1.3 管脚图管脚说明图4-3 AT89S52引脚图VCC:供电电压。 GND:接地。 P0 口:P0口是一个8位漏极开路的双向I/O口。作为输出口,每位能驱动8个TTL逻辑电平。对P0端口写“1”时,引脚用作高阻抗输入。当访问外部程序和数据存储器时,P0口也被作为低8位地址/数据复用。在这种模式下,P0具有内部上拉电阻。在 flash编程时,P0口也用来接收指令字节;在程序校验时,输出指令字节。程序校验时,需要外部上拉电阻。P1 口:P1 口是一个具有内部上拉电阻的8 位双向I/O 口,p1 输出缓冲器能驱动4 个TTL 逻辑电平。对P1 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。此外,P1.0和P1.2分别作定时器/计数器2的外部计数输入(P1.0/T2)和时器/计数器2的触发输入(P1.1/T2EX),具体如表3-1所示。在flash编程和校验时,P1口接收低8位地址字节。表4-1 P1口的第二功能引脚号第二功能P1.0T2(定时器/计数器T2的外部计数输入),时钟输出P1.1T2EX(定时器/计数器T2的捕捉/重载触发信号和方向控制)P1.5MOSI(在系统编程用)P1.6MISO(在系统编程用)P1.7SCK(在系统编程用)P2口:P2口为一个内部上拉电阻的8 位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的 管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给 出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高 八位地址信号和控制信号。 P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。P3口作为AT89C51的一些特殊功能口,如表3-2所示:表4-2 P3的特殊功能口管脚备选功能P3.0 RXD(串行输入口)P3.1 TXD(串行输出口)P3.2 /INT0(外部中断0)P3.3 /INT1(外部中断1)P3.4 T0(记时器0外部输入)P3.5 T1(记时器1外部输入)P3.6 /WR(外部数据存储器写选通)P3.7 /RD(外部数据存储器读选通)P3口同时为闪烁编程和编程校验接收一些控制信号。 RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。 ALE/PROG: 当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期 输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个 ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。 /PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。 /EA /VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定 为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。 XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。 XTAL2:来自反向振荡器的输出。4.1.4 复位电路为确保微机系统中电路稳定可靠工作,复位电路是必不可少的一部分,复位电路的第一功能是上电复位6。一般微机电路正常工作需要供电电源为5V5%,即 4.755.25V。由于微机电路是时序数字电路,它需要稳定的时钟信号,因此在电源上电时,只有当VCC超过4.75V低于5.25V以及晶体振荡器 稳定工作时,复位信号才被撤除,微机电路开始正常工作。目前为止,单片机复位电路主要有四种类型:(1)微分型复位电路;(2)积分型复位电路;(3)比较器型复位电路;(4)看门狗型复位电路。电路图如下:图 4-4 复位电路4.1.5 振荡电路电路图如下:图 4-5 晶振电路晶振是晶体振荡器的简称,在电气上它可以等效成一个电容和一个电阻并联再串联一个电容的二端网络,电工学上这个网络有两个谐振点,以频率的高低分其中较低 的频率是串联谐振,较高的频率是并联谐振。由于晶体自身的特性致使这两个频率的距离相当的接近,在这个极窄的频率范围内,晶振等效为一个电感,所以只要晶 振的两端并联上合适的电容它就会组成并联谐振电路。这个并联谐振电路加到一个负反馈电路中就可以构成正弦波振荡电路,由于晶振等效为电感的频率范围很窄, 所以即使其他元件的参数变化很大,这个振荡器的频率也不会有很大的变化。晶振有一个重要的参数,那就是负载电容值,选择与负载电容值相等的并联电容,就可以得到晶振标称的谐振频率。 一般的晶振振荡电路都是在一个反相放大器(注意是放大器不是反相器)的两端接入晶振,再有两个电容分别接到晶振的两端,每个电容的另一端再接到地,这两个电容串联的容量值就应该等于负载电容,请注意一般IC的引脚都有等效输入电容,这个不能忽略。4.1.6 芯片擦除整个PEROM阵列和三个锁定位的电擦除可通过正确的控制信号组合,并保持ALE管脚处于低电平10ms 来完成。在芯片擦操作中,代码阵列全被写“1”且在任何非空存储字节被重复编程以前,该操作必须被执行。 此外,AT89C51设有稳态逻辑,可以在低到零频率的条件下静态逻辑,支持两种软件可选的掉电模式。在闲置模式下,CPU停止工作。但RAM,定时器,计 数器,串口和中断系统仍在工作。在掉电模式下,保存RAM的内容并且冻结振荡器,禁止所有其它芯片功能。4.2 测温部分4.2.1 测温模块本设计的测温元件采用的是DS18B20测温元件,DS18B20是由DALLAS(达拉斯)公司生产的一种温度传感器。超小的体积,超低的硬件开消,抗干扰能力强,精度高,附加功能强,使得DS18B20很受欢迎。这是世界上第一片支持“一线总线”接口的温度传感器。DS18B20数字温度计提供9位(二进制)温度读数,指示器件的温度。信息经过单线接口送入DS18B20或从DS18B20送出,因此从单片机到DS18B20仅需一条线连接即可。它可在1秒钟(典型值)内把温度变换成数字。4.2.2 DS18B20的主要特征有以下几点 全数字温度转换及输出; 先进的单总线数据通信; 最高12位分辨率,精度可达土0.5; 12位分辨率时的最大工作周期为750毫秒; 可选择寄生工作方式; 检测温度范围为55+125; 内置EEPROM,限温报警功能; 64位光刻ROM,内置产品序列号,方便多机挂接; 多样封装形式,适应不同硬件系统。 DS18B20芯片有3 个引脚: GND为电压地直接接地;DQ为单数据总线用来与单片机相连接,本系统中DQ与单片机P2.2接口连接,仅此一个连接就能保证DS18B20与单片机之间的数据交换;VDD引脚接电源电压。4.2.3 DS18B20的工作原理DS18B20的温度检测与数字数据输出全集成于一个芯片之上,从而抗干扰力更强。一个工作周期可分为两个部分,即温度检测和数据处理。18B20共有三种形态的存储器资源,分别是:ROM 只读存储器,用于存放DS18B20ID编码,其前8位是单线系列编码(DS18B20的编码是19H),后面48位是芯片唯一的序列号,最后8位是以上56的位的CRC码(冗余校验)。数据在出产时设置不由用户更改。DS18B20共64位ROM, RAM 数据暂存器,用于内部计算和数据存取,数据在掉电后丢失,DS18B20共9个字节RAM,每个字节为8位。第1、2个字节是温度转换后的数据值信息,第3、4个字节是用户EEPROM(常用于温度报警值储存)的镜像。在上电复位时其值将被刷新。第5个字节则是用户第3个EEPROM的镜像。第6、7、8个字节为计数寄存器,是为了让用户得到更高的温度分辨率而设计的,同样也是内部温度转换、计算的暂存单元。第9个字节为前8个字节的CRC码。EEPROM 非易失性记忆体,用于存放长期需要保存的数据,上下限温度报警值和校验数据,DS18B20共3位EEPROM,并在RAM都存在镜像,以方便用户操作。我们在每一次读温度之前都必须进行复杂的且精准时序的处理,因为DS18B20的硬件简单结果就会导致软件的巨大开消。4.2.4 温度采集通过DS18B20单线总线的所有执行处理都从一个初始化序列开始。初始化序列包括一个由总线控制器发出的复位脉冲和随后由从机发出的存在脉冲: 1、复位:首先我们必须对DS18B20芯片进行复位,复位就是由控制器(单片机)给DS18B20单总线至少480uS的低电平信号。当18B20接到此复位信号后则会在1560uS后回发一个芯片的存在脉冲。 2、存在脉冲:在复位电平结束之后,控制器应该将数据单总线拉高,以便于在1560uS后接收存在脉冲,存在脉冲为一个60240uS的低电平信号。至此,通信双方已经达成了基本的协议,接下来将会是控制器与18B20间的数据通信。 3、控制器发送ROM指令:双方打完了招呼之后最要将进行交流了,ROM指令共有5条,每一个工作周期只能发一条,ROM指令分别是读ROM数据、指定匹配芯片、跳跃ROM、芯片搜索、报警芯片搜索。各自功能如下: Read ROM(读ROM)33H (方括号中的为16进制的命令字)这个命令允许总线控制器读到DS18B20的64位ROM。只有当总线上只存在一个DS18B20的时候才可以使用此指令。Match ROM(指定匹配芯片)55H 这个指令后面紧跟着由控制器发出了64位序列号,当总线 上有多只DS18B20时,只有与控制发出的序列号相同的芯片才能做出反应,其它芯片将等待下一次复位。这条指令适合单芯片和多芯片挂接。 Skip ROM(跳跃ROM指令)CCH 这条指令使芯片不对ROM编码做出反应,在单总线的情况之下,为了节省时间则可以选用此指令。如果在多芯片挂接时使用此指令将会出现数据冲突,导致错误出现。 Search ROM(搜索芯片)F0H 在芯片初始化后,搜索指令允许总线上挂接多芯片时用排除法识别所有器件的64位ROM。 Alarm Search(报警芯片搜索)ECH 在多芯片挂接的情况下,报警芯片搜索指令只对附合温度高于TH或小于TL报警条件的芯片做出反应。只要芯片不掉电,报警状态将被保持,直到再一次测得温度值达不到报警条件为止。 ROM指令为8位长度,功能是对片内的64位光刻ROM进行操作。其主要目的是为了分辨一条总线上挂接的多个器件并作处理。诚然,单总线上可以同时挂接多个器件,并通过每个器件上所独有的ID号来区别,一般只挂接单个18B20芯片时可以跳过ROM指令(注意:此处指的跳过ROM指令并非不发送ROM指令,而是用特有的一条“跳过指令”)。 4、控制器发送存储器操作指令:在ROM指令发送给18B20之后,紧接着(不间断)就是发送存储器操作指令了。操作指令同样为8位,共6条,存储器操作指令分别是写RAM数据、读RAM数据、将RAM数据复制到EEPROM、温度转换、将EEPROM中的报警值复制到RAM、工作方式切换。 Write Scratchpad (向RAM中写数据)4EH:这是向RAM中写入数据的指令,随后写入的两个字节的数据将会被存到地址2(报警RAM之TH)和地址3(报警RAM之TL)。写入过程中可以用复位信号中止写入。 Read Scratchpad (从RAM中读数据)BEH:此指令将从RAM中读数据,读地址从地址0开始,一直可以读到地址9,完成整个RAM数据的读出。芯片允许在读过程中用复位信号中止读取,即可以不读后面不需要的字节以减少读取时间。 Copy Scratchpad (将RAM数据复制到EEPROM中)48H:此指令将RAM中的数据存入EEPROM中,以使数据掉电不丢失。此后由于芯片忙于EEPROM储存处理,当控制器发一个读时间隙时,总线上输出“0”,当储存工作完成时,总线将输出“1”。在寄生工作方式时必须在发出此指令后立刻超用强上拉并至少保持10MS,来维持芯片工作。 Convert T(温度转换)44H:收到此指令后芯片将进行一次温度转换,将转换的温度值放入RAM的第1、2地址。此后由于芯片忙于温度转换处理,当控制器发一个读时间隙时,总线上输出“0”,当储存工作完成时,总线将输出“1”。在寄生工作方式时必须在发出此指令后立刻超用强上拉并至少保持500MS,来维持芯片工作。 Recall EEPROM(将EEPROM中的报警值复制到RAM)B8H:此指令将EEPROM中的报警值复制到RAM中的第3、4个字节里。由于芯片忙于复制处理,当控制器发一个读时间隙时,总线上输出“0”,当储存工作完成时,总线将输出“1”。另外,此指令将在芯片上电复位时将被自动执行。这样RAM中的两个报警字节位将始终为EEPROM中数据的镜像。 Read Power Supply(工作方式切换)B4H:此指令发出后发出读时间隙,芯片会返回它的电源状态字,“0”为寄生电源状态,“1”为外部电源状态。 存储器操作指令的功能是命令18B20作什么样的工作,是芯片控制的关键。 5、执行或数据读写:一个存储器操作指令结束后则将进行指令执行或数据的读写,这个操作要视存储器操作指令而定。 DS18B20需要严格的协议以确保数据的完整性。协议包括几种单线信号类型:复位脉冲、存在脉冲、写0、写1 、读0和读1。所有这些信号,除存在脉冲外,都是由总线控制器发出的。和DS18B20间的任何通讯都需要以初始化序列开始。一个复位脉冲跟着一个存在脉冲表明DS18B20已经准备好发送和接收数据(适当的ROM命令和存储器操作命令)。DS18B20的复位时序图:图4-6 DS18B20的复位时序图DS18B20的读时序:对于DS18B20的读时序分为读0时序和读1时序两个过程。对于DS18B20的读时隙是从主机把单总线拉低之后,在15us之内就得释放单总线,以让DS18B20把数据传输到单总线上。DS18B20在完成一个读时序过程,至少需要60us才能完成。图4-7 DS18B20的读时序图DS18B20的写时序:对于DS18B20的写时序仍然分为写0时序和写1时序两个过程。对于DS18B20写0时序和写1时序的要求不同,当要写0时序时,单总线要被拉低至少60us,保证DS18B20能够在15us到45us之间能够正确地采样IO总线上的“0”电平,当要写1时序时,单总线被拉低之后,在15us之内就得释放单总线。 图4-8 DS18B20的写时序图5 系统的软件部分系统软件部分分为:温度采集部分,数码管显示部分,蜂鸣器报警部分,LED状态指示部分分,按键控制部分等组成。程序流程图如下:图5-1系统的程序流程图5.1 DS18B20温度值读取部分DS18B20是I/O单总线结构,其温度值的读取程序如下:uint read() uchar i=0; uchar dat = 0; for (i=8;i0;i-) dq = 0; / 给脉冲信号 dat=1; dq = 1; / 给脉冲信号 if(dq) dat|=0x80; delay_us(4); return(dat); 5.2 中断服务程序程序执行过程中,容许外部或内部事件通过硬件打断程序的执行,使其转向为处理外部或内部事件的中断服务程序中去;完成中断服务程序后,CPU继续原来被打断的程序,这样的过程称为中断过程。中断响应的一般过程 (1) 在每条指令结束后, 系统都自动检测中断请求信号, 如果有中断请求,且CPU处于开中断状态下, 则响应中断。 (2) 保护现场, 在保护现场前, 一般要关中断, 以防止现场被破坏。保护现场一般是用堆栈指令将原程序中用到的寄存器推入堆栈。 AT89S51中有五个中断源 MCS - 51单片机有5个中断源, 为了使每个中断源都能独立地被允许或禁止, 以便用户能灵活使用, CPU内部在每个中断信号的通道中设置了一个中断允许触发器, 它控制CPU能否响应中断。只有对应的中断允许触发器被使能(置“1”),相应的中断才能得到相应响应。图5-2 MC-51的中断系统其中断服务子程序如下:void timer0() interrupt 1 using 6 系统测试6.1 硬件调试基本电路板检查根据前面的研究完成各个电路模块的原理设计并生成PCB图,制作电路板,进行实验调试6。(1)检查电路的连接线是否有断路,是否有毛刺,是否与其它线或是焊盘粘连,焊盘是否有脱落现象等等。(2) 先用万用表复核目测中认为可疑的连接或是接点,检查它们的通短状态是否与设计规定相符。再检查各种电源线与地线之间是否有短路现象,如有再仔细检查出并排除。短路现象一定要在器件安装及加电前检查出。(3)路接通电源后,用手摸一下芯片是否发热,如果发热,立即关掉电源,稍后再进行再次检测;如果没有发热,再测试芯片的VCC端电压是否达到设计要求,接地端是否都接地。主控模块调试:在本次设计中,主控模块是非常重要的部分,它不仅是本次设计的核心,在本次硬件调试中也遇到了问题,接上电源的时候,数码管不亮,没有任何显示,于是我做了如下的工作:(1)检查电源是否通电,发现指示灯亮着;(2)编程使P1为低电平,检查到P1输出为低;(3)检查P0口未接上拉电阻,接上数码管发亮了。6.2 软件调试 当硬件制作完成后,软件制作也是不可轻视的部分,是实现电路的功能的关键部分,通过本次毕业设计,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 康复科疼痛科活动方案策划
- 福克斯营销方案
- 物联网技术在库存监控-洞察及研究
- 6G网络智能天线多用户干扰抑制方法-洞察及研究
- 大学大礼堂活动方案策划
- 纸品生命周期评价研究-洞察及研究
- 电商生态圈构建-洞察及研究
- 就业咨询服务方案
- 纺织服装行业知识产权保护机制研究-洞察及研究
- 2025年光伏组件生产成本控制与市场竞争力分析报告
- 2025广东珠海市下半年市直机关事业单位招聘合同制职员37人考试参考试题及答案解析
- 软件开发驻场合同协议
- 音乐培训机构招生
- DL∕T 741-2019 架空输电线路运行规程
- 水杨酸软膏剂的制备
- 《铁皮石斛的介绍》课件
- JCT478.2-2013 建筑石灰试验方法 第2部分 化学分析方法
- 大数据、智慧城市与智慧交通(上)
- 砌砖抹灰工程劳务承包施工合同范文
- GB/T 19812.2-2017塑料节水灌溉器材第2部分:压力补偿式滴头及滴灌管
- GB/T 19249-2017反渗透水处理设备
评论
0/150
提交评论