单片机c语言设计电风扇,基于单片机的智能电风扇设计.doc

本设计利用STC89C52单片机为核心,结合HC-06蓝牙模块和DS18B20温度传感器,实现了一款能通过安卓终端远程无线控制的智能电风扇。系统能够自动检测并调节风扇速度以适应环境温度变化,当温度低时降低风扇转速,温度高时提高转速,提供节能且便捷的使用体验。设计中还包含了液晶屏显示当前温度和双向晶闸管实现无级调速的功能,具有较高的实用性和市场潜力。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

摘要: 本设计主要是为了使电风扇具有智能化的自动温度控制功能。本设计是以STC89C52单片机为核心的控制系统,该系统通过HC-06蓝牙模块和单片机组成小系统,再通过控制核心单片机的开关来控制风扇的自动调节,从而实现安卓终端远程无线控制功能。核心系统通过温度传感器DS18B20感测和采集周围温度,经设计的程序以实现在液晶屏上显示当前温度,并根据温度的范围通过双向晶闸管实现电风扇的无级调速。该自动控制功能目的是实现当环境温度低的时候风扇转速小,风力小;温度高时风扇转速大,风力强。该系统是把单片机控制技术应用到生活上。该设计不仅节能方便,而且价廉可靠。它符合当前智能家电设备的潮流,在未来具有发展的应用价值。

关键词 STC89C52单片机;DS18B20;蓝牙;智能温度控制

目录

摘要

Abstract

1 绪论-1

1.1 背景现状前景-1

1.1.1 电风扇的介绍-1

1.2 设计研究内容及功能-2

1.3 本章小结-3

2 设计方案-4

2.1 方案分析-4

2.1.1 方案论证-4

2.1.1.1 控制核心的选择-4

2.1.1.2 温度传感器的选用-4

2.1.1.3 调速方式的选择-4

2.2 本章小结-5

3 机械部分设计-6

3.1 电机的选择-6

3.2 参数的设定和相关计算-7

3.3 机械结构设计-10

3.4 本章总结-12

4 硬件和电路设计-13

4.1 单片机概述-13

4.2 传感器-16

4.3 温度传感器-16

4.4 显示电路-21

4.5 电源电路-22

4.6 复位、振荡电路-24

4.7 温控自动电路和调速电路-25

4.8 蓝牙模块电路-30

4.9 本章总结-32

5 系统软件设计-33

5.1 程序功能和系统软件概述-33

5.1.1 系统功能综述-33

5.1.2 Android(安卓)系统-33

5.1.2 C语言程序开发-33

5.2 程序设计流程图-34

5.2.1 系统主流程图-34

5.2.2 从系统程序流程图-35

5.2.3 蓝牙模块子程序流程图-36

5.2.4 温度显示子程序流程图-37

5.2.5 LCD子程序流程图-38

5.3 本章小结-39

总结-40

致谢-41

参考文献-42

附录-43

附录1-43

附录2-43

#include //#include #include"18b20.h" #include"12864.h" #include"ds1302.h" #include"风型.h" //#include"测速.h" #define uchar unsigned char #define uint unsigned int void Temperature(); void disp(uchar i,uchar j,uchar k,uchar x,uchar y,uchar z,uchar aa); void LcmClearBMP(); void LcmInit(); void zscl(uchar zsdata); void pwmmain(); void pwmkey(); void get_time(); void ds1302_init(); void set_time(); void set_ytime(); void d1(); void TEM(); void main() { uchar z,secs,secg,mins,ming,hours,hourg; TMOD=0x15; EA=1; ET1=1; EX1=1; IT1=0; TR0=1; TR1=1; pwmmain(); LcmClearBMP(); LcmInit(); ds1302_init(); set_time(); set_ytime(); PutStr(0,0,str2); FINT0=0; while(1) {while(!(FINT0)) { for(z=0;z<10;z++) { get_time(); secs=secsw(); secg=secgw(); mins=minsw(); ming=mingw(); hours=hoursw(); hourg=hourgw(); disp(hours,hourg,mins,ming,secs,secg,1); } TEM(); } while(FINT0) { if(jianzhi[0]==1) {if(jianzhi[1]==0) {TR0=0; TR1=0; LcmInit(); PutStr(0,0,str2); switch(jianzhi[3]) { case 0:{ WriteCommand(0x85); WriteData('0'); qq=zz=rr=1; } break; case 1:{ WriteCommand(0x85); WriteData('1'); rr=0; qq=zz=1; } break; case 2:{ WriteCommand(0x85); WriteData('2'); zz=0; qq=rr=1; } break; case 3:{ WriteCommand(0x85); WriteData('3'); qq=0; zz=rr=1; } break; } } else if(jianzhi[1]==1) { TR0=1; TR1=1; LcmInit(); PutStr(0,0,str4); //自然风 } else if(jianzhi[1]==2) { TR0=1; TR1=1; LcmInit(); PutStr(0,0,str5); //睡眠风 } } TEM(); if(P3_3)FINT0=0; } } } void TEM() {uchar Tsw,Tgw,Txs; Temperature(); pwmkey(); Tsw=isean(); Tgw=jsean(); Txs=ksean(); disp(Tsw,Tgw,Txs,0,1,2,0); }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值