当前位置: 首页 > news >正文

毕业设计 基于51单片机WIFI智能家居系统设计

基于51单片机WIFI智能家居系统设计

  • 1、毕业设计选题原则说明(重点)
  • 2、项目资料
    • 2.1 系统框架
    • 2.2 系统功能
  • 3、部分电路设计
    • 3.1 STC89C52单片机最小系统电路设计
    • 3.2 ESP8266 WIFI电路设计
    • 3.3 DHT11温湿度传感器电路设计
  • 4、部分代码展示
    • 4.1 LCD12864显示字符串
    • 4.2 串口初始化
    • 4.3 DHT11读取温湿度
    • 4.4 ESP8266 WIFI模块初始化
  • 5. 实物图
  • 项目编号

1、毕业设计选题原则说明(重点)

  • 选题之前,同学们要弄明白一件事情,做毕业设计是干什么用的!
  • 这里我告诉大家,毕业设计对于你来说,不是让你去搞研究,掌握运用所学知识的,也不是让你去比谁做的毕业设计多么牛逼,多么厉害。
  • 说白点,它的作用就是一个,让你顺利毕业,能够拿到学位证,毕业证而已!!!
  • 当你明白这一点后,作毕业设计的要求就是在满足老师的要求后,越简单越好,这样不但容易去做,而且你自己也容易去理解,掌握,同样也能花最少的钱!!!
  • 满足老师的要求,这个没办法,毕竟他是决定你是否能通过答辩的人。
  • 每年都有很多同学找到我的时候,后悔当初为什么要把功能写的那么复杂,后悔没有提前找我咨询一下!所以在这里提醒同学们,提交开题报告之前一定要多想想,咨询下以往的学长学姐,不要自己随便写一堆提交上去!!!
  • 大家找不到学长学姐的话,也可以找我免费咨询,我可以给大家一些建议
  • 点击此处即可咨询

2、项目资料

  • 点击查看详细资料

2.1 系统框架

本设计采用STC89C51/52单片机作为主控芯片,ESP8266实现WIFI远程数据传输,随时随地在外就可以远程监控家中情况,控制家电等。在这里插入图片描述

2.2 系统功能

  • 1、本设计采用STC89C51/52单片机作为主控芯片,ESP8266实现WIFI远程数据传输,随时随地在外就可以远程监控家中情况,控制家电等;
    • 板子WIFI默认连接的WIFI【账号:DuoDuoXueZhang】【密码:123456789】
    • 手机端发送以下指令:
    • 打开继电器1 :DKJDQ1
    • 关闭继电器1 :GBJDQ1
    • 打开继电器2 :DKJDQ2
    • 关闭继电器2 :GBJDQ2
    • 获取温湿度数据 :HQSJ
  • 2、板子上加入两路继电器可以连接控制家电、风扇、电灯、空调等设备,继电器带有工作指示灯;
  • 3、采用DHT11温湿度传感器测量环境中的温湿度,LCD1602液晶显示屏实时显示,并通过WIFI实时传输到手机上;
  • 4、可以通过按键设定温湿度报警值,并存储于AT24C02中,当实测值超过设定值时系统发送声光报警提醒;

3、部分电路设计

3.1 STC89C52单片机最小系统电路设计

STC89C52RC单片机是宏晶科技推出的新一代高速、低功耗、超强抗干扰的单片机,指令代码完全兼容传统8051单片机,12时钟/机器周期和6时钟/机器周期可以任意选择。

STC89C52单片机最小系统电路由复位电路、时钟电路和电源电路。拥有这三部分电路后,单片机即可正常工作。

单片机最小系统原理图如下图所示:

实物图:

3.2 ESP8266 WIFI电路设计

WIFI模块采用的是ESP8266,该WIFI模块采用了串口的通讯协议与单片机之间进行通讯。单片机采用AT指令控制模块的工作。该模块无线传输速率最高可达150Mbps。信道个数可达到14个,频率范围2.4-2.4835G,发射功率12-15DBM,2 个以太网口、2 个串口。它的系统配置管理采用远程Web 管理。串口波特率非常宽,在1200~230400bps(支持非标准波特率)之间,工作温度:-20-70℃。

其具体电路原理图如下图所示:

  • 实物图

3.3 DHT11温湿度传感器电路设计

DHT11数字温湿度传感器是一款含有已校准数字信号输出的温湿度复合传感器,它应用专用的数字模块采集技术和温湿度传感技术,确保产品具有极高的可靠性和卓越的长期稳定性。传感器包括一个电阻式感湿元件和一个NTC测温元件。该产品具有品质卓越、超快响应、抗干扰能力强、性价比极高等优点。每个DHT11传感器都在极为精确的湿度校验室中进行校准。校准系数以程序的形式存在OTP内存中,传感器内部在检测型号的处理过程中要调用这些校准系数。单线制串行接口,使系统集成变得简易快捷。超小的体积、极低的功耗,使其成为该类应用中,在苛刻应用场合的最佳选择。

其具体电路原理图如下图所示:

实物图如下:

4、部分代码展示

4.1 LCD12864显示字符串

void PutStr(unsigned char row,unsigned char col,unsigned char *puts)
{    WriteCommand(0x30);WriteCommand(AC_TABLE[8*row+col]);while(*puts != '\0'){if(col==8){col=0;row++;}if(row==4) row=0;WriteCommand(AC_TABLE[8*row+col]);WriteData(*puts);puts++;if(*puts != '\0'){WriteData(*puts);puts++;col++;}  }
}

4.2 串口初始化

void UartInit(void)		//2400bps@11.0592MHz
{SCON = 0x50;            //8-bit variable UARTPCON=0X00;TMOD = 0x20;            //Set Timer1 as 8-bit auto reload modeTH1 = TL1 = 0XF4; //Set auto-reload vauleTR1 = 1;                //Timer1 start runES = 0;                 //Enable UART interruptEA = 0;                 //Open master interrupt switch
} 

4.3 DHT11读取温湿度

void DHT11_read(void)
{DHT11_DB=0;						  //拉低DHT11信号线Delay_ms(20);					  //延时20msDHT11_DB=1;						  //拉高DHT11信号线Delay_us(60);					  //延时60usif(!DHT11_DB)					  //等待DHT11拉高响应{DHT11_num=2;				  //重置超时变量while(!DHT11_DB&&DHT11_num++);//等待DHT11变为高电平DHT11_num=2;				  //重置超时变量while(DHT11_DB&&DHT11_num++); //等待DHT11变为低电平Humi_H=DHT11_receive();		  //接收温度整数位Humi_L=DHT11_receive();		  //接收温度小数位Temp_H=DHT11_receive();		  //接收湿度整数位Temp_L=DHT11_receive();		  //接收湿度小数位Check_data=DHT11_receive();	  //接收数据校验位DHT11_DB=1;					  //拉高DHT11信号,结束本次数据读取}
}

4.4 ESP8266 WIFI模块初始化

void ESP8266_init()
{SCON = 0x50 ;  //UART为模式1,8位数据,允许接收TMOD |= 0x20 ; //定时器1为模式2,8位自动重装PCON |= 0x80 ; //SMOD=1;TH1 = 0xFA ;   //Baud:9600 fosc=11.0592MHzTL1=0xFA;TR1 = 1 ;      // timer 1 runES=0;		   //关闭串口中断EA=1;		   //开启总中断ESP8266_zhuce();//ESP8266配置参数
}

5. 实物图

项目编号

010

相关文章:

毕业设计 基于51单片机WIFI智能家居系统设计

基于51单片机WIFI智能家居系统设计1、毕业设计选题原则说明(重点)2、项目资料2.1 系统框架2.2 系统功能3、部分电路设计3.1 STC89C52单片机最小系统电路设计3.2 ESP8266 WIFI电路设计3.3 DHT11温湿度传感器电路设计4、部分代码展示4.1 LCD12864显示字符串…...

Nginx服务优化措施与配置防盗链

目录 一.优化Nginx的相关措施 二.隐藏/查看版本号 三.修改用户与组 四.设置缓存时间 五.日志切割脚本 六.设置连接超时控制连接访问时间 七.开启多进程 八.配置网页压缩 九.配置防盗链 1.配置web源主机(192.168.79.210 www.zhuo.com) 1.1 安装…...

Java 某厂面试题真题合集

哈喽~大家好,这篇来看看Java 某厂面试题真题合集。 🥇个人主页:个人主页​​​​​ 🥈 系列专栏:【日常学习上的分享】 🥉与这篇相关的文章: Spr…...

很特别的5G市场,5.75亿部手机,却有11亿5G用户,这是怎么了?

中国在5G商用方面已取得了巨大的成绩,这是毋庸置疑的,不过近期公布的一份数据却相当特别,5G手机用户数为5.75亿,而开通了5G套餐的用户数却已超过11亿,这数据对比有点意思。中国在5G商用方面推进很快,建成的…...

go modules

文章目录1. 简介示例1. 示例——同一项目2. 示例——不同项目3. 示例——添加远程模块依赖库1. 简介 go module是Go1.11版本之后官方推出的版本管理工具,并且从Go1.13版本开始,go module将是Go语言默认的依赖管理工具。到今天Go1.14版本推出之后Go modu…...

Baklib客户故事:快递助手ERP

快递助手ERP以多平台多店铺订单管理为核心,集打单发货、商品、库存、采购、售后于一体,中小商家易上手的轻量级ERP,可以满足满足微商、自建商城、档口货源网、一件代发等不同类型客户的打单需求,通过开放平台API接口,自…...

MongoDB学习(java版)

MongoDB概述 结构化数据库 ​ 结构化数据库是一种使用结构化查询语言(SQL)进行管理和操作的数据库,它们的数据存储方式是基于表格和列的。结构化数据库要求数据预先定义数据模式和结构,然后才能存储和查询数据。结构化数据库通常…...

RK3568平台开发系列讲解(显示篇)什么是DRM

🚀返回专栏总目录 文章目录 一、DRM介绍二、DRM与framebuffer的区别沉淀、分享、成长,让自己和他人都能有所收获!😄 📢本篇文章将介绍什么是DRM。 一、DRM介绍 DRM 是 Linux 目前主流的图形显示框架,相比FB架构,DRM更能适应当前日益更新的显示硬件。 比如FB原生不支…...

Python蓝桥杯训练:基本数据结构 [二叉树] 上

Python蓝桥杯训练:基本数据结构 [二叉树] 上 文章目录Python蓝桥杯训练:基本数据结构 [二叉树] 上一、前言二、有关二叉树理论基础1、二叉树的基本定义2、二叉树的常见类型3、二叉树的遍历方式三、有关二叉树的层序遍历的题目1、[二叉树的层序遍历](http…...

vuex基础之初始化功能、state、mutations、getters、模块化module的使用

vuex基础之初始化功能、state、mutations、getters、模块化module的使用一、Vuex的介绍二、初始化功能三、state3.1 定义state3.2 获取state3.2.1 原始形式获取3.2.2 辅助函数获取(mapState)四、mutations4.1 定义mutations4.2 调用mutations4.2.1 原始形式调用($store)4.2.2 辅…...

WebSphere中间件漏洞总结

WebSphere中间件漏洞总结 一、WebSphere简介 WebSphere为SOA(面向服务架构)环境提供软件,以实现动态的、互联的业务流程,为所有业务情形提供高度有效的应用程序基础架构。WebSphere是IBM的应用程序和集成软件平台,包含所有必要的中间件基础架构(包括服务器、服务和工具)…...

Unity之ASE实现影魔灵魂收集特效

前言 我们今天来实现一下Dota中的影魔死亡后,灵魂收集的特效。效果如下: 实现原理 1.先添加一张FlowMap图,这张图的UV是根据默认UV图,用PS按照我们希望的扭曲方向修改的如下图所示: 2.通过FlowMap图,我…...

半入耳式耳机运动会不会掉、佩戴超稳固的运动耳机推荐

现在越来越多的人开始意识到运动的重要性,用运动给身体增加一道“防护墙”是最好的生活方式了,不过,日复一日做着几乎相同的动作,难免索然无味,所以很多人都会选择在运动时戴上耳机听歌解闷,这时候也有不少…...

使用Tensorflow完成一个简单的手写数字识别

Tensorflow中文手册 介绍TensorFlow_w3cschool 模型结构图: 首先明确模型的输入及输出(先不考虑batch) 输入:一张手写数字图(28x28x1像素矩阵) 1是通道数 输出:预测的数字(1x10的one…...

OpenGL三种向着色器传递数据的方法 attributes,uniform,texture以及中间产物

(1)属性,使在顶点着色器中使用的变量,用于描述顶点的属性,如位置、颜色、法向量等,attributes通常用于描述每个顶点的属性,因此在顶点缓冲对象中存储,渲染的时候,openGL会…...

详解package.json和package-lock

详解package.json和package-lockpackage.json和package-lock.json作用首先要明确一点,package.json不会自动生成,需要我们使用 npm init 创建。package-lock.json是自动生成的,我们使用 npm install 安装包后就会自动生成。在我们执行 npm in…...

02-CSS

一、emmet语法1、简介Emmet语法的前身是Zen coding,它使用缩写,来提高html/css的编写速度, Vscode内部已经集成该语法。快速生成HTML结构语法快速生成CSS样式语法2、快速生成HTML结构语法生成标签 直接输入标签名 按tab键即可 比如 div 然后tab 键&#xff0c; 就可以生成 <…...

JavaScript 中的类型转换机制以及==和===的区别

目录一、概述二、显示转换Number()parseInt()String()Boolean()三、隐式转换自动转换成字符串自动转换成数值四、 和 区别1、等于操作符2、全等操作符3、区别小结一、概述 我们知道&#xff0c;JS中有六种简单数据类型&#xff1a;undefined、null、boolean、string、number、…...

RocketMQ基础篇(一)

目录一、发送消息类型1、同步消息2、异步消息3、单向消息4、顺序消费5、延迟消费二、消费模式1、集群模式2、广播模式3、消费模式扩展4、如何配置三、其他用法1、事务消息2、过滤消息1&#xff09;Tag过滤2&#xff09;SQL方式过滤源码放到了GitHub仓库上&#xff0c;地址 http…...

Android前沿技术—gradle中的build script详解

build.gradle是gradle中非常重要的一个文件&#xff0c;因为它描述了gradle中可以运行的任务&#xff0c;今天本文将会带大家体验一下如何创建一个build.gradle文件和如何编写其中的内容。 project和task gradle是一个构建工具&#xff0c;所谓构建工具就是通过既定的各种规则…...

centos7安装MySQL8.4手册

目录前言一、首先更新插件&#xff0c;并查看当前系统版本二、安装步骤--在线安装1、创建mysql目录2、安装rpm包3、安装 mysql-community-server4、启动MySQL服务5、查看MySQL状态6、设置开机自启动三、查看默认密码四、登录mysql五、修改密码六、开启远程访问1. 修改 MySQL 配…...

MambaAD实战:5分钟搞定工业缺陷检测的SoTA模型部署(附代码)

MambaAD工业缺陷检测实战&#xff1a;从模型原理到产线部署全指南 引言&#xff1a;当状态空间模型遇见工业质检 在液晶面板生产线上&#xff0c;一个0.1mm的亮点缺陷可能导致整批产品报废&#xff1b;在汽车零部件铸造车间&#xff0c;细微的表面裂纹可能引发严重的安全隐患。…...

腾讯游戏卡顿终极解决方案:ACE-Guard资源限制器完整指南

腾讯游戏卡顿终极解决方案&#xff1a;ACE-Guard资源限制器完整指南 【免费下载链接】sguard_limit 限制ACE-Guard Client EXE占用系统资源&#xff0c;支持各种腾讯游戏 项目地址: https://gitcode.com/gh_mirrors/sg/sguard_limit 你是否在玩《地下城与勇士》、《英雄…...

工业相机+Python视觉系统崩溃频发?(产线停机损失超¥8600/小时的5个隐藏代码陷阱)

第一章&#xff1a;工业相机视觉系统崩溃的根源诊断工业相机视觉系统在产线部署中一旦突发崩溃&#xff0c;往往表现为图像丢失、帧率归零、设备离线或软件进程异常终止。此类故障表面随机&#xff0c;实则多由底层软硬件协同失配引发&#xff0c;需从驱动层、通信协议、资源调…...

PCS双向储能变流器Buck - Boost闭环控制仿真复现之旅

PCS双向储能变流器Buck-Boost闭环控制仿真【复现】 复现参考文献&#xff1a;《储能电站变流器设计与仿真研究_尹世界》 三相PWM变流器控制&#xff1a;采用电压外环、电流内环双闭环PI控制&#xff0c;电压环稳定直流测电容电压700V&#xff0c;电网电压和电容电流前馈&#x…...

douyin-downloader:让每个人都能轻松获取无水印视频的技术利器

douyin-downloader&#xff1a;让每个人都能轻松获取无水印视频的技术利器 【免费下载链接】douyin-downloader 项目地址: https://gitcode.com/GitHub_Trending/do/douyin-downloader 一、问题破局&#xff1a;揭开抖音内容获取的神秘面纱 1.1 内容获取的三大拦路虎 …...

MX28智能舵机RS485底层驱动开发实战

1. MX28智能舵机底层驱动技术解析&#xff1a;基于RS485总线的嵌入式控制实现1.1 技术定位与工程价值MX28是Robotis公司推出的第二代高精度智能舵机&#xff08;Smart Actuator&#xff09;&#xff0c;采用RS485半双工差分总线通信&#xff0c;支持位置、速度、扭矩闭环控制及…...

避坑指南:Pyannote3.1+Whisper本地部署的5个常见报错解决方案

避坑指南&#xff1a;Pyannote3.1Whisper本地部署的5个常见报错解决方案 语音处理技术正在重塑教育、会议记录和客服质检等场景的交互方式。当开发者尝试将Whisper的精准语音识别与Pyannote的说话人分离能力结合时&#xff0c;常会在环境配置环节遭遇"拦路虎"。本文…...

突破远程桌面限制:RDP Wrapper实现多用户并发连接的创新解决方案

突破远程桌面限制&#xff1a;RDP Wrapper实现多用户并发连接的创新解决方案 【免费下载链接】rdpwrap RDP Wrapper Library 项目地址: https://gitcode.com/gh_mirrors/rd/rdpwrap 副标题&#xff1a;适用于Windows Vista至Windows 11全版本的远程桌面功能扩展工具 在…...

MySQL服务启动失败:NET HELPMSG 3534错误全面解析与实战解决方案

1. 遇到NET HELPMSG 3534错误时该怎么办 当你兴致勃勃地安装完MySQL&#xff0c;准备大干一场时&#xff0c;突然在命令行输入net start mysql后&#xff0c;屏幕上跳出"MySQL服务无法启动。服务没有报告任何错误。请键入NET HELPMSG 3534以获得更多的帮助"这样的提…...