目录
一、主要功能
1、LCD1602液晶显示温度值
2、按键设置温度上限限阈值
3、测量温度大于上限或下限启动蜂鸣器警报
二、使用步骤
基于51单片机的温度测量系统是一种广泛应用于工业、家电及医疗等领域的嵌入式解决方案,其核心通过单片机与数字温度传感器(如DS18B20)协同工作,实现高精度、实时化的温度监测与控制。
三、硬件资源
1、51单片机核心模块
2、按键模块
3、温度传感器
4、蜂鸣器模块
5、LCD1602显示模块
四、软件设计
#include "reg52.h"
#include "lcd1602.h"
#define uint unsigned int
#define uchar unsigned char //宏定义
sbit SET=P3^1; //定义调整键
sbit DEC=P3^0 ; //定义减少键
sbit ADD=P3^2 ; //定义增加键
sbit BEEP=P1^5 ; //定义蜂鸣器
sbit DQ=P3^7 ; //定义DS18B20总线I/O
signed char m; //温度值全局变量
uchar n; //温度值全局变量
uchar set_st=0; //状态标志
uint wendu;
signed int shangxian=280; //上限报警温度,默认值为28
signed int xiaxian=200; //下限报警温度,默认值为20
/*****延时子程序*****/
void Delay_DS18B20(int num)
{
while(num--) ;
}
/*****延时子程序*****/
void Delay(uint num)
{
while( --num );
}
/*****主函数*****/
void main(void)
{
Init_LCD1602();
LCD1602_write_com(0x80);
LCD1602_write_word("Temp L-War H-War");
LCD1602_write_com(0x0c);//清屏
LCD1602_write_com(0xc0+5);
LCD1602_Show_Data(xiaxian);
LCD1602_write_com(0xc0+11);
LCD1602_Show_Data(shangxian);
Delay(2000);
while(1)
{
check_wendu();
if(SET==0)
{
Delay(2000);
do{}while(SET==0);
BEEP=0; Delay(6000);BEEP=1;
set_st++;
if(set_st==3)
set_st=0;
if(set_st==0)
LCD1602_write_com(0x0c);
}
if(set_st==0)
{
LCD1602_write_com(0xc0);
LCD1602_Show_Data(wendu);
Alarm(); //报警检测
}
else if(set_st==1)
{
BEEP=1; //关闭蜂鸣器
LCD1602_write_com(0xC0+6);//光标闪烁的位置
LCD1602_write_com(0x0f);//光标
if(DEC==0)
{
Delay(2000);
do{}while(DEC==0);
xiaxian-=10;
if(xiaxian<=0)xiaxian=0;
LCD1602_write_com(0xc0+5);
LCD1602_Show_Data(xiaxian);
}
if(ADD==0)
{
Delay(2000);
do{}while(ADD==0);
xiaxian+=10;
if(xiaxian>=990)xiaxian=990;
LCD1602_write_com(0xc0+5);
LCD1602_Show_Data(xiaxian);
}
}
else if(set_st==2)
{
BEEP=1; //关闭蜂鸣器
LCD1602_write_com(0xC0+12);
LCD1602_write_com(0x0f);
if(DEC==0)
{
Delay(2000);
do{}while(DEC==0);
shangxian-=10;
if(shangxian<=0)shangxian=0;
LCD1602_write_com(0xc0+11);
LCD1602_Show_Data(shangxian);
}
if(ADD==0)
{
Delay(2000);
do{}while(ADD==0);
shangxian+=10;
if(shangxian>=990)shangxian=990;
LCD1602_write_com(0xc0+11);
LCD1602_Show_Data(shangxian);
}
}
}
}
五、实验现象
演示视频: