版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、个人收集整理勿做商业用途 作者:Pan Hon glia ng 仅供个人学习 【图】DS18B20温度测量、报警系统的设计 功能简介:温度测量范围099.9摄氏度,可设置上限报警温度、下限 报警温度(即高于上限值或者低于下限值时蜂鸣器报警),默认上限报警温度为 38 C、默认下限报警温度为5C。报警值可设置范围:最低上限报警值等于当前 下限报警值,最高下限报警值等于当前上限报警值。 将下限报警值调为0时为关 闭下限报警功能。他的毕业设计比较简单,以上这些功能就已经超额完成基本要 求了。 视频演示: 硬件设计: 电源电压VCC为5V,可以焊一只USB座到板上,然后用相应的 USB线连接至电脑,通
2、过电脑 USB 口供电;DS18B20也可以根据需要用屏蔽电缆 引出来。K1为进入/退出设置键;K2为增加键;K3为减少键。电路原理图点击 放大。 Hex文件供下载:DS18B20.txt (右键目标另存为,需要将扩展名 txt改为hex) 软件设计: 有两个文件,DS18B20.C和DS18B20.h,将这两个文件添加到工程里即可。 DS18B20.C /* 程序名称:DS18B2C温度测量、报警系统 简要说明:DS18B2C温度计,温度测量范围099.9摄氏度 可设置上限报警温度、下限报警温度 即高于上限值或者低于下限值时蜂鸣器报警 默认上限报警温度为38 E、默认下限报警温度为5C 报警
3、值可设置范围:最低上限报警值等于当前下限报警值 最高下限报警值等于当前上限报警值 将下限报警值调为0时为关闭下限报警功能 编写:JiangX.net 最后更新:09/04/16晚于寝室 */ #i nclude #in clude DS18B20.h 个人收集整理勿做商业用途 /宏定义 #defi ne SETP3_1 #defi ne DECP3_2 #defi ne ADDP3_3 #defi ne BEEP P3_7 bit sha nshuo_st; bit beep_st; sbit DIAN = P2A7; /定义调整键 /定义减少键 /定义增加键 /定义蜂鸣器 闪烁间隔标志 /蜂
4、鸣器间隔标志 /小数点 #defi ne uint un sig ned int #defi ne uchar un sig ned char uchar x=0; sig ned char m; uchar n; uchar set_st=0; /* 延时子程序*/ /计数器 /温度值全局变量 /温度值全局变量 /状态标志 signed char shangxian=38;/上限报警温度,默认值为38 signed char xiaxian=5;/下限报警温度,默认值为38 uchar code LEDData=0 xC0,0 xF9,0 xA4,0 xB0,0 x99,0 x92,0 x8
5、2,0 xF8,0 x80,0 x90,0 xff; void Delay( uint num) while( -num ); /* 初始化定时器0*/ void In itTimer(void) TMOD=0 x1; TH0=0 x3c; TL0=0 xb0;/50ms (晶振 12M /*定时器0中断服务程序*/ void timer0(void) in terrupt 1 TH0=0 x3c; TL0=0 xb0; x+; /*外部中断0服务程序*/ void in t0(void) in terrupt 0 个人收集整理勿做商业用途 EXO=O;/关外部中断0 if(DEC=O if(
6、sha ngxia n xiaxia n)sha ngxia n=xiaxia n; else if(DEC=O if(xiaxia n 99)sha ngxia n=99; else if(ADD=0 if(xiaxia n sha ngxia n) xiaxia n=sha ngxia n; /* 读取温度*/ void check_we ndu(void) uint a,b,c; c=ReadTemperature()-5; /获取温度值并减去 DS18B20的温漂误差 b=c/10-a*10; m=c/10; n=c-a*100-b*10; if(m99)m=99; n=9; a=c/
7、100;/计算得到十位数字 /计算得到个位数字 /计算得到整数位 /计算得到小数位 /设置温度显示上限 /设置温度显示上限 /*显示开机初始化等待画面*/ Disp_i nit() 个人收集整理勿做商业用途 P2 = Oxbf; P1 = 0 xf7; Delay(200); P1 = Oxfb; Delay(200); P1 = 0 xfd; Delay(200); P1 = 0 xfe; Delay(200); /显示- P1 = 0 xff; /关闭显示 /*显示温度子程序*/ Disp_Temperature()/ 显示温度 _ P2 =0 xc6;/ 显示 C P1 = 0 xf7;
8、 Delay(300); P2 =LEDData n; P1 = 0 xfb; Delay(300); /显示个位 P2 =LEDDatam%10; DIAN = 0; P1 = 0 xfd; Delay(300); /显示十位 /显示小数点 P2 =LEDDatam/10; P1 = 0 xfe; Delay(300); /显示百位 P1 = 0 xff; /关闭显示 /*显示报警温度子程序*/ Disp_alarm(uchar baoj ing) P2 =0 xc6;/ 显示 C P1 = 0 xf7; Delay(200); P2 =LEDDatabaoji ng%10; P1 = 0
9、xfb; Delay(200); /显示十位 P2 =LEDDatabaoji ng/10; P1 = 0 xfd; Delay(200); /显示百位 if(set_st=1)P2 =0 x89; else if(set_st=2)P2 =0 xc7; P1 = 0 xfe; Delay(200); /上限H、下限L标示 P1 = 0 xff; /关闭显示 /* 报警子程序*/ void Alarm() if(x=10)beep_st=beep_st;x=0; if(m=sha ngxia n else BEEP=1; /* 主函数*/ void main (void) /初始化定时器 /全
10、局中断开关 /开启定时器0 uint 乙 In itTimer(); EA=1; TR0=1; ET0=1; IT0=1; IT 1=1; check_we ndu(); check_we ndu(); for(z=0;z2)set_st=0; 一 一 if(set_st=O) _ EXO=O;/关闭外部中断0 EX仁0;/关闭外部中断1 check_we ndu(); Disp_Temperature(); Alarm();/报警检测 else if(set_st=1) _ BEEP=1;/关闭蜂鸣器 EX0=1;/开启外部中断0 EX仁1;/开启外部中断1 if(x=10)sha nshu
11、o_st=sha nshuo_st;x=0; if(sha nshuo_st)Disp_alarm(sha ngxia n); else if(set_st=2) _ BEEP=1;/关闭蜂鸣器 EX0=1;/开启外部中断0 EX仁1;/开启外部中断1 if(x=10)sha nshuo_st=sha nshuo_st;x=0; if(sha nshuo_st)Disp_alarm(xiaxia n); 一 一 END DS18B20.h #i nclude #defi ne DQ P3_6 /定义DS18B20总线I/O /* 延时子程序*/ void Delay_DS18B20(i nt
12、num) while( num-); 个人收集整理勿做商业用途 /* 初始化 DS18B20*/ II稍做延时后,如果x=0则初始化成功,x=1 void In it_DS18B20(void) un sig ned char x=0; DQ = 1; Delay_DS18B20(8); DQ = 0; Delay_DS18B20(80); DQ = 1; Delay_DS18B20(14); x = DQ; 则初始化失败 /DQ复位 /稍做延时 /单片机将DC拉低 /精确延时,大于480us /拉高总线 Delay_DS18B20(20); I*读_ 个字节 * un sig ned cha
13、r Read On eChar(void) un sig ned char i=0; un sig ned char dat = 0; for (i=8;i0;i-) II给脉冲信号 II给脉冲信号 DQ = 0; dat=1; DQ = 1; if(DQ) dat|=0 x80; Delay_DS18B20 ; return(dat); void Write On eChar( un sig ned char dat) I* 写一个字节 *I un sig ned char i=0; for (i=8; i0; i-) DQ = 0; DQ = dat Delay_DS18B20(5); D
14、Q = 1; dat=1; /* 读取温度*/ un sig ned int ReadTemperature(void) un sig ned char a=0; un sig ned char b=0; un sig ned int t=0; float tt=0; /放大10倍输出并四舍五入 In it_DS18B20(); WriteO neChar(0 xCC); WriteO neChar(0 x44); In it_DS18B20(); WriteO neChar(0 xCC); WriteO neChar(0 xBE); a=Read On eChar(); b=Read On
15、eChar(); t=b; t=8; t=t|a; tt=t*0.0625; t= tt*10+0.5; return(t); /跳过读序号列号的操作 /启动温度转换 /跳过读序号列号的操作 /读取温度寄存器 /读低8位 /读高8位 END 转载自萬用電路板http:/ 版权申明 本文部分内容,包括文字、图片、以及设计等在网上搜集整理。 版权为潘宏亮个人所有 This article in eludes someparts, in cludi ng text, pictures, and desig n. Copyright is Pan Hon glia ngs pers onal own
16、ership. 用户可将本文的内容或服务用于个人学习、研究或欣赏,以及其 他非商业性或非盈利性用途,但同时应遵守著作权法及其他相关法律 的规定,不得侵犯本网站及相关权利人的合法权利。除此以外,将本 文任何内容或服务用于其他用途时,须征得本人及相关权利人的书面 许可,并支付报酬。 Users may use the contents or services of this article for pers onal study, research or appreciati on, and other non-commercial or non-profit purposes, but at t
17、he same time, they shall abide by the provisi ons of copyright law and other releva nt laws, and shall n ot infringe upon the legitimate rights of this website and its releva nt obligees. In additi on, when any content or service of this article is used for other purposes, writte n permissi on and remun erati on shall be obta ined from the pers on concerned and the releva nt obligee. 转载或引用本文内容必须是以新闻性或资料性公共免费信息为 使用目的的合理、善意引用,不得对本文内容原意进行曲解、修改, 并自负版权等法律责任。 Reproducti on or quotatio n o
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 垃圾渗滤液收处站建设项目实施方案
- 高端幕墙玻璃生产线项目规划设计方案
- 2025-2030智慧城市建设技术应用及城市数据分析平台建设研究
- 2025-2030智慧场馆设计行业市场分析投资机遇规划分析研究报告
- 2025-2030智慧农业领域科技进步与农业现代化发展策略规划分析报告
- 2025-2030智慧农业行业行业市场供需发展现状调研及投资前景评估规划分析研究报告
- 2025-2030智慧农业系统行业市场需求分析技术趋势投资规划评估报告
- 2025-2030智慧农业科技行业市场调研及投资方向
- xx片区污水管网更新改造项目规划设计方案
- 众包安全知识培训考试题及答案解析
- 2025年广东省中考英语试卷深度评析及2026年备考策略
- 2025至2030年中国智慧实验室建设行业市场运营态势及投资前景研判报告
- 定额〔2025〕1号文-关于发布2018版电力建设工程概预算定额2024年度价格水平调整的通知
- 法治及其本土资源
- 沪教版(上海)初中数学九年级第一学期-25.3(2)-解直角三角形-课件-课件PPT
- 新标准大学英语综合教程3课文翻译(1-10单元30篇)
- ABPA诊治进展(张家港中医院冯高华)
- 安全- 中国移动认证考试L1题库(附答案)
- 广告及宣传用品设计申请单
- 教师职称考试试题
- 高效课堂教学模式培训(数学)课件
评论
0/150
提交评论