单片机课程设计报告多功能温度巡检仪程序设计

上传人:cl****1 文档编号:493539181 上传时间:2022-11-05 格式:DOC 页数:22 大小:572KB
返回 下载 相关 举报
单片机课程设计报告多功能温度巡检仪程序设计_第1页
第1页 / 共22页
单片机课程设计报告多功能温度巡检仪程序设计_第2页
第2页 / 共22页
单片机课程设计报告多功能温度巡检仪程序设计_第3页
第3页 / 共22页
单片机课程设计报告多功能温度巡检仪程序设计_第4页
第4页 / 共22页
单片机课程设计报告多功能温度巡检仪程序设计_第5页
第5页 / 共22页
点击查看更多>>
资源描述

《单片机课程设计报告多功能温度巡检仪程序设计》由会员分享,可在线阅读,更多相关《单片机课程设计报告多功能温度巡检仪程序设计(22页珍藏版)》请在金锄头文库上搜索。

1、沈阳工程学院课程设计任务书课程设计题目:多功能温度巡检仪程序设计系 别 班级学生姓名 学号指导教师 职称 教授课程设计进行地点:任务下达时间: 15 年1月12日起止日期:15年1月12日起至15年1月23日止系主任年 月 日批准1. 设计主要内容及要求;编写多功能温度巡检仪程序。要求:1)多路温度测量和显示。2 )可以设置正常温度范围,越限报警。2. 对设计论文撰写内容、格式、字数的要求;(1).课程设计论文是体现和总结课程设计成果的载体, 一般不应少于3000 字。(2).学生应撰写的内容为:中文摘要和关键词、目录、正文、参考文献等。 课程设计论文的结构及各部分内容要求可参照沈阳工程学院毕

2、业设计(论文) 撰写规范执行。应做到文理通顺,内容正确完整,书写工整,装订整齐。(3).论文要求打印,打印时按沈阳工程学院毕业设计(论文)撰写规范 的要求进行打印。(4).课程设计论文装订顺序为:封面、任务书、成绩评审意见表、中文 摘要和关键词、目录、正文、参考文献。3.时间进度安排;顺序阶段日期计划完成内容备注11月12日教师讲解题目,学生查阅相关资料21月13日查阅相关资料、进行方案论证31月14日参数计算、确定温度超限设置方法41 月 15、16、19 日编写程序51 月 20、21日调试程序61月22日撰写论文71月23日验收作品、答辩中文摘要随着人们生活水平的不断提高, 单片机控制无

3、疑是人们追求的目标之一, 它 所给人带来的方便也是不可否定的, 其中数字温度测量就是一个典型的例子。 温 度测量系统广泛应用于社会生活的各个领域 ,如家电、汽车、材料、电力电子 等。但人们对它的要求越来越高,要为现代人工作、科研、生活、提供更好的更 方便的设施就需要从数单片机技术入手, 一切向着数字化控制, 智能化控制方向 发展。本设计以C8051F020芯片为核心,辅以必要的外围电路,设计了一个简易的 多路温度巡检仪。在硬件方面,除了 CPU外,系统采用DS18B20数字温度传感器 测量温度 ,采用 1602液晶显示屏显示当前温度。 然后通过三个独立按键来设置一 个正常温度的范围的最小值和最

4、大值, 当温度不在设置的正常温度范围内, 用于 报警的蜂鸣器就会发出响声。在软件反面,采用C语言设计,系统能够准确测量 三路温度并且显示,并且具有调整温度范围和报警的功能。此系统严格按照要求设计, 最终达到预期的效果, 能够测量和显示多路温度, 并且可以设置正常的温度范围, 超过范围具有报警功能。 是一次比较成功的设计。 关键字 : 单片机 测温 显示 报警1课程设计要求1.1设计主要内容及要求编写多功能时钟程序要求:1)多路温度测量和显示。2 )可以设置正常温度范围,越限报警。1.2对设计论文撰写内容、格式及字数的要求(1) .课程设计论文是体现和总结课程设计成果的载体,一般不应少于3000

5、 字。(2).学生应撰写的内容为:中文摘要和关键词、目录、正文、参考文献等。 课程设计论文的结构及各部分内容要求可参照沈阳工程学院毕业设计(论文) 撰写规范执行。应做到文理通顺,内容正确完整,书写工整,装订整齐。(3).论文要求打印,打印时按沈阳工程学院毕业设计(论文)撰写规范 的要求进行打印。(4).课程设计论文装订顺序为:封面、任务书、成绩评审意见表、中文 摘要和关键词、目录、正文、参考文献。1.3时间进度安排3.时间进度安排;顺序阶段日期计划完成内容备注11月12日教师讲解题目,学生查阅相关资料21月13日查阅相关资料、进仃方案论证31月14日参数计算、确定温度超限设置方法41 月 15

6、、 16、19日编写程序51 月 20、 21日调试程序61月22日撰写论文71月23日验收作品、答辩2 课程设计思路本设计主要介绍单片机编程来实现系统功能, 本设计由C8051F020芯片为主 要核心,采用DS18B20数字温度传感器测量当前温度,采用 1602液晶显示屏显 示当前温度。 正常温度的设置采用三个按键, 其中一个功能按键, 用来选择设置 后温度最小值和温度最大值,另外两个按键分别是设置温度时用来加减温度。2.1 测温和显示数字温度传感器DS18B20因其内部集成了 A/D转换器,使得电路结构更加简单, 而且减少了温度测量转换时的精度损失, 使得测量温度更加精确。 数字温度传感

