51单片机光照强度检测自动路灯开关仿真( proteus仿真+程序+报告+讲解视频)

news2024/9/30 7:16:09

51单片机光照强度检测自动路灯开关仿真( proteus仿真+程序+报告+讲解视频)

仿真图proteus7.8及以上

程序编译器:keil 4/keil 5

编程语言:C语言

设计编号:S0052

讲解视频

基于51单片机的光照检测自动路灯控制仿真设计( proteus仿真+程序+报告+讲解视频)

1.主要功能:

基于51单片机的万年历时钟仿真设计

基于51单片机的路灯自动开关控制仿真设计

1、测量环境光强度,如果光照过低,开灯

2、可以通过按键设置阀值,光照低于该阀值表示光照过低

3、LCD显示光照和阀值

4、环境亮度越低,灯光亮度越高

需注意仿真中51单片机芯片是通用的,AT89C51,AT89C52都是51单片机的具体型号,内核是兼容的。相同的原理图里,无论stc还是at都一样,引脚功能都是一样的,程序也是一样的,芯片可以替换为STC89C52/STC89C51/AT89C52/AT89C51等51单片机芯片。

以下为本设计资料展示图:

2.仿真

开始仿真

打开仿真工程,双击proteus中的单片机,选择hex文件路径,然后开始仿真。开始仿真后LCD1602显示检测到光照强度和默认光照阈值。当前检测到的光照强度是3lx,接近于0,PWM的占空比最小,PNP三极管低电平导通,经过PNP三极管反向后LED灯的亮度接近最亮。

img

环境光照强度通过光敏电阻的值改变,img上下箭头分别调低和调高光敏电阻的阻值。

img

通过点击光敏电阻的阻值调整,检测到环境光照强度93Lx,接近于阈值。越接近阈值,单片机控制输出的PWM占空比,PNP三极管低电平导通,PWM经过PNP三极管反向后LED灯的亮度越暗。

img

高于阈值,单片机控制输出的PWM占空比最大达100%,PNP三极管低电平导通,PWM经过PNP三极管反向后LED灯完全熄灭。

以上仿真结果均符合设计要求。

3. 程序代码

使用keil4或者keil5编译,代码有注释,可以结合报告理解代码含义。

在这里插入图片描述

main函数部分代码

#include "reg51.h"
#include "lcd1602.h"
#include"ADC0809.h"
sbit lamp=P2^3;//灯
sbit k1=P3^6;//按钮
sbit k2=P3^7;

uchar hang1[]="Ligh:000Lx";//显存
uchar hang2[]=" Lim:000Lx";
uint light=0,limit=100;//光强
uint time=0;
uint pwm=0,sec=0;
//主函数
void main()
{
	init_1602();
	adc0809_init();
	TMOD|=0X01;
	TH0=0X3C;
	TL0=0XB0;	
	ET0=1;//打开定时器0中断允许
	EA=1;//打开总中断
	TR0=1;//打开定时器
	while(1)
	{
		if(!k1)//加
		{
			limit++;
			while(!k1);
		}
		if(!k2)//减
		{
			limit--;
			while(!k2);
		}
		//PWM
	if(sec<99)
		sec++;
	else
		sec=1;
	if(pwm<sec)
		lamp=1;
	else
		lamp=0;
	}
}
//定时器0中断
void Timer0() interrupt 1
{
	if(time<10)//定时0.5s
		time++;
	else
	{
		time=0;						  
		light=adc0809_read();//测光
		hang1[5]=light/100+0x30;
		hang1[6]=light%100/10+0x30;
		hang1[7]=light%10+0x30;
		hang2[5]=limit/100+0x30;
		hang2[6]=limit%100/10+0x30;
		hang2[7]=limit%10+0x30;
		write_string(1,0,hang1);
		write_string(2,0,hang2);
		
		if(light>limit)//功能1
		{
			pwm=0;
		}
		else
		{	
			pwm=99-light*100/limit;//输出PWM占空比,光照强度越低,pwm占空比越大
		}
	}
	TH0=0X3C;
	TL0=0XB0;
}

4. 设计报告

6308字设计报告,内容包括引言,硬件设计、软件设计、软硬件框图、调试、总结和展望等

img

5. 设计资料内容清单

资料设计资料包括仿真,程序代码、讲解视频、功能要求、设计报告、软硬件设计框图等。

