编号:37
基于51单片机大棚温控系统
功能描述:
本设计由51单片机+液晶1602+按键+DS18B20温度传感器模块+键盘模块+声光报警模组成。
1、使用89C52单片机与DS18B20采集温度在液晶1602上显示
2、按键设置上下限报警值,超过报警值则蜂鸣器响
3、设有四个按键分别为温度上限加、温度上限减、温度下限加、温度下限减
Proteus7.8以上版本均可使用
视频演示链接:
37、基于51单片机大棚温控系统
仿真图:
电路图:
程序源码:
/******************************************************************
*****************************************************/
#include "reg51.h"
#include "LCD.h"
#include "DS18B20.h"
#include "KEY.h"
void main()
{
float temp = 0.0;
short temprature; //定义温度变量
P1=0X0F;
LCD_Init(); //lcd1602初始化
write_string(0,0,"Temp: ");
write_string(0,1,"up: dowm: ");
while(1)
{
temprature = DS18B20_Get_Temp(); //读取温度
write_com(0x80+5); //显示温度值
write_dat(temprature/100+0x30);
write_dat(temprature%100/10+0x30);
write_dat('.');
write_dat(temprature%100%10+0x30);
write_dat(0xdf);
write_dat('C');
temp = (float)temprature/10;
Key_borad(); //按键设置函数
if(temp>tmpup) //得到温度值 大于上限设置值
BEEP(1);
else if(temp<tmpdowm) //得到温度值 小于下限设置值
BEEP(1);
else
{_nop_();}
}
}