51单片机的智能台灯设计【proteus仿真+程序+报告+原理图+演示视频】

1、主要功能

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

可实现基本功能:

1、LCD1602实时显示北京时间、环境光照强度、手动/自动模式、台灯亮度等信息;
2、DS1302采集时间数据;
3、光敏传感器(电位器模拟)采集光照强度;
4、人体红外传感器(按键模拟)采集人体靠近信息;
5、按键可设置自动/手动模式,手动模式下通过按键可以自动调节台灯亮度,自动模式下如果有人接近,则根据环境亮度,自动打开台灯并调节亮度;
6、具备自动断电功能,人离开1分钟后自动关灯。

本项目包含仿真、代码(564行代码)、原理图、课设报告(5547字)、流程图、器件清单、常见问题汇总、proteus运行视频等内容。

2、仿真

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


3、程序代码

只是放上来了部分代码,仅供参考,注释非常齐全。

void Timer0(void) interrupt 1					//定时器中断
{
    TH0 = 0x3C;
    TL0 = 0xB0;
	  ms_flag++;									//触发中断后计数值自加,定时器中断每50ms触发一次
		if(ms_flag==20)//计时达到1秒
		{
			ms_flag=0;
			s_flag++;
			if(s_flag==60)//计时达到1分钟
			{
				s_flag=0;
				min_flag=1;
				if(min_flag==1&&DETECT==1)//计时达到1分钟且没有感应到人在附近,关灯
				{
					min_flag=0;
					ms_flag=0;
					s_flag=0;						//全部清零
					TR0 = 0;						//关闭定时器
					LED1=1;							//全部关灯
					LED2=1;
					LED3=1;
				}
				else if(min_flag==1&&DETECT==0)//计时达到1分钟且感应到人在附近
				{
					min_flag=0;
					ms_flag=0;
					s_flag=0;						//全部清零,重新计时
				}
			}
		}	
}

4、原理图

原理图采用AD21绘制(不是嘉立创哦。

5、报告

5.5k,24页,纯手打,有详细的电路分析和代码解析


6、常见问题汇总

里面包含了我对各个模块的详细解析,可以结合代码一起理解。如果正巧老师问题多,这个可以帮到你哦。(不定时更新,讲解模块也会越来越多)

7、演示视频

52s的演示视频,将该项目的功能都展示了一遍,如果还有不清楚的地方,欢迎后台私聊!(等我努努力出个完整的讲解视频!

8、资源获取

扫描如下二维码,后台回复"51智能台灯"获取哦~

希望可以对你有所帮助!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值