基于AT89S52的数字温度计设计.doc
《基于AT89S52的数字温度计设计.doc》由会员分享,可在线阅读,更多相关《基于AT89S52的数字温度计设计.doc(29页珍藏版)》请在咨信网上搜索。
1、 计算机学院暑期项目文档 项目名称基于AT89S52的数字温度计设计目录项目名称1基于AT89S52的数字温度计设计1第1章 绪 论41.1 概述41.2 数字温度计的特点与问题4第2章 设计方案52.1 设计指标52.1.1检测范围52.1.2 检测误差52.1.3 系统反应速度52.2 基于单总线温度检测芯片的检测方案52.3 关键技术62.3.1单总线技术62.3.2单片机开发技术6第3章 具体设计与实现73.1 系统总体设计73.2 硬件设计83.2.1 温度检测系统设计83.2.2 单片机最小系统设计93.2.3 显示系统设计93.2.4 电源系统设计103.3 软件设计103.3.
2、1温度传感器驱动设计103.3.2显示驱动设计153.3.3开关控制设计183.3.4系统软件设计21第4章 系统集成与测试224.1软件调试224.2硬件调试234.3系统测试23结论24致谢25参考文献26附录127附录228第1章 绪 论1.1 概述 数字温度计相对与传统的温度计,用数字信号来表示温度变化,方便计算机控制系统进行处理和记录,应用单片机使仪器仪表智能化,可以提高测量的自动化程度和精度,广泛应用于各行各业。测量温度的关键是温度传感器。随着技术飞速发展,传感器已进入第三代数字传感器。本测温系统采用的DS18B20就是属于这种传感器。DS18B20是美国DALLAS半导体公司推出
3、的数字式温度传感器,是DS1820的更新产品。它能够直接读出被测温度,可通过简单的编程实现9位-12位的数字读数方式,并且,从DS18B20读出的信息或写入DS18B20的信息仅需要一根口线(单线接口)读写。温度变换功率来源于数据总线,总线本身也可以向所挂接的DS18B20供电,而无需额外电源,因而使用DS18B20可使系统结构更趋简单、灵活。可靠性高。微控制器层面主要是对系统的工作进行控制,其中包括各个芯片的初始化、对DS18B20的总体控制、对按键的检测和处理以及对LED的显示设置。可以说,这个层次是数字温度计系统的基础与支撑。数码管主要解决字符的显示。单片机通过对相应引脚的设置和控制,经
4、过转换之后进行显示。1.2 数字温度计的特点与问题数字温度计相对与传统的温度计,用数字信号来表示温度变化,方便计算机控制系统进行处理和记录,通常采集温度的传感器特性,信号的转换装置,和信号的传输装置对数字温度机的使用范围和性能都有极其重要的影响,传统的数字温度计因为成本和技术等原因,采用热敏电阻的检测方式,采集的模拟电压信号容易收到干扰,且需要模数转换的效果也差。本文设计了一种基于单总线芯片的数字温度计,克服传统数字温度计在信号传输,信号转换上的问题。第2章 设计方案2.1 设计指标 2.1.1检测范围温度检测范围决定了温度计的使用范围和场合,由本设计的温度检测器件DS18B20的性能决定了极
5、限温度检测范围为55125,在系统时间过程中,单片机的处理精度,器件的响应时间等各种因数的影响,实际的检测范围会小于这个范围。2.1.2 检测误差数字温度计必须在检测范围内有良好的精度,也就是在设计温度检测范围内必须有良好的检测线性,在高温和低温场合,系统都应该有相同的精度和误差,本设计的温度检测器件DS18B20内置9位的模拟/数字转换电路,其检测的分辨率可达0.0625。2.1.3 系统反应速度相对传统的靠热胀冷缩原理的液体温度计,数字温度计必须要有很高的检测响应速度,以准确的反映温度变化的过程。这就使本设计的系统方案必须适当缩短采集/转换/处理/显示温度信号的周期,以提高系统的反应速度。
6、影响这个反应速度的主要因素是单总线的读写周期和LED显示的读写周期。同时为照顾人眼判读温度数据的反应时间需要,本设计把系统检测反应速度设置在1S左右。2.2 基于单总线温度检测芯片的检测方案单总线的数字温度芯片是集成在芯片内的温度检测电路和单总线接口电路构成的,由于模拟信号在芯片内就转换成为数字信号并以总线的方式串行输出,使得温度/电磁环境对信号传输的干扰最小,单总线的接口也能满足长距离信号传输的布线成本问题。同时单总线系统还可以扩展出一个总线上接入采集多个温度采集点的形式,给设计和应用带来更多的灵活性。综上所述:本设计选择使用单总线温度检测芯片的检测方案。图2-1 单总线温度检测结构2.3
7、关键技术2.3.1单总线技术单总线技术是指接收和发射都在同一条线上的数字总线通信技术,其收发需要遵循严格的逻辑时序,在初始化设备后,主机要先访问总线上所有设备的地址,然后对所需要的设备发出工作指令,随后接受总线设备发出的数据信息,这就要求本设计的主机要在总线的时间序列协议下双向的读写。图2-2 单总线接口电路2.3.2单片机开发技术单片机是单片微机的简称,是在单一芯片上实现计算机系统的简称。靠简单的外围电路,就可构件一个单片机运行的最小系统,但是单片机的开始需要借助个人电脑,在个人电脑上,编写和调试开发语言,并将编译好后的机器语言通过下载器烧写到单片机内,使单片机运行预先设计的程序。单片机的开
8、发需要个人电脑上运行的单片机开发环境,程序下载器和开发板,如所用的AT89S52单片机,就需要KEIL开发环境,并口下载线和开发板。在本设计方案中,选用的是ATMEL公司的52系列的AT89S52单片机,属于复杂指令(CISC)运算单片机,AT89S52是一种低功耗、高性能CMOS 8位微控制器,它具有8k字节Flash,256字节RAM,32 位I/O 口线,看门狗定时器,2 个数据指针,三个16 位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。另外,AT89S52 可降至0Hz 静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停止工作,允许RAM、定
9、时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。使该型号的单片机有极高的性能价格比。它的KEIl开发环境支持在WINDOWS平台上的C语言及汇编语言程序开发,方便软件设计的模块化和结构化的开发模式。第3章 具体设计与实现3.1 系统总体设计该系统由单总线温度检测系统,显示系统,开关系统三个部分构成,同时把系统设计分为硬件和软件两部分来设计。本设计采用ATMEL的52系列AT89S52单片机应用系统来实现设计要求,高性能、低功耗的8位微处理器,非易失性的程序和数据存储器, 在单芯片上,拥有灵巧的 8 位 CPU
10、和在系统可编程Flash,使得 AT89S52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。温度采集及A/D转换,采用DALLAS公司的DS18B20。DS18B20是DALLAS公司生产的总线式数字温度传感器,具有3个引脚;温度测量范围为55125,可编程为9位12位A/D转换精度,测温分辨率可达0.0625,被测温度用符号扩展的16位数字量串行输出;其工作电源既可在远端引入,也可采用寄生电源方式产生;多个DS18B20可以并联到3根或2根线上,CPU只需一根端口线就能与诸多DS18B20通信,占用微处理器的端口较少,可节省大量的引线和逻辑电路。以上特点使DS18B20非常适用于远距
11、离多点温度检测系统。数据显示装置采用的是LED数码管,LED数码管结构简单,价格便宜。分为共阴和共阳两类,八段LED显示管是通过同名管脚上所加的电平高低来控制发光二极管是否点亮从而显示不同的字形。数字温度计系统基本工作原理为:首先检测单总线情况,判断是否有单总线芯片在工作,然后对于数字温度传感器采集到的温度数值,单片机对温度数值进行处理,然后作温度显示。在图3-1中,在系统中控制模块主要由AT89S52负责整个系统的控制工作,显示模块主要由LED数码管显示信息,温度采集是由数字温度传感器DS18B20实现的。图3-1 系统模块图3.2 硬件设计3.2.1 温度检测系统设计DS18B20数字温度
12、计提供912位温度读数,只是器件的温度。信息经过单线接口送入DS18B20或从DS18B20送出,因此从主机CPU到DS18B20仅需要一条线。DS18B20的电源可以由数据线本身提供而不需要外部电源。因为每一个DS18B20在出厂时已经给定了唯一的序号,因此任意多个DS18B20可以存放在同一条单线总线上。这允许在许多不同的地方放置温度敏感器件。DS18B20的测量范围从-55到+125 ,增量值为0.5,可在1s内把温度变成数字。每一个DS18B20包括一个唯一的64位长的序号,该序号值存放在DS18B20内部的ROM中。开始8位是产品类型编码。接着的48位是每个器件唯一的序号。最后8位是
13、前面56位的CRC(循环冗余校验)码。DS18B20中还有用于贮存测得的温度值的两个8位贮存器RAM,编号为0号和1号。1号存贮器存放温度值的符号,如果温度为负,则1号存贮器8位全为1,否则全为0。0号存贮器用于存放温度值的补码,LSB(最低位)的1表示0.625。将存贮器中的二进制数求补再转换成十进制数并除以2,就得到被测温度值。每只DS18B20都可以设置成两种供电方式,即数据总线供电方式和外部供电方式。采取数据总线供电方式可以节省一根导线,但完成温度测量的时间较长;采取外部供电方式则多用一根导线,但测量速度较快。本设计采用DS18B20单总线温度检测芯片,在芯片上只有3个接口,分别对应电
14、源VCC,地线GND,信号线TX/RX,由于DS18B20芯片使用5V的供电方式,本设计直接将电源VCC先上直接串入一个4.7K左右欧姆的电阻并上拉到信号线上来实现芯片的供电,这样的供电的方式就叫作寄生供电3,这样设计的原因是单总线的收发都是同一根线,若在总线上有多个设备,这需要在寻找指定设备和设备应答上使总线保持严格的通讯时序。图3-2 单总线电路图3.2.2 单片机最小系统设计AT89S52是ATMEL公司推出的单片机,它是一款采用低功耗CMOS工艺生产的8位单片机。系统内可编程特性,使得无需购买昂贵的仿真器和编程器也可进行单片机嵌入系统的设计和开发。AT89S52具有8k字节Flash,
15、256字节RAM,32 位I/O 口线,看门狗定时器,2 个数据指针,三个16 位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。另外,AT89S52 可降至0Hz 静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。3.2.3 显示系统设计为方便用户直观地看到当前的温度,本设计使用数码管显示器。LED显示器常用的工作方式有静态显示方式和动态显示方式。所谓静态显示方式就是当显示器显示一个字符时,相应的发光二
16、极管始终保持导通或截止。在显示的过程中,其状态是静止不变的,直到一个字符显示完毕。而动态显示方式在显示每一个字符的过程中,都是一位一位的轮流点亮要显示的各个位。每一位点亮后保留,然后去点亮下一个要点亮的位,这样反复循环。本系统采用的是LED的动态显示。在多位LED显示时,为了简化硬件电路,常常将所有位的段选线并联在一起,由一个8位的I/O口控制,而各位的共阳极或共阴极引脚则分别有单独的I/O口来控制,以实现各位的分时复用。3.2.4 电源系统设计电源系统为整个温度检测系统提供稳定可靠的电源,本系统5V稳压电路设计采用的方案是实验板上接口提供的5电源。3.3 软件设计 软件设计和开发本设计使用的
17、是基于C语言的KELL环境,使得本设计能够让软件构件更加结构化,模块化,并方便修改和扩展。下面本设计将软件分为单总线驱动,LED显示驱动,温度转化模块,主程序大循环三个模块来说明。readTemp()单总线驱动模块温度转化模块LED显示模块Init_18B20()主程序大循环san()read_byte()workTemp()write_byte()图3-3 软件结构图3.3.1温度传感器驱动设计由于本设计的系统只有一个18B20芯片,所以需要在总线上只访问一个设备。采用单总线数据传输方式,DS18B20的数据I/O均由同一条线完成。因此,对读写的操作时序要求严格。为保证DS18B20的严格I
18、/O时序,需要做较精确的延时。为了得到精确的延时,采用了硬件延时的方法。在DS18B20操作中,用到的延时有15s,90s,270s,540s等。因这些延时均为15s的整数倍,因此可编写一个DELAY15(n)函数,只要用该函数进行大约15sN的延时即可。有了比较精确的延时保证,就可以对DS18B20进行读写操作、温度转换及显示等操作。同时为了方便程序的模块化,将单总线驱动设计为初始化函数 init_1820( ),读温度函数read_byte( ),写指令函数:write_byte( ) 3个大的函数模块。 (1) 初始化主机发一个复位脉冲(最短为480gs的低电平),接着主机释放总线进入接
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 AT89S52 数字 温度计 设计
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【可****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【可****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。