基于单片机人体自感应风扇仿真设计
1462下载地址 https://docs.qq.com/doc/DWEpnR2pOWU91b3p4?pub=1&dver=2.1.0
利用温度传感器DS18B20检测环境温度并直接输出数字温度信号给单片机AT89C52进行处理和热释电红外传感器,在液晶屏上显示当前环境温度值以及是否有人。检测到的当前环境温度可精确到小数点后两位位。同时通过测定温度和PWM脉宽调制方式来改变直流风扇电机的转速。
#include <DS18B20.h>
#include <lcd.h>
#define uchar unsigned char
#define uint unsigned int
//#define High_Time 10 //高电平时间,High_Time/ALL_Time=脉宽,单位为ms
#define ALL_Time 20 //周期时间,单位为ms
sbit PWM_OUT=P2^0;
sbit Pin=P1^2;//是否有人
uint tt=0;
uint High_Time=0;//高电平时间
void Led(unsigned int date)
{
if(fg==1)//正
{
write_sfm_temp(date);//显示温度整数部分
write_sfm_temp1(1,xiaoshu1);//显示温度第一位小数
write_sfm_temp1(2,xiaoshu2);//显示温度第二位小数
}
if(fg==0) //温度为负时显示的数据
{
write_sfm_temp(date);//显示温度整数部分
write_sfm_temp1(1,xiaoshu1);//显示温度第一位小数
write_sfm_temp1(2,xiaoshu2);//显示温度第二位小数
}
}



浙公网安备 33010602011771号