7、器DS18B20只用一个引脚即可与单片机进行通信, 大大减少了接线的麻烦,使得 单片机更加具有扩展性。DS18B20采用单总线的方式和单片机进行通信,通过编 程,单片机可以直接从 DS18B20内部读取温度值。本次设计使用的 1602液晶显 示器为5V电压驱动,带背光,可显示两行,每行16个字符,不能显示汉字,内 置 128 个字符的 ASCII 字符集字库。2.2 设置正常温度范围系统采用三个按键,KEY1,KEY2,KE3设置正常的温度范围,其中,KEY1是功能选 择按键,按KEY1可以在显示温度,设置正常温度最小值,设置正常温度最大值 三个模式中切换。 当选择设置正常温度最小值或设置正常

8、温度最大值模式时, 液 晶显示正常温度范围的最小值或者最大值, 然后通过按键KEY2和KEY3可以选择 让这个值增加或者减小。2.3 报警功能在显示温度时, 当报警电路就开始工报警功能的电路采用一个三极管驱动的蜂鸣器作为报警电路, 测得三路温度中有任何一路的温度不在正常温度的范围内时, 作,发出响声。4各模块程序设计4.1测温部分DS18B20采用单总线方式与单片机之间经行通信,所以在程序中,单片机只要操作一个10口就可以对 DS18B20经行操作,完成测温的功能。DQ0DQ2分别对应三个 DS18B20。程序主要包括四个函数,分别说传感器初始化操作,读字节操作,写字节操作和读取温度操作。代码

9、如下:*/* 初始化 ds1820*DQ0 = 1 ;DQ1 =1 ;DQ2 =1 ; /DQ 复位Delay(10) ;/稍做延时DQ0 = 0 ;DQ1 =0 ;DQ2 =0 ; / 单片机将 DQ 拉低Delay(100) ;/ 精确延时 大于 480usDQ0 = 1 ;DQ1 =1 ;DQ2 =1 ; / 拉高总线Delay(8) ;presence =DQ;Delay(100) ;DQ0 = 1 ;DQ1 =1 ;DQ2 =1 ; / 拉高总线return(presence)J/返回信号,表示初始化成功,否则表示初始化失败uchar Init_DS18B20(void)/* 读一个

10、字节*/*void ReadOneChar(void) unsigned char i = 0 ;dat0 = 0 ;dat1 = 0 ;dat2 = 0 ; for (i = 8 ; i 0 ; i-)DQ0 = 0;DQ1 = 0;DQ2 = 0; dat0= 1;dat1= 1;dat2=1;DQ0 = 1;DQ1 = 1;DQ2 = 1; Delay(1);if(DQ0) dat0 |= 0x80 ;零了?/ 给脉冲信号 /用于存放数据的字节右移一位/ 给脉冲信号/稍做延时/ 如果总线为高,说明返回的数据时1/将 1 写入变量中,如果是 0 则不写,因为前面已经清if(DQ1)dat1

11、 |= 0x80 ;if(DQ2)dat2 |= 0x80 ; Delay(6) ;/* 写一个字节*/*void WriteOneChar(unsigned char dat)unsigned char i = 0 ;for (i = 8 ; i 0 ; i-)DQ0 = 0 ;DQ1 = 0 ;DQ2 = 0 ;DQ0 = dat&0x01 ; 低电平即可DQ1 = dat&0x01 ;DQ2 = dat&0x01 ;Delay(6) ;DQ0 = 1 ;DQ1 = 1 ;DQ2 = 1 ; dat=1 ;/单片机将 DQ 拉低/ 如果写的数据位是 1,则拉高总线,否则总线保持/拉高总线/

12、要写的数据右移一位/* 读取温度*/*void Read_Temperature(void) Init_DS18B20() ;WriteOneChar(0xCC) ;WriteOneChar(0x44) ; Init_DS18B20() ; WriteOneChar(0xCC) ; WriteOneChar(0xBE) ; ReadOneChar() ; wd0=dat0; wd1=dat1; wd2=dat2; ReadOneChar() ; wd0=wd0+256*dat0; wd1=wd1+256*dat1; wd2=wd2+256*dat2; wd0=wd0*0.625; wd1=wd

13、1*0.625; wd2=wd2*0.625;/ 跳过读序号列号的操作/ 启动温度转换/初始化 DS18B20/跳过读序号列号的操作/读取温度寄存器/ 温度低 8 位/先将温度低 8 位存到 16位的变量中/ 温度高 8 位/将温度的高 8位也存到 16 位的变量中/转化成实际温度,保留一位小数4.2 显示部分1602 液晶显示屏采用并口方式与单片机进行通信,单片机的 P0 口与液晶的数据口链接,P2.0, P2.1, P2.2分别与液晶的 RS, RW, EN三个命令端相连。通过正确的时序,单片机 就可以控制 1 602液晶显示我们需要的字符。程序主要包括三个函数,液晶初始化函数,写 命令函数,写数据函数。代码如下:*/* 检查 LCD 忙状态/*lcd_busy 为 1 时,忙,等待。 lcd-busy 为 0 时 ,闲,可写指令与数据。*/*/ bit lcd_busy()bit result ;LCD_RS = 0 ; LCD_RW = 1 ;LCD_EN = 1

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 演讲稿/致辞

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号