0、常见使用问题及解决方法–必读!!!!

1、仿真图

2、程序源码

3、开题报告

3、原理图

5、功能要求

6、元器件清单

7、设计报告

8、软硬件流程框图

9、讲解视频

Altium Designer 软件资料

filename.bat

KEIL软件资料

Proteus软件资料

单片机学习资料

目录清单.txt

答辩技巧

设计报告常用描述

鼠标双击打开查找更多51 STM32单片机课程毕业设计.url

img

资料下载链接(可点击):

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1025404.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

42V转5V芯片——高效率、宽压输入范围和强大输出能力

42V转5V芯片——高效率、宽压输入范围和强大输出能力 摘要&#xff1a; 42V转5V芯片是一种电源管理解决方案&#xff0c;可以将高达42V的输入电压转换为稳定的5V输出电压。该芯片以其高效率、宽压输入范围和强大的输出能力而备受关注。它具有93%的转换效率&#xff0c;能够在广…

学Python的漫画漫步进阶 -- 第十五步.访问数据库

学Python的漫画漫步进阶 -- 第十五步.访问数据库 十五、访问数据库15.1 SQLite数据库15.1.1 SQLite数据类型15.1.2 Python数据类型与SQLite数据类型的映射15.1.3 使用GUI管理工具管理SQLite数据库 15.2 数据库编程的基本操作过程15.3 sqlite3模块API15.3.1 数据库连接对象Conne…

使用Tensorboard碰到AttributeError: module ‘distutils‘ has no attribute ‘version‘

当出现这个错误时 说明 当前tensorboard的版本和你安装的pytorch版本不匹配&#xff0c;tensorboard版本太 高&#xff0c;pytorch太低。 使用conda list查看你的setuptools版本 conda list我的版本有点高68&#xff0c;所以我需要降低版本&#xff0c;使用以下命令降低版本…

解读|美创深度参与5项电信和互联网行业数据安全标准发布实施

《数据安全法》、《个人信息保护法》等法律法规的颁布实施&#xff0c;坚持安全和发展并重的原则&#xff0c;积极应对复杂严峻的安全风险与挑战&#xff0c;加速构建数据安全保障体系&#xff0c;成为电信和互联网行业重要工作。 “安全发展、标准先行”&#xff0c;标准化工作…

ATLAS 200通过PCIE 接入RK3588-EP模式

ATLAS 200 作为算理模块&#xff0c;可以作为主/协处理器接入RK3588,有两种模式&#xff1a;RC 模式和EP模式 RC模式&#xff1a;rk3588 和 ATLAS 200 可分别独立处理自身业务数据&#xff0c;不存在业务互相依赖&#xff0c;二者可通过网络等方式进行通信&#xff0c;ATLAS …

用它免费查询电商评论数据,轻松实现品牌洞察!

item_review-获得淘宝商品评论 公共参数 名称类型必须描述keyString是调用key&#xff08;注册账号获取key&#xff09;secretString是调用密钥api_nameString是API接口名称&#xff08;包括在请求地址中&#xff09;[item_search,item_get,item_search_shop等]cacheString否[…

Spring配置非定义的Bean

前言 在前文中&#xff0c;xml配置文件中的Bean都是我们自己定义配置的&#xff0c;例如&#xff1a;UserDaoImpl&#xff0c;UserDAO等。但是在实际开发过程中有些功能类并不是我们自己定义的&#xff0c;而是使用第三方jar包中的&#xff0c;俺么这些Bean要想让Spring进行管…

2023年PMP考试改革情况?新教材和新题型?

改革就是使用新考纲和新教材。教材由第六版变为第七版&#xff0c;这个问题也不大&#xff0c;主要是根据考纲的内容出题&#xff0c;备考学习预测敏捷项目管理内容即可。 没有出新的改为新题型的通知&#xff0c;但要随时做好题型变化的准备&#xff0c;或许题型会增加填空题…

多少得有点升级,才能对得起价格!iPhone15系列电池寿命见长

我有一些好消息。根据我们的电池测试&#xff0c;iPhone 15系列中的每一款机型都比前代机型提供了更好的电池寿命。这可能是由于每部手机中都有稍大的电池和更高效的芯片。 我们对iPhone 15、iPhone 15 Plus、iPhone 15 Pro和iPhone 15 Pro Max进行了Tom’s Guide电池测试&…

