光敏传感器模块(YH-LDR)

news2024/11/16 13:29:39

目录

1.  YH-LDR模块说明

1.1  简介

1.2  YH-LDR 模块的引脚说明

1.3  LDR 传感器工作原理与输出特性

2. 使用单片机系统控制 YH-LDR 模块

2.1 通用控制说明


1.  YH-LDR模块说明

1.1  简介

        YH-LDR 是野火设计的光强传感器,使用一个光敏电阻作为采集源,使用 LM393 作为电压比较器,可以通过调节模块的滑变来采集不同强度的光强。不需要使用 ADC,模块输出的就是一个数字量的信号,操作简单。其外观见图 1-1。

图 1-1 YH-LDR 光敏传感器模块

1.2  YH-LDR 模块的引脚说明

表格 1-1 YH-LDR 模块引脚说明

编号名称说明
1VCC电源正(5V)
2GND地线
3OD信号输出

1.3  LDR 传感器工作原理与输出特性

        模块通过光敏电阻将光强转换成电压信号,输入到 LM 393 的一个电压比较通道,然后 LM393 在输出比较结果,可以通过滑变调节比较的电压。有强时 DO 输出低电平,光弱时 DO 输出高电平。电源接 3V3 时高电平时 1.4V,此时 STM32 把此电平识别为低电平,电源接 5V 时,DO 输出的是 2.6V,此时 STM32 可以识别出是高电平,所以在测试时电源是需要接 5V 的。

        LDR传感器,即光敏电阻传感器,是一种检测光线强度的传感器。它具有以下工作原理和输出特性:

        工作原理:LDR传感器基于半导体材料的光敏效应,即在光照下,半导体的电阻会随之发生变化。当光强度增强时,LDR的电阻值降低;当光强度减弱时,LDR的电阻值增加。

        输出特性:LDR传感器的输出特性取决于所使用的半导体材料和工作条件。通常情况下,LDR传感器的输出电压随着光强度的变化而发生变化,输出特性呈现非线性关系。此外,LDR传感器的输出信号也会受到温度、湿度等环境因素的影响,需要进行校准。

        总的来说,LDR传感器是一种简单、实用的光敏传感器,被广泛应用于光照度检测、亮度控制等领域。

2. 使用单片机系统控制 YH-LDR 模块

2.1 通用控制说明

        YH-LDR 输出为模拟量电压输出。本小节以野火 STM32 开发板为例子说明如何使用STM32 与 YH-LDR 模块 ADC 电压采集的电路连接。

        单片机系统通过 ADC 通道引脚与 YH-LDR 模块连接,与模块连接时,只要通过模块引出的排针连接好如下四根线即可,2 个实验都可以通过串口调试助手显示当前的空气灰尘浓度值,见表格 2-1。

表格 2-1 单片机与 YH-LDR 模块连接引脚表

单片机系统YH-LDR模块
5VVCC
GNDGND
IODO

YH-LDR 模块是一种光敏电阻模块,它可以检测光线的强度并输出相应的电压信号。使用单片机系统可以对 YH-LDR 模块进行控制和读取光线的强度值。

下面是 YH-LDR 模块的通用控制流程:

  1. 连接硬件:将 YH-LDR 模块连接到单片机的 ADC 输入引脚上,连接电源和地线。

  2. 初始化 ADC:初始化 ADC,设置 ADC 输入引脚和参考电压等参数。

  3. 读取模块输出:使用 ADC 转换器读取 YH-LDR 模块的输出电压值,并将其转换为相应的光线强度值。

  4. 处理数据:根据需要,对光线强度值进行处理,如转换为百分比或比较大小等。

  5. 控制输出:根据光线强度值,控制相应的输出设备,如 LED 灯或继电器等。

  6. 循环控制:在一个循环中不断重复上述步骤,以持续监测和控制 YH-LDR 模块。

        总之,使用单片机系统控制 YH-LDR 模块的基本思路是读取模块输出并根据光线强度控制相应的设备。具体实现需要根据具体应用场景进行调整。

代码案例:

引脚配置:

//STM32上的LED1 GPIO为PB5

#define LED1_GPIO_PORT    GPIOB			            
#define LED1_GPIO_CLK 	    RCC_APB2Periph_GPIOB	
#define LED1_GPIO_PIN		GPIO_Pin_5

#define ON  0
#define OFF 1

/* 宏定义实现LED灯的设置*/
#define LED1(a)	if (a)	\
					GPIO_SetBits(LED1_GPIO_PORT,LED1_GPIO_PIN);\
					else		\
					GPIO_ResetBits(LED1_GPIO_PORT,LED1_GPIO_PIN)
			 
