51单片机控制的DS18B20温度测量报警系统(可设置范围)

时间:2023-03-27来源:佚名

最近南方天天下大雨,下的人心情都郁闷了,最近应一个粉丝的留言,说毕业设计课题是一个单片机的温度自动测量报警装置。希望我可以帮帮他, 我就用常见的DS18B20做了一个报警系统,供大家学习和参考。

需要的功能及作用

单片机DS18B20温度测量系统的测量范围为0-99.9摄氏度,可设置上限报 警温度、下限报 警温度(即高于上限值或者低于下限值时蜂鸣器报 警),默认上限报 警温度为38℃、默认下限报 警温度为5℃。报警值可设置范围:最低上限报警值等于当前下限报警值,最高下限报 警值等于当前上限报 警值。将下限报 警值调为0时为关闭下限报 警功能。电源电压VCC为5V,可以焊一只USB座到板上,然后用相应的USB线连接至电脑,通过电脑USB口供电;DS18B20也可以根据需要用屏蔽电缆引出来。K1为进入/退出设置键;K2为增加键;K3为减少键。

老规矩废话不多说,先上实物图

51单片机控制的DS18B20温度测量报警系统(可设置范围)

电路设计原理图如下:

51单片机控制的DS18B20温度测量报警系统(可设置范围)

制作好的PCB成品如下:

51单片机控制的DS18B20温度测量报警系统(可设置范围)

因为项目比较简单就不放一些具体的工艺图片了

本项目C语言参考源代码 如下:

define DQ P3_6 //定义DS18B20总线I/O

/*****延时子程序*****/

void Delay_DS18B20(int num)

{

while(num--) ;

}

/*****初始化DS18B20*****/

void Init_DS18B20(void)

{

unsigned char x=0;

DQ = 1; //DQ复位

Delay_DS18B20(8); //稍做延时

DQ = 0; //单片机将DQ拉低

Delay_DS18B20(80); //精确延时,大于480us

DQ = 1; //拉高总线

Delay_DS18B20(14);

x = DQ; //稍做延时后,如果x=0则初始化成功,x=1则初始化失败

Delay_DS18B20(20);

}

/*****读一个字节*****/

unsigned char ReadOneChar(void)

{

unsigned char i=0;

unsigned char dat = 0;

for (i=8;i>0;i--)

{

DQ = 0; // 给脉冲信号

dat>>=1;

DQ = 1; // 给脉冲信号

if(DQ)

dat|=0x80;

Delay_DS18B20(4);

}

return(dat);

}

/*****写一个字节*****/

void WriteOneChar(unsigned char dat)

{

unsigned char i=0;

for (i=8; i>0; i--)

{

DQ = 0;

DQ = dat&0x01;

Delay_DS18B20(5);

DQ = 1;

dat>>=1;

}

}

/*****读取温度*****/

unsigned int ReadTemperature(void)

{

unsigned char a=0;

unsigned char b=0;

unsigned int t=0;

float tt=0;

Init_DS18B20();

WriteOneChar(0xCC); //跳过读序号列号的操作

WriteOneChar(0x44); //启动温度转换

Init_DS18B20();

WriteOneChar(0xCC); //跳过读序号列号的操作

WriteOneChar(0xBE); //读取温度寄存器

a=ReadOneChar(); //读低8位

b=ReadOneChar(); //读高8位

t=b;

t<<=8;

t=t|a;

tt=t*0.0625;

t= tt*10 0.5; //放大10倍输出并四舍五入

return(t);

}

鉴于篇幅有限,只能写部分代码,如需要完整技术文件请私信我或者在下方留言,看到后会第一时间回复。如果有不同的意见或者建议欢迎大家批评指正,让我们一起学习,共同进步!

最后祝大家学业有成,如果有兴趣也可以跟着做一做哦!

    相关阅读

    空调小管(供液管)结霜是什么原因

    空调空调小管(供液管)结霜,常见原因如下: 1、缺冷媒 当空调中缺少冷媒时,极有可能出现空调结霜 现象。解决办法:及时查漏补漏,添加适量的制冷剂,使空调恢复运行。 2、系统...
    2022-12-12
    空调小管(供液管)结霜是什么原因

    空调铜管裸露在外面有什么影响?

    几十年前安装的空调,铜管都是裸露的,没有现在这么讲究,但制冷制热效果一样杠杠的。先抛开“空调用铜管还是铝管好 ”不说,单从使用者的角度来说,将铜管裸露在外是有影响的...
    2022-12-12
    空调铜管裸露在外面有什么影响?

    电风扇不转的四种原因,电风扇不转的处理方法

    在平时使用电风扇时,有时会遇到电风扇不转的问题,那么是什么原因引起的风扇不转,原因有很多种,最常见的电风扇不转的原因就是电容损坏,线路问题,电机故障等,下面就来看...
    2022-12-23
    电风扇不转的四种原因,电风扇不转的处理方法

    空调指示灯亮着会不会费电,一年能费多少度电

    对于空调指示灯亮着会不会费电的问题,会费电,这个不用怀疑。无论哪一种电器设备,哪怕是微小的指示灯,也会是费电的,只是费电量微乎其乎,一年消耗的电量可以忽略不计。...
    2022-12-23
    空调指示灯亮着会不会费电,一年能费多少度电

    建筑物防雷问题:高层建筑防雷接闪器设计及安装规范

    建筑物防雷问题:高层建筑防雷接闪器设计及安装规范 高层建筑 防雷 接闪器设计及安装规范 雷电是一种强度极大、作用时间极短的瞬变过程。雷电流击中建筑物时,通常会产生电效应...
    2022-12-21
    建筑物防雷问题:高层建筑防雷接闪器设计及安装规范

    小牛电动车怎么解锁限速,6个步骤帮你搞定解限速问题

    有关小牛电动车解限速的方法,可以破解20公里限速的,破解流程不复杂,只要6个步骤就可以搞定,小牛电动车怎么解锁限速,可以来试一试本文给出的解锁限速的方法。 小牛电动车解...
    2022-12-13
    小牛电动车怎么解锁限速,6个步骤帮你搞定解限速问题

    2022年格力大一匹空调移机多少钱

    格力大一匹空调移机费用 大一匹的格力空调一般是1.5匹的,2022年1.5匹和1.5匹以下的空调移机费用: 1、普通移机费用150元1台,只拆不装和单装是100元1台; 2、2楼以下无高空费,2楼-5楼...
    2022-12-12
    2022年格力大一匹空调移机多少钱

    空调开冷气时温度越低会不会越费电

    家里买了空调,在夏天用的时候较多,即空调制冷比制热的时间要多一些,那么空调开冷气时温度越低越费电吗,空调开度28度与22度时哪一个会更费电,电工天下小编带大家来了解下。...
    2022-12-23
    空调开冷气时温度越低会不会越费电

    网站栏目