网站大量收购独家精品文档,联系QQ:2885784924

基于mega16单片机温度检测系统设计 大学学位论文.doc

基于mega16单片机温度检测系统设计 大学学位论文.doc

  1. 1、本文档共14页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于mega16单片机温度检测系统设计 大学学位论文

单片机课程设计报告 基于MEGA16单片机温度检测系统 (作品图) 一,系统设计目的,用途,功能 1,目的。通过基于MEGA16芯片和DS18B20温度传感器控制温度,熟悉芯片的使用,温度传感器的功能,实验电路板的焊接,数码显示管的使用,汇编语言的设计。锻炼团队合作能力,动手设计能力以及发现问题并且解决问题的能力。 2,用途。 温度是工业控制中主要的被控参数之一。随着电子技术和微型计算机的迅速发展,微机测量和控制技术得到了迅速的发展和广泛的应用。单片机具有处理能强、运行速度快、功耗低等优点,应用在温度测量与控制方面,控制简单方便,测量范围广,精度较高。 本文设计了一种基于MEGA16单片机的温度测量和控制装置,能对环境温度进行测量,在温度过高时,蜂鸣器发出蜂鸣声,有利于保障工业控制中的安全性。并且能根据温度给定值给出调节量,控制执行机构,实现调节环境温度的目的。 3,功能.DS18b20温度传感器温度的精确度高达0.1度,在许多工业控制中已经足够。可以满足从-55摄氏度到+125摄氏度测量范围,在一秒内把温度转化成数字,测得的温度值的存储在两个八位的RAM中,单片机直接从中读出数据转换成十进制就是温度,使用方便。 从用途上讲,该单片机类似于温度计,但用途又不仅仅集限于温度计,由于蜂鸣器的使用,编写程序后,超过预设温度后,蜂鸣器发出蜂鸣声,为工业控制的安全保驾护航。 二,硬件设计思想和电路原理图 下图为温度传感器驱动电路图 18b20 下图为硬件连接框架图 硬件连接图如上. 三,详细说明如何使用硬件单元 1,七段数码管型号是LG5641AH(共阴极)的使用。 该显示管总共有12 个引脚,包括a-g和dp以及四个位选g1-g4。将a-f分别与ATmega芯片的PB1-PB6连接,g1-g4分别与PD0-PD3连接。 2,蜂鸣器的连接。 蜂鸣器的两个引脚分别与ATmega芯片的PC2,PC1连接,其中,前者接负极,后者接正极。 3,DS18B20温度传感器的连接。该传感器3个端口分别与接地口,芯片的PA7,去耦电容104连接。 四.软件设计流程和设计思想 软件设计思想: 现在生活很多方面都要用到温度这个概念,例如在温室里需要时刻注意温度的变化,另外在一些科学实验里面,温度是一个很重要的条件,很多情况下要都对温度作很严格的要求,往往温度的一点不适当会引起相当大的变化,从而影响一些重要结果的得出.因此对于环境温度的测量显得很重要.基于这一点,萌生了采用单片机对温度进行监视的想法. 五.软件功能: 实现对温度的监视,达到实时显示的目的. 实现对不适合温度的警报,方便对温度监控. (报警温度可人工设定) 六.系统测试过程及测试数据: (1) 时间:08年6月8 日13:10 地点:十二号楼124宿舍 测试对象:室内温度 设定警报温度:31℃ 时间 13:20 13:25 13:30 13:35 13:40 温度 30.3 30.4 30.3 30.3 30.3 (2)时间:08年6月8日22:20 地点:十二号楼124宿舍 测试对象:室内温度 设定警报温度:31℃ 时间 22;20 22:25 22:30 22:35 22:40 温度 29.7 29.7 29.7 29.8 29.7 七.实验程序代码#include iom16v.h #include macros.h unsigned char ds1820_reset(void); unsigned int ds1820_read_temp(void); #define DQ_IN DDRA = ~(1 PA7) /*设置输入*/ #define DQ_OUT DDRA |= (1 PA7) /*设置输出*/ #define DQ_CLR PORTA = ~(1 PA7) /*置低电平*/ #define DQ_SET PORTA |= (1 PA7) /*置高电平*/ #define DQ_R PINA (1 PA7) /*读了电平*/ unsigned char flag; /*中断标志缓存*/ /* 延时函数 延时时间:i X 10 + 16uS。 CPU频率为:1MHz。 */ void delay_10us(unsigned char i) { if(i==0) { return ; }

您可能关注的文档

文档评论(0)

李天佑 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档