DS18B20于温度测量报警系统的设计(DIY).pdf

DS18B20于温度测量报警系统的设计(DIY).pdf

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

DS18B20 DIY) DS18B20 DIY) DDSS1188BB2200于温度测量、报警系统的设计(DDIIYY)) 功能简介: 温度测量范围0~99.9摄氏度,可设置上限报警温度、下限报警温度(即高于上限值或者低于 下限值时蜂鸣器报警),默认上限报警温度为38℃、默认下限报警温度为5℃。报警值可设置 范围:最低上限报警值等于当前下限报警值,最高下限报警值等于当前上限报警值。将下限 报警值调为0时为关闭下限报警功能。他的毕业设计比较简单,以上这些功能就已经超额完 成基本要求了。 硬件设计: 电源电压VCC 为5V,可以焊一只USB 座到板上,然后用相应的USB 线连接至电 脑,通过电脑USB 口供电;数码管选用四位共阳红色数码管;DS18B20也可以根据需要用 屏蔽电缆引出来。K1为进入/退出设置键;K2为增加键;K3为减少键。 Hex Hex HHeexx文件供下载:DS18B20.txt(右键目标另存为,需要将扩展名txt 改为hex) 软件设计: 有两个文件,DS18B20.c和DS18B20.h,将这两个文件添加到工程里即可。 DS18B20.c DS18B20.c DDSS1188BB2200..cc: /****************************************************************** 程序名称:DS18B20温度测量、报警系统 简要说明:DS18B20温度计,温度测量范围0~99.9摄氏度 可设置上限报警温度、下限报警温度 即高于上限值或者低于下限值时蜂鸣器报警 默认上限报警温度为38℃、默认下限报警温度为5℃ 报警值可设置范围:最低上限报警值等于当前下限报警值 最高下限报警值等于当前上限报警值 将下限报值调为0时为关闭下限报警功能 ******************************************************************/ #include AT89X52.h #include DS18B20.h #define uint unsigned int #define uchar unsignedchar //宏定义 #define SET P3_1 //定义调整键 #define DEC P3_2 //定义减少键 #defineADD P3_3 //定义增加键 #define BEEPP3_7 //定义蜂鸣器 bit shanshuo_st; //闪烁间隔标志 bit beep_st; //蜂鸣器间隔标志 sbitDIAN =P2^7; //小数点 ucharx=0; //计数器 signedchar m; //温度值全局变量 ucharn; //温度值全局变量 ucharset_st=0; //状态标志 signedchar shangxian=38; //上限报警温度,默认值为38 signedchar xiaxian=5; //下限报警温度,默认值为38 ucharcode LEDData[]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90,0xff}; /*****延时子程序*****/ voidDelay(uint num) { while(--num ); } /*****初始化定时器0*****/ voidInitTimer(void) { TMOD=0x1; TH0=0x3c; TL0=0xb0; //50ms(晶振12M) } /*****定时器0中断服务程序*****/ voidtimer0(void) interrupt 1 { TH0=0x3c; TL0=0xb0; x++; } /*****外部中断0服务程序*****/ voidint0(void) interrupt 0 { EX0=0; //关外部中断0 if(DEC==0set_st==1) { shangxian--; if(shangxia

文档评论(0)

ziyouzizai + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档