基于51单片机的温控风扇-数码管显示-风扇人体感应

发布者:BoldDreamer最新更新时间:2021-10-15 来源: eefocus关键字:51单片机  温控风扇  数码管显示 手机看文章 扫描二维码
随时随地手机看文章

一.硬件方案

系统采用51单片机作为控制平台对风扇转速进行控制。可由用户设置高、低温度值,测得温度值在高低温度之间时打开风扇弱风档,当温度升高超过所设定的温度时自动切换到大风档,当温度小于所设定的温度时自动关闭风扇。风扇控制状态随外界温度而定,并通过PWM的方式控制风扇的转速。


主要由51单片机+最小系统+数码管显示模块+数码管驱动模块+温度采集模块+人体感应模块+风扇模块+按键模块等构成:

在这里插入图片描述

二.设计功能

(1)采用DS18B20温度传感器测温,三级管驱动数码管显示温度和风扇的档位,人体感应模块检测是否有人。

(2)共3个按键:1设置、2键加、3键减。按一下设置可以设置上限值,再按下设置下限,均可以按键加减调整;

(3)利用PWM调速,当温度低于下限时,风扇步转动,当温度处于上下限之间时,1档转动(风速50%转速转动),当温度超过上限时,风扇全速转动。

(4)红外人体传感器检测周围是否有人,当周围无人时,风扇停止转动。


三.设计原理图

(1)原理图主要采用AD软件进行设计,如图:

在这里插入图片描述

(2)Protues仿真图如下:

(3)PCB图如下:

在这里插入图片描述

四.软件设计

(1)程序流程图

(2)主程序源码


/****************主函数***************/

void main()

{

static uchar value;

time_init();                    //初始化定时器 

pwm=1;

hw = 1;

while(1)

{

key(); //按键程序

if(key_can < 10)

{

key_with(); //设置温度

}

if(flag_200ms == 1)     //200ms 处理一次温度程序

{    

flag_200ms = 0;

temperature = read_temp()%1000; //先读出温度的值

if(menu_1 == 0)

{

smg_i = 3;

dis_smg[0] = smg_du[temperature % 10]; //取温度的小数显示

dis_smg[1] = smg_du[temperature / 10 % 10] & 0xdf; //取温度的个位显示

dis_smg[2] = smg_du[temperature / 100 % 10] ;    //取温度的十位显示

}

fengshan_kz();        //风扇控制函数

value ++;

if(value >= 4)

{

value = 0;

if(miao != 0)

{

miao --;    //时间减1

}

if(miao == 0)

flag_en = 0;

}

if(hw == 1)  //感应到人

{

miao = 30;

flag_en = 1;

}

}


}

}


/*************定时器0中断服务程序***************/

void time0_int() interrupt 1

{

static uchar value; //定时2ms中断一次

TH0 = 0xf8;

TL0 = 0x30;     //2ms

value++;   

display(); //数码管显示函数

if(value >= 150)

{

value = 0;   

flag_200ms = 1;

}

if(flag_lj_en == 1)    //按下按键使能

{

key_time ++;

if(key_time >= 250) //500ms

{

key_time = 0;

key_500ms = 1; //500ms

key_value ++;

if(key_value > 3)

{

key_value = 10;

flag_lj_3_en = 1; //3次后1.5秒连加大些

}

}

}

}

关键字:51单片机  温控风扇  数码管显示 引用地址:基于51单片机的温控风扇-数码管显示-风扇人体感应

上一篇:基于51单片机的红外计数器-1602显示
下一篇:基于51单片机的金属探测仪

小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
更多每日新闻

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved