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

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

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

💻项目相关说明:

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

🎈项目分享:见文末!


1、主要功能

该系统由AT89C51/STC89C52单片机+LCD1602显示模块+DS1302时间模块+光敏传感器模块+人体红外模块+按键等模块构成。适用于智能台灯、自动调节灯光亮度等相似项目。

可实现功能:

1、LCD1602实时显示北京时间、环境光照强度、手动/自动模式、台灯亮度等信息;

2、DS1302采集时间数据;

3、光敏传感器(电位器模拟)采集光照强度;

4、人体红外传感器(按键模拟)采集人体靠近信息;

5、按键可设置自动/手动模式,手动模式下通过按键可以自动调节台灯亮度,自动模式下如果有人接近,则根据环境亮度,自动打开台灯并调节亮度;

6、具备自动断电功能,人离开1分钟后自动关灯。

2、仿真

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

3、代码

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

objectivec 复制代码
/* 按键扫描 */
unsigned char key_scan(void)
{
	uchar keyval=0;
	if(KEY1 == 0)			//如果按键1按下
	{
		delay(10);	//延时10ms,去除按键抖动
		if(KEY1 == 0)		//再判断一次按键按下
		{	
			return 1; 		//输出键值1
		}	
	}
	if(KEY2 == 0)			//如果按键2按下
	{
		delay(10);	//延时10ms,去除按键抖动
		if(KEY2 == 0)		//再判断一次按键按下
		{		
			return 2; 		//输出键值2
		}	
	}
	if(KEY3 == 0)			//如果按键3按下
	{
		delay(10);	//延时10ms,去除按键抖动
		if(KEY3 == 0)		//再判断一次按键按下
		{		
			return 3; 		//输出键值3
		}	
	}
	
	return 0;				//如果没有按键按下,则输出0
}

4、原理图

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

5、参考报告

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

6、演示视频

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

7、常见问题

8、资源获取

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

希望可以对你有所帮助~

相关推荐
三三十二4 小时前
STM32实战:数字音频播放器开发指南
stm32·单片机·嵌入式硬件
英英_4 小时前
视频爬虫的Python库
开发语言·python·音视频
想搞嵌入式的小白6 小时前
STM32外设问题总结
单片机·嵌入式硬件
weixin_527550407 小时前
Linux 环境下高效视频切帧的实用指南
linux·运维·音视频
ai产品老杨7 小时前
减少交通拥堵、提高效率、改善交通安全的智慧交通开源了。
前端·vue.js·算法·ecmascript·音视频
木子单片机8 小时前
基于STM32语音识别柔光台灯
stm32·单片机·嵌入式硬件·proteus·语音识别·keil
广药门徒8 小时前
澄清 STM32 NVIC 中断优先级
单片机·嵌入式硬件
小禾苗_9 小时前
32单片机——窗口看门狗
单片机·嵌入式硬件
小灰灰搞电子9 小时前
单片机0-10V电压输出电路分享
单片机·嵌入式硬件
红米饭配南瓜汤10 小时前
WebRTC中的几个Rtp*Sender
网络·网络协议·音视频·webrtc·媒体