当前位置: 代码迷 >> 综合 >> 146【毕设课设】基于51单片机温控风扇设计-DS18B20-热释-KEY-LCD1602
  详细解决方案

146【毕设课设】基于51单片机温控风扇设计-DS18B20-热释-KEY-LCD1602

热度:86   发布时间:2024-02-28 18:00:45.0

【资源下载】下载地址如下:
https://docs.qq.com/doc/DTlRSd01BZXNpRUxl

覆铜板2017-271、51温控风扇-DS18B20-热释-LCD1602

本设计由STC89C52单片机电路+温度DS18B20传感器电路+热释红外传感器电路+风扇控制电路+按键电路+1602液晶显示电路+电源电路组成。

1、通过4个DS18B20检测温度,并将平均值实时显示在液晶1602液晶上。

2、通过热释红外模块检测是否有人,如果没人,风扇停止转动,如果有人,风扇开始转动(默认最低速转动)。

3、平均温度在小于30度,30-40度,40-50度,50-60度,大于60度时,风扇按照1档、2档、3档、4档、5档转速旋转。并且档位实时显示在液晶上。(档位越高,速度越快)

 

#include "delay.h"
#include "1602.h"
#include "18b20.h"
#include "18b20_1.h"
#include "18b20_2.h"
#include "18b20_3.h"
#include <stdio.h>sbit fan =P1^5;	//接口定义
sbit redhot =P1^4;	//接口定义unsigned char ReadTempFlag=0;//定义读时间标志
int xdata temp1;				   //温度中间参数
float xdata temperature;	 //温度值
int xdata temp1_1;
float xdata temperature_1;int xdata temp1_2;
float xdata temperature_2;
int xdata temp1_3;
float xdata temperature_3;float lastTemp;unsigned char disFlag ;	  //显示标志
bit rekey =0;			 //按键防止重复
unsigned int SetNum =20;   //设置值
unsigned char dangNum =0;//档位
unsigned char PWMdj= 10,Count=0; //pwm调速

 

  相关解决方案