SAP DN已发货但是需求还挂在MD04上的异常处理(SE38执行程序:ATP_VBBE_CONSISTENCY OR SDRQCR21)

背景&#xff1a;DN 80074061已经发完货&#xff0c;但是在MD04上还挂着它的需求 处理方法&#xff1a; HANA S4 版本&#xff0c; SE38 执行程序 ATP_VBBE_CONSISTENCY HANA之前的版本执行程序 SDRQCR21 以 ATP_VBBE_CONSISTENCY 为例&#xff0c;先选择模拟模式 执行&…

C#上位机:现代编程中的全能工具?

C#上位机&#xff1a;现代编程中的全能工具&#xff1f; C#作为现代、安全、易用的编程语言&#xff0c;在多领域具有广泛应用&#xff0c;尤其在上位机开发中脱颖而出。输入“777”&#xff0c;即刻获取关于上位机开发和数据可视化的专业学习资料&#xff0c;工业自动化、物…

打造自己的美颜应用:使用视频直播美颜sdk的步骤

当下&#xff0c;视频直播已经成为人们分享自己生活、技能和兴趣的流行方式。但是&#xff0c;随着竞争的加剧&#xff0c;提供高质量视频直播体验变得至关重要。其中一个重要因素是美颜效果&#xff0c;这已经成为吸引观众的重要因素之一。幸运的是&#xff0c;现在有许多视频…

pycharm导入包提示:ModuleNotFoundError: No module named ‘xxx‘

解决方法 1、进入file-settings-projects-python interpreter&#xff0c;点击Show All&#xff1a; 2、在Show All窗口中按如下操作&#xff1a; 保存后即可

电脑内存怎么看?一分钟搞定!

电脑内存是计算机系统中重要的硬件组件之一&#xff0c;它直接影响着系统的性能和运行速度。了解电脑内存的使用情况对于优化系统性能和进行硬件升级非常重要。本文将介绍电脑内存怎么看的三个方法&#xff0c;以便更好地管理计算机性能。 方法1&#xff1a;任务管理器 电脑使…

易点易动RFID固定资产管理系统:实现极速盘点与全生命周期管理

在现代企业管理中&#xff0c;固定资产的盘点和管理一直是一项繁琐而重要的任务。然而&#xff0c;通过易点易动RFID固定资产管理系统&#xff0c;集团公司可以实现固定资产的快速盘点、全生命周期管理以及有效防止资产丢失。本文将详细介绍易点易动RFID固定资产管理系统如何助…

Jmeter性能测试吞吐量控制器使用小结

吞吐量控制器(Throughput Controller)场景: 在同一个线程组里, 有10个并发, 7个做A业务, 3个做B业务,要模拟这种场景,可以通过吞吐量模拟器来实现.。 jmeter性能测试&#xff1a;2023最新的大厂jmeter性能测试全过程项目实战详解&#xff0c;悄悄收藏&#xff0c;后面就看不到…

【新版】系统架构设计师 - 案例分析 - 系统维护与设计模式

个人总结&#xff0c;仅供参考&#xff0c;欢迎加好友一起讨论 文章目录 架构 - 案例分析 - 系统维护与设计模式典型例题 1典型例题 2 架构 - 案例分析 - 系统维护与设计模式 典型例题 1 某企业两年前自主研发的消防集中控制软件系统在市场上取得了较好的业绩&#xff0c;目前…

【Hash表】出现次数最多的单词-力扣 819

&#x1f49d;&#x1f49d;&#x1f49d;欢迎来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐:kuan 的首页,持续学…

GE WESDAC D20ME 模拟输入电子模块

GE WESDAC D20ME 是一款模拟输入电子模块&#xff0c;通常用于工业自动化和控制系统中&#xff0c;用于采集模拟信号和传感器数据。以下是该模块的一些主要产品功能&#xff1a; 模拟输入通道&#xff1a;WESDAC D20ME 模块通常具有多个模拟输入通道&#xff0c;用于接收模拟信…

NI SCXI-1127 伺服驱动模块

NI SCXI-1127 伺服驱动模块是 National Instruments&#xff08;NI&#xff09;生产的一种用于伺服控制系统的模块。以下是该模块的一些主要产品功能&#xff1a; 伺服控制&#xff1a;SCXI-1127 模块专门设计用于伺服控制应用。它可以接受控制信号并驱动伺服电机以实现精确的位…