嵌入式数字温控系统的研究_第1页
嵌入式数字温控系统的研究_第2页
嵌入式数字温控系统的研究_第3页
嵌入式数字温控系统的研究_第4页
全文预览已结束

下载本文档

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

文档简介

嵌入式数字温控系统的研究

1温度监测仪器嵌入式数字温度体系具有可靠性高、精度高、易于读写错误、测量范围宽等优点。本系统以支持ISP(InSystemProgram,在系统可编程)功能且与通用80C51系列单片机的指令系统和引脚兼容的微处理器AT89S51为核心,通过2个DS18B20可同时测2个点的温度,能测量至少2路(节点)温度值,测量范围为-55~+125℃。采用PCF8563为时钟系统,选用6个LED通过按键切换分3种显示模式来显示时间和温度,可显示秒、分、日、月、年,能随意设定初始时间/日历,并能取消尚未设定的初始时间而保留原时间或浏览设置值,具有较高的性价比,可以作为环境温度监测和报警系统,温度随时间变化测试仪,多路温度测控仪等。由于采用了支持串行接口的器件构成系统,因此电路简洁,尤其是使用多个具有1-WIRE接口的器件如DS18B20构造微型网络(半径500m)变得很方便。2系统硬件设计2.1温度和时间显示电路系统的结构框图如图1所示。单片机为主控制器,连接温度检测器、时钟/日历电路和人机接口电路。在系统正常工作时,负责通过单线总线读取温度检测器DS18B20温度数值,通过I2C总线读取实时时钟/日历芯片PCF8563的实时时间/日历,并对读取回来的温度数值和时间/日历值进行相应的必要处理,然后送到LED显示电路进行温度和时间的数字显示。如果遇到温度或时间达到预先设定的值时,单片机做出相应的响应,输出报警信号到报警电路上进行报警。在设置温度或时间值时,通过键盘输入,单片机负责接收设置的温度或时间值,并对输入的数值进行相应的处理,然后通过串行总线送到DS18B20或PCF8563内部相应的寄存器中。2.2主机电路设计主机电路主要涉及到微控制器电路和人机接口电路。包括:系统时钟与复位电路、按键与显示电路。2.2.1复位电路的设计系统时钟是系统的动脉,根据AT89S51的数据手册,对选用晶体振荡器,电容参数选择为30±10pF,并保证在电路中的对称性。考虑本系统的要求及系统功耗问题,系统时钟选取11.0592MHz的晶体振荡器。系统复位电路有上电电路和手动电路。根据需要,在本系统中选择RC复位电路,其实质是一阶放电电路,把上电复位电路和手动复位电路设计在一起。综合多方面,工程上常取阻容时间常数大约为100ms,满足这个常数在复位电路中常取电阻值为10kΩ,电容值为10μF。2.2.2系统显示部分根据系统的功能设置需要并考虑功能的扩展和按键功能程序的编写,在本系统中采用了6个数码管,5个按钮开关。利用8279可实现对键盘/显示器的自动扫描,以减轻CPU负担,并具有显示稳定、程序简单、不会出现误动作等特点。能自动消除按键抖动,并实现多键盘同时按下时的保护。显示部分按扫描方式工作,可连接16位LED,本设计中只用了5个键,6个LED。S1用来切换当前显示的内容,S2作修改数据切换,S3修改数据,每按一次数据加1,S4是修改确认,S5是取消修改。2.3温度分辨率低时值的控制板模块DS18B20是DALLAS公司继DS1820之后最新推出的一种改进型智能数字温度传感器。其主要性能特点为:(1)1-WIRE(单线总线)接口;(2)测温范围为-55~+125℃;(3)供电电压范围+3.0~+5.5V,在此范围电压内,在-10~+85℃范围内,测量误差不超过±0.5℃;(4)温度分辨率可编程,共4种模式。依据不同模式,最高分辨率为0.0625,默认为0.5,温度转换时间最长为750ms,最短为93.75ms;(5)可设置温度报警上下限值;(6)封装小,3脚TO-92和8脚SOIC(贴片式)两种封装。2.3.1ds18b20工作原理DS18B20的内部结构框图如图2所示。在功能设计应用中直接应用到部分其内部存储器图,以下对DS18B20内的ROM和RAM进行具体介绍。DS18B20内部的64位ROM中数据为出厂前用激光写进去的,可看作为每个器件的序列号也就是地址。其数据结构为:其中最低8位为产品系列码,DS18B20的产品系列码固定为28H;紧接着的连续48位为每个器件自身的序列号,而这48位序列号为全球惟一的,所以从理论上来说每根单线总线上最多可以挂248个1-WIRE器件;最高8位为前56位的CRC(CRC8=X8+X5+X4+1)码。当对DSl820复位成功后可以对其内部ROM的64位序列号进行操作。相关的操作命令指令见文献。DS18B20内部的数据存储器即高速暂存器RAM有9个字节单元,其数据结构为:温度存储器的低字节、高字节是以补码的形式存放,两个字节所对应的16位二进制数中最低4位是温度的小数部分,最高5位是符号扩展,0表示正数,1表示负数,其余表示温度的整数部分。当对DSl8B20复位成功后可以对其内部RAM进行操作,相关的操作指令见文献。2.3.2ds18b20u3000DS18B20的3脚TO-92封装中,3个引脚分别为GND,DQ和VCC,DQ为数据的单线总线输入/输出端,属于漏极开路输出,需外接上拉电阻,常取4.7kΩ/5.1kΩ,从而保证总线在常态下呈高电平。因为DS18B20有单线总线接口,所以所有的DS18B20都可以连接到一根单总线上。在本系统中拟定采用2个DS18B20(一个用于检测室内温度,另一个用于检测室外温度)。电路连接方法如图3所示。2.4u3000jg1-4-pcf653总线PCF8563是PHILIPS公司推出的一款工业级内含I2C总线接口功能的具有极低功耗的多功能时钟/日历芯片。主要特性有:宽电压范围1.0~5.5V;超低功耗:典型值0.25μA;内含复位电路、振荡器电容和电检测电路;开漏极输出;400kHzI2C总线,其从地址:读(0A3H),写(0A2H)。由于PCF8563属于漏极开路输出,需外接上拉电阻,常取4.7kΩ/5.1kΩ,从而保证总线在常态下呈高电平。电路连接方法如图4所示。3模拟接口设计在本系统中主要设计的功能程序有温度值读取与温度值处理,时间初值设置与读取,显示的实现和按键的处理等四个部分。其中温度值读取和时间值初值设置与读取是本系统软件设计的重点,这两部分实质上就是AT89S51通过单线(1-WIRE)总线与DS18B20进行串行通信,和通过I2C总线与PCF8563进行串行通信。AT89S51单片机没有1-WIRE总线接口和I2C总线接口,要实现1-WIRE串行通信和I2C串行通信必需通过单片机通用的I/O口来模拟相应的串行接口。模拟1-WIRE串行接口和I2C串行接口的依据是1-WIRE通信协议和I2C通信协议中规定的信号及时序。在编写1-WIRE串行通信和I2C串行通信的模拟接口程序中,可采用自上而下(Top-Down)的程序设计方法,将任务逐级分解直到最底层的功能子程序。具体为:收/发N个字节子程序→收/发1个字节子程序→收/发1个数据位子程序→串行通信协议中定义的信号(最底层信号)子程序。由所需要的功能子程序的有机组合可以实现温度和时间值的读写。图5,图6和图7分别是程序主模块、温度转换与读取和时间读写的程序流程图。4系统安装调试4.1上电调试的过程组装调试要点:先根据要求组装好系统,先断电调试和后上电调试两步进行。断电调试主要用万用表(最好是指针表)测试硬件系统有无开路和短路的地方,特别是测试IC供电端与稳压电源输出端之间是否通路,与接地端是否是开路或较大的阻值。上电调试也分两步:第一步首先测试各关键点的电压是否正常;第二步是在前面测试都通过的情况下,编写简短的人机接口测试程序,先测试显示电路是否正确,再在显示电路正确的基础上测试键盘是否正确。在测试过程中有错则先排错再往下进行测试。4.2kiiil可扩充性观察与分析软件调试要点:系统程序调试要分功能块进行调

温馨提示

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

评论

0/150

提交评论