多路温度集系统毕业实习.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
多路温度集系统毕业实习

毕业实习报告 题目:多路温度采集系统 学 院 电子与信息工程 专 业 电子信息工程 班级学号 0910910114 姓 名 指导教师 完成时间 2013-3-6 成 绩 2013年 3 月 一、摘要:本次设计介绍了基于单片机AT89C51控制DS18B20的智能温度显示,给出了该显示仪的硬件电路及详细说明,重点介绍了DS18B20与单片机的接口设计以及数字温度计的软件的主程序、DS18B20读写程序和显示程序,并给出了基于PROTEUS软件的电路仿真图。该仪表具有简单、稳定、实用、精度高等优点 二、实习的内容、安排 本次实习分5次实验室时间 第一次:查阅资料,为确定方案建立基础。 第二次:整理资料,确立方案。 第三次:画原理图,写仿真。 最后两次:查漏补缺,完善成果。 三、实习的具体实现 本系统中温度传感器获取较高精确度的温度值并将其传至单片机中处理并能将测得的温度在数码管中显示。还从键盘上输入需要设定的温度范围。当高与上限温度时定时触发蜂鸣器报警。需用户手动停止报警或者当温度回落至用户设定的上下限温度范围内时能自动停止报警。 根据系统的设计要求,当温度传感器DS18B20把所测得的温度发送到AT89C51单片机上,经AT89C51处理,将把温度在显示电路上显示。当开机后,显示屏和计时器进行初始化设置。 利用AT89C51芯片控制温度传感器DS18B20进行实时温度检测并显示,能够实现快速测量环境温度。 系统框图如下图: 图1.1 系统框图 选择DS18B20作为本系统的温度传感器,选择单片机AT89C51为测控系统的核心来完成数据采集、处理、显示、报警等功能。选用数字温度传感器DS18B20,输出信号全数字化。便于单片机处理及控制,省去传统的测温方法的很多外围电路,省却了采样/保持电路、运放、数/模转换电路以及进行长距离传输时的串/并转换电路,简化了电路,缩短了系统的工作时间,降低了系统的硬件成本。 当LCD液晶显示器接收到来自AT89C51单片机传送来的温度信息后,分别显示了当前的温度 词系统采用数码管显示,是考虑到其简单易实现,单片机选择89c51.电路连接图与仿真图如下。 五、附录 单片机(at89c51),数码管,温度传感器18b20 (12个),键盘(2),蜂鸣器1个 锁存器(2个) 心得体会 本次课程设计中,本人就采用了这种已经相当普及的方法设计了一个基于单片机和温度传感器的多路温度采集系统,并通过了软件仿真,最后得出了设计结果的可行性,设计过程中,首先,要对DS18B20做一个详细的了解,作为设计中一个重要的元件,要知道它的一般流程:初始化—ROM操作指令—存储器操作指令—数据传输。然后必须掌握它的每个端口的作用,并用单片机通过高低电平来控制它的工作过程,不一样的模块它的工作时序是不同,这里要通过软件正确的编写出读写时序,才能确保在测量温度的环节中不出问题。一个完整的系统同样也需要一个人机界面才能便于使用者读出数据,所以这里用到了lcd1602液晶屏,这个液晶屏的优点在于自带字库,且易于控制显示位置,基本上达到了设计的要求。 同时,在做整个课程论文的过程中,也遇到了诸多问题: 第一,不能灵活自如的运用C51语言。 第二,对某些硬件的功能不太熟悉。 第三,缺乏一定的理论基础。 但是,通过老师和同学们的帮助,最终还是取得了一个令人满意的结果,再次对帮助过我的老师和同学们表示感谢,我也会在以后的学习工作中,逐步弥补自己的不足。 程序代码 #include lcd1602.h #include ds18b20.h #include stdio.h unsigned char temp[5]; extern char xiaoshu_temp[5],zhen_temp[4]; extern bit flag; extern bit dot_dis; //uchar ds18b20_num1[8]={0x25,0x00,0x00,0x00,0xb8,0xc5,0x45,0x28}; code uchar ds18b20_num1[8]={0xfd,0x00,0x00,0x00,0xb8,0xc5,0x45,0x28}; code uchar ds18b20_num2[8]={0x8e,0x00,0x00,0x00,0xb8,0xc5,0x30,0x28}; code uchar ds18b20_num3[8]={0xb9,0x00,0x00,0x00,0xb8,0xc5,0x31,0x28}; code uchar ds18b20_num4[8]={0xe0,0x00,0x00,0x00,0xb8,0xc5,0x32,0x

文档评论(0)

135****6041 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档