void LED_GPIO_Config(void)
{		
		GPIO_InitTypeDef GPIO_InitStructure;
		RCC_APB2PeriphClockCmd( LED1_GPIO_CLK, ENABLE);
		
		GPIO_InitStructure.GPIO_Pin = LED1_GPIO_PIN;	
		GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;   
		GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; 
		GPIO_Init(LED1_GPIO_PORT, &GPIO_InitStructure);
}

时钟配置:

#define    LDR_GPIO_CLK       RCC_APB2Periph_GPIOC
#define    LDR_GPIO_PORT    GPIOC		   
#define    LDR_GPIO_PIN		  GPIO_Pin_13

void LDR_GPIO_Config(void)
{
   GPIO_InitTypeDef GPIO_InitStructure;
   RCC_APB2PeriphClockCmd(LDR_GPIO_CLK,ENABLE);
   
   GPIO_InitStructure.GPIO_Pin = LDR_GPIO_PIN; 
   GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPD; 
   GPIO_Init(LDR_GPIO_PORT, &GPIO_InitStructure);
}

//检测功能
uint8_t LDR_Test(GPIO_TypeDef* GPIOx,uint16_t GPIO_Pin)
{			
   if(GPIO_ReadInputDataBit(GPIOx,GPIO_Pin) == 1 )  //读取DO数据,如果高,则LDR设置OFF,否则设置ON
   	return LDR_OFF;  
   else
   	return LDR_ON;   
}

主函数配置:

int main(void)
{	
	LED_GPIO_Config();//LED配置
	LED2_OFF;//LED灯初始化熄灭

	LDR_GPIO_Config();//光敏配置
	
	while(1)
	{	   
		if (LDR_Test(LDR_GPIO_PORT,LDR_GPIO_PIN) == LDR_ON)
      		LED2_ON;  
    	else
      		LED2_OFF; 
	}
}

USB 转串口芯片 CH340_时光の尘的博客-CSDN博客

DHT11 数字湿温度传感器的原理和应用范例-CSDN博客

ET2046·低电压 I/O 触摸屏控制电路(SSOP16、QFN16)-CSDN博客

时光の尘_千题千解·Java面试宝典,Linux学习,嵌入式学习-CSDN博客

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

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

相关文章

设计模式(二)-创建者模式(2)-工厂模式

一、为何需要工厂模式(Factory Pattern)? 由于简单工厂模式存在一个缺点,如果工厂类创建的对象过多,使得代码变得越来越臃肿。这样导致工厂类难以扩展新实例,以及难以维护代码逻辑。于是在简单工厂模式的基础上&…

SPASS-距离分析

基本概念 距离分析是对观测量之间相似或不相似程度的一种测度,是计算一对观测量之间的广义距离。这些相似性或距离测度可以用于其他分析过程,例如因子分析、聚类分析或多维定标分析,有助于分析复杂的数据集。 统计原理 不相似性测度 对定距…

STM32F4系列单片机GPIO概述和寄存器分析

第2章 STM32-GPIO口 2.1 GPIO口概述 通用输入/输出口 2.1.1 GPIO口作用 GPIO是单片机与外界进行数据交流的窗口。 2.1.2 STM32的GPIO口 在51单片机中,IO口,以数字进行分组(P0~P3),每一组里面又有8个IO口。 在ST…

月子会所信息展示服务预约小程序的作用是什么

传统线下门店经营只依赖自然流量咨询或简单的线上付费推广是比较低效的,属于靠“天”吃饭,如今的年轻人学历水平相对较高,接触的事物或接受的思想也更多更广,加之生活水平提升及互联网带来的长期知识赋能,因此在寻找/咨…

【刷题专栏—突破思维】LeetCode 142. 环形链表 II

前言:本篇博客将讲解三个OJ题,前两个作为铺垫,最后完成环形链表的节点的寻找 文章目录 一、160. 相交链表二、141. 环形链表三、142. 环形链表II 一、160. 相交链表 题目链接:LeetCode—相交链表 题目描述: 给你两个单…

【心得】PHP的文件上传个人笔记

目录 1 php的文件上传绕过 黑名单绕过 2 php文件上传的00截断 3 iconv字符转换异常后造成了字符截断 4 文件后缀是白名单的时候的绕过 web服务器的解析漏洞绕过 5.高级文件上传绕过 1 .htaccess nginx.htaccess 2 服务端内容检测 3 配合伪协议来绕过 4.配合日志包含绕…

2023年【安全员-B证】考试内容及安全员-B证考试资料

题库来源:安全生产模拟考试一点通公众号小程序 安全员-B证考试内容参考答案及安全员-B证考试试题解析是安全生产模拟考试一点通题库老师及安全员-B证操作证已考过的学员汇总,相对有效帮助安全员-B证考试资料学员顺利通过考试。 1、【多选题】《中华人民…

