光敏电阻光照传感器
光敏电阻是用硫化隔或硒化隔等半导体材料制成的特殊电阻器,其工作原理是基于内光电效应。随着光照强度的升高,电阻值迅速降低,由于光照产生的载流子都参与导电,在外加电场的作用下作漂移运动,电子奔向电源的正极,空穴奔向电源的负极,从而使光敏电阻器的阻值迅速下降。其在无光照时,几乎呈高阻状态,暗时电阻很大。光敏电阻模块一般用来检测周围环境的光线的亮度,触发单片机或继电器模块等。
模块来源
采购链接:
https://item.taobao.com/item.htm?spm=2013.1.0.0.68c07a63p9f0me&id=522579320463
资料下载链接:
https://pan.baidu.com/s/1VMFN1fVo5jxB80IYTsY67A
资料提取码:y8jw
规格参数
工作电压:3.3-5V
工作电流:1MA
模块尺寸:31.1475 x 14.097mm
输出方式: DO接口为数字量输出 AO接口为模拟量输出
读取方式:ADC
管脚数量:4 Pin(2.54mm间距排针)
移植过程
我们的目标是在立创开发板GD32E230C8T6上能够判断当前光照强度的功能。首先要获取资料,查看数据手册应如何实现,再移植至我们的工程。
查看资料
这个模块采用的光敏电阻的型号是5516,对应下图,可以知道在光亮时的阻值在8到20KΩ左右,在光暗时的阻值在1MΩ左右。
其中U2.1为LM393,R3为光敏电阻。AO输出为R2和R3分压后直接输出电压,所以为模拟量;DO为经过LM393进行电压比较后,输出高低电平,所以为数字量。具体原理是,393的3号引脚电压与2号引脚进行电压比较。当3号引脚电压比2号引脚电压高时,1号引脚输出高电平;当3号引脚电压比2号引脚电压低时,1号引脚输出低电平;可以通过调整R4控制2号引脚的电压。
因此DO引脚可以配置为GPIO的输入模式,AO引脚需要配置为ADC模拟输入模式。
引脚选择
想要使用ADC,需要确定使用的引脚是否有ADC外设功能。可以通过数据手册【GD32E230xx_Datasheet_Rev2.3.pdf】进行查看。
在数据手册的第19页,是关于GD32E230xx系列芯片引脚的功能定义示意图。
当前只有AO引脚需要使用到ADC接口,所以DO引脚可以使用开发板上其他的GPIO。 这里选择使用PA1的附加ADC功能。 使用第1道输入通道。
移植至工程
移植步骤中的导入Core文件夹,然后在工程中添加C文件和添加h文件的路径。和上一节一样,这里不再赘述。
移植完成后面开始验证。
移植验证
在自己工程中的main主函数中,编写如下。
/******************************************************************************
* 测试硬件:立创开发板·GD32E230C8T6 使用主频72Mhz 晶振8Mhz
* 版 本 号: V1.0
* 修改作者: www.lckfb.com
* 修改日期: 2023年11月02日
* 功能介绍:
*****************************************************************************
* 梁山派软硬件资料与相关扩展板软硬件资料官网全部开源
* 开发板官网:www.lckfb.com
* 技术支持常驻论坛,任何技术问题欢迎随时交流学习
* 立创论坛:club.szlcsc.com
* 其余模块移植手册:【立创·GD32E230C8T6开发板】模块移植手册
* 关注bilibili账号:【立创开发板】,掌握我们的最新动态!
* 不靠卖板赚钱,以培养中国工程师为己任
******************************************************************************/
#include "gd32e23x.h"
#include "systick.h"
#include "bsp_usart.h"
#include "bsp_illume.h"
#include "stdio.h"
int main(void)
{
systick_config(); //滴答定时器初始化 1ms
usart_gpio_config(115200U);
Illume_GPIO_Init();
printf("ADC+DMA demo start\r\n");
while(1)
{
printf("ADC-%d\r\n", Get_Adc_Dma_Value(0) );
printf("illume-%d%%\r\n", Get_illume_Percentage_value() );
delay_1ms(1000);
}
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
上电效果: