【可答疑】基于51单片机的智能衣柜(含仿真、代码、报告、演示视频等)

ops/2024/10/18 13:17:05/

 ✨哈喽大家好,这里是@每天一杯冰美式oh,985电子本硕,大厂嵌入式在职0.3年,业余时间做做单片机小项目,有需要也可以提供就业指导(免费)~

🐱‍🐉这是51单片机毕业设计100篇系列的第42篇:基于51单片机的智能衣柜

💻项目相关说明:

  • 代码量:669行
  • 报告字数:6937字
  • 含代码、仿真、原理图、报告、器件清单、常见问题(实物、lw可另外定制)

🎈项目分享:见文末!


1、主要功能

该系统由AT89C51/STC89C52单片机+LCD1602显示模块+光照传感器+时钟模块+温湿度传感器+继电器+按键、LED等模块构成。适用于智能衣柜、智能衣橱、紫外线定时消毒等相似项目。

可实现功能:

1、LCD1602实时显示北京时间、温湿度和开关门状态

2、时钟模块DS1302采集时间

3、光照传感器采集光照强度信息,如果打开衣柜的时候光照强度较低,则自动打开柜内照明灯

4、温湿度传感器DHT11采集柜内温湿度信息,如果湿度过高,则自动闭合除湿继电器,开始除湿

5、按键可设置消毒时间

6、按键开关衣柜门

2、仿真

proteus仿真使用8.10版本,由于该软件版本迭代原因,不能确保其他版本软件能够正常运行,请安装好对应软件(版本一致或者高于这个版本都可以)

消毒时间可设置:

3、代码

部分代码,仅供参考,注释齐全。

/*******************************************************************************
* 函 数 名         : Ds1302Write
* 函数功能		   : 向DS1302命令(地址+数据)
* 输    入         : addr,dat
* 输    出         : 无
*******************************************************************************/
void Ds1302Write(uchar addr, uchar dat)
{uchar n;RST = 0;_nop_();SCLK = 0;//先将SCLK置低电平。_nop_();RST = 1; //然后将RST(CE)置高电平。_nop_();for (n=0; n<8; n++)//开始传送八位地址命令{DSIO = addr & 0x01;//数据从低位开始传送addr >>= 1;SCLK = 1;//数据在上升沿时,DS1302读取数据_nop_();SCLK = 0;_nop_();}for (n=0; n<8; n++)//写入8位数据{DSIO = dat & 0x01;dat >>= 1;SCLK = 1;//数据在上升沿时,DS1302读取数据_nop_();SCLK = 0;_nop_();	}	RST = 0;//传送数据结束_nop_();
}/*******************************************************************************
* 函 数 名         : Ds1302Read
* 函数功能		   : 读取一个地址的数据
* 输    入         : addr
* 输    出         : dat
*******************************************************************************/
uchar Ds1302Read(uchar addr)
{uchar n,dat,dat1;RST = 0;_nop_();SCLK = 0;//先将SCLK置低电平。_nop_();RST = 1;//然后将RST(CE)置高电平。_nop_();for(n=0; n<8; n++)//开始传送八位地址命令{DSIO = addr & 0x01;//数据从低位开始传送addr >>= 1;SCLK = 1;//数据在上升沿时,DS1302读取数据_nop_();SCLK = 0;//DS1302下降沿时,放置数据_nop_();}_nop_();for(n=0; n<8; n++)//读取8位数据{dat1 = DSIO;//从最低位开始接收dat = (dat>>1) | (dat1<<7);SCLK = 1;_nop_();SCLK = 0;//DS1302下降沿时,放置数据_nop_();}RST = 0;_nop_();	//以下为DS1302复位的稳定时间,必须的。SCLK = 1;_nop_();DSIO = 0;_nop_();DSIO = 1;_nop_();return dat;	
}

4、原理图

使用AD21绘制(不是嘉立创哦

5、参考报告

内含6.9k字,27页相关报告一份,纯手打~

6、演示视频

1min11s的演示视频,将该项目的功能都展示了一遍,如果还有不清楚的地方,欢迎后台私聊!

7、常见问题

8、资源获取

扫描如下二维码,回复"51智能衣柜"获取本项目所有文件!

希望可以对你有所帮助~


http://www.ppmy.cn/ops/126485.html

相关文章

002_基于django国内运动男装小红书文章数据可视化分析系统的设计与实现2024_qo6cy3i4

目录 系统展示 开发背景 代码实现 项目案例 获取源码 博主介绍&#xff1a;CodeMentor毕业设计领航者、全网关注者30W群落&#xff0c;InfoQ特邀专栏作家、技术博客领航者、InfoQ新星培育计划导师、Web开发领域杰出贡献者&#xff0c;博客领航之星、开发者头条/腾讯云/AW…

简单跟一个healessui的使用

简单跟一个healessui的使用 快速创建一个vue3项目 npm create vitelatest my-app-vue -- --template vue cd my-app-vue npm install npm run dev 安装headlessui/vue npm install headlessui/vue 抄写一个headlessui的组件样式listbox <template><Listbox v-mo…

PHP-laravel框架

laravel框架 laravel 搭建与路由基础 基本路由与视图路由 视图使用控制器模板分配变量

kubernetes(k8s)面试之2024

1、什么是k8s&#xff1f; K8s是kubernetes的简称&#xff0c;其本质是一个开源的容器编排系统&#xff0c;主要用于管理容器化的应用&#xff0c; 简单点就是k8s是一个编排容器的系统&#xff0c;一个可以管理容器应用全生命周期的工具&#xff0c;从创建应用&#xff0c;应用…

JAVA地狱级笑话

为什么Java开发者总是不怕黑暗&#xff1f; 因为他们总是有null指针来照亮路。 Java程序员最讨厌的音乐是什么&#xff1f; Garbage Collection旋律&#xff0c;节奏总是让他们烦躁。 为什么Java中的HashMap很擅长社交&#xff1f; 因为它总是能快速找到key对应的朋友。 Java开…

vue移动端调试工具vConsole

vConsole 安装 npm install vconsole -S全局使用 在main.js里面进行引入 import {createApp } from "vue"; import App from "./App.vue";// 引入 import VConsole from vconsole

Markdown多备笔记

Markdown多备笔记 介绍 用md记录生活、工作中的灵感、事故方案、知识点等&#xff0c;多和计算机相关。 初定如下分支&#xff1a;模版分支release、主分支master、保护分支protect、隐匿分支private&#xff0c; 主分支记录大部分内容&#xff0c;模版分支用来保存自定义的…

Flume面试整理-配置文件格式

Apache Flume的配置文件采用简单的文本格式来定义和配置Source(源)、Channel(通道)和Sink(汇),以实现数据流的管理。配置文件通常以.conf为扩展名,每个配置文件定义一个或多个Flume Agent的属性和行为。以下是Flume配置文件格式的详细介绍: Flume配置文件的基本结构 一…