FL Studio2024免费编曲音乐制作软件

用FL Studio编曲,让音乐成为你的翅膀,飞翔在无尽的创作海洋中吧! FL Studio作为一款功能强大且备受赞誉的音乐制作软件,为你提供了一个独特的创作平台。通过FL Studio,你可以自由地创作、编曲,制作属于自己…

【算法萌新闯力扣】:旋转字符串

力扣热题:796.旋转字符串 开篇 今天下午刷了6道力扣算法题,选了一道有多种解法的题目与大家分享。 题目链接:796.旋转字符串 题目描述 代码思路 完全按照题目的要求,利用StringBuffer中的方法对字符串进行旋转,寻找相同的一项 …

Fibonacci 数列与黄金分割

mapp[1 for item in range(30)] for item in range(3,30):mapp[item]mapp[item-1]mapp[item-2]pass numint(input()) if num>19:print("0.61803399")pass else:anss float((mapp[num]*1.0) / (mapp[num 1]*1.0))print(format(anss,.8f))进行短程的打表就可以看出…

指南:关于帮助中心需要注意的一些细节

在现代商业环境中,帮助中心已经成为企业提供客户支持和解决问题的重要方式之一。然而,建立一个高效的帮助中心并不简单。除了选择合适的软件平台和工具之外,还需要注意一些细节,以确保能够真正帮助客户并提高客户满意度。 | 1.设计…

在Java代码中指定用JAXB的XmlElement注解的元素的顺序

例如,下面的类RegisterResponse 使用了XmlRootElement注解,同时也使用XmlType注解,并用XmlType注解的propOrder属性,指定了两个用XmlElement注解的元素出现的顺序,先出现flag,后出现enterpriseId&#xff0…

图像分类(七) 全面解读复现ShuffleNetV1-V2

ShuffleNetV1 前言 前面我们学了MobileNetV1-3,从这篇开始我们学习ShuffleNet系列。ShuffleNet是Face(旷视)在2017年发布的一个高效率可以运行在手机等移动设备的网络结构,论文发表在CVRP2018上。这个新的轻量级网络使用了两个新…

HDFS、MapReduce原理--学习笔记

1.Hadoop框架 1.1框架与Hadoop架构简介 (1)广义解释 从广义上来说,随着大数据开发技术的快速发展与逐步成熟,在行业里,Hadoop可以泛指为:Hadoop生态圈。 也就是说,Hadoop指的是大数据生态圈整…

使用Docker/K8S部署项目流程

一、制作镜像: 1、创建nginx配置文件default.conf server {listen 80;server_name localhost; # 修改为docker服务宿主机的iplocation / {root /usr/share/nginx/html;index index.html index.htm;try_files $uri $uri/ /index.html 404;}error_page …

【每日一题】689. 三个无重叠子数组的最大和-2023.11.19

题目: 689. 三个无重叠子数组的最大和 给你一个整数数组 nums 和一个整数 k ,找出三个长度为 k 、互不重叠、且全部数字和(3 * k 项)最大的子数组,并返回这三个子数组。 以下标的数组形式返回结果,数组中…

04 后端增删改查【小白入门SpringBoot + Vue3】

项目笔记,教学视频来源于B站青戈 https://www.bilibili.com/video/BV1H14y1S7YV 保证前面的都功能都实现后,接着往下走。 查 分页 接下来,实现前端页面分页功能。 前端分页组件 打开elementplus官网,找到合适的分页组件&…

公网访问全能知识库工具AFFINE,Notion的免费开源替代

文章目录 公网访问全能知识库工具AFFINE,Notion的免费开源替代品前言1. 使用Docker安装AFFINE2. 安装cpolar内网穿透工具3. 配置AFFINE公网访问地址4. 实现公网远程访问AFFINE 公网访问全能知识库工具AFFINE,Notion的免费开源替代品 前言 AFFiNE 是一个…

照片+制作照片书神器,效果太棒了!

随着数码相机的普及,越来越多的人喜欢用照片记录生活点滴。而制作一本精美的照片书,不仅可以保存珍贵的回忆,还能让照片更加美观。今天,就为大家推荐一款制作照片书神器,让您的回忆更加完美! 一、产品介绍 …

三栏布局,中间自适应

方法一&#xff1a;两边使用float 中间使用margin 方法二&#xff1a;两边使用absolute 中间使用margin 方法三&#xff1a;flex 布局 方法四&#xff1a;grid 布局 方法一&#xff1a;相关HTML代码【两边使用float 中间使用margin】 <div class"container"…