RP2040 pico 实验6,光敏电阻传感器模块(LM393 比较器版)

💡 这是光敏电阻传感器模块(LM393 比较器版)

它的核心作用是检测环境光照强度,并输出两种信号:

  • AO(模拟量):直接输出与光照强度成正比的电压(0~3.3V/5V)
  • DO(数字量):通过蓝色电位器调节阈值,光照高于/低于阈值时输出高/低电平(开关量)

🔌 接线方法(RP2040 ↔ 光敏模块)

模块引脚共 4 个,对应 RP2040 接线如下:

模块引脚 RP2040 引脚 功能说明
VCC 3.3V 或 5V 供电(推荐 3.3V,避免损坏 ADC)
GND GND 接地
AO GP26 (ADC0) 模拟量输出,用于读取精确光照值
DO 任意 GPIO(如 GP17) 数字量输出,用于光照开关检测(可选)

注意:RP2040 的 ADC 引脚只能接受 0~3.3V 电压,所以如果模块接 5V 供电,AO 输出可能超过 3.3V,务必用 3.3V 给模块供电


🧑‍💻 MicroPython 代码示例(读取光照数值)

1. 读取模拟量(精确光照强度)
python 复制代码
from machine import ADC, Pin
import time

# 初始化 ADC 引脚(GP26 对应 ADC0)
adc = ADC(Pin(26))

while True:
    # 读取 ADC 值(范围 0~65535,数值越大光照越强)
    light_value = adc.read_u16()
    # 转换为电压(3.3V 参考)
    voltage = light_value * 3.3 / 65535
    print(f"光照 ADC 值: {light_value}, 电压: {voltage:.2f}V")
    time.sleep(0.5)
c 复制代码
>>> %Run -c $EDITOR_CONTENT

MPY: soft reboot
光照 ADC 值: 2048, 电压: 0.10V
光照 ADC 值: 16019, 电压: 0.81V
光照 ADC 值: 14611, 电压: 0.74V
光照 ADC 值: 14307, 电压: 0.72V
光照 ADC 值: 14243, 电压: 0.72V
光照 ADC 值: 13059, 电压: 0.66V
光照 ADC 值: 10930, 电压: 0.55V
光照 ADC 值: 9554, 电压: 0.48V
光照 ADC 值: 9570, 电压: 0.48V
光照 ADC 值: 9170, 电压: 0.46V
光照 ADC 值: 8338, 电压: 0.42V
2. 读取数字量(开关量检测,可选)
python 复制代码
from machine import Pin
import time

# 初始化 DO 引脚(GP17)
do_pin = Pin(17, Pin.IN)

while True:
    # 读取 DO 电平:0=光照低于阈值,1=光照高于阈值
    do_status = do_pin.value()
    print(f"数字量状态: {'亮' if do_status else '暗'}")
    time.sleep(0.5)

✨ 测试与调节

  1. 模拟量测试:用手遮住光敏电阻 → ADC 值变小;移开手 → ADC 值变大。
  2. 数字量阈值调节
    • 用小螺丝刀旋转蓝色电位器
    • 顺时针转:阈值变高(更暗才会触发 DO 低电平)
    • 逆时针转:阈值变低(更亮就会触发 DO 低电平)

💡 原理小科普

  • 光敏电阻:光照越强,电阻越小 → 分压后 AO 电压越高
  • LM393 比较器:将 AO 电压与电位器设定的参考电压比较,输出 DO 高低电平
  • 适合做:自动夜灯、光照监测、智能窗帘触发等场景

要不要我帮你写一个**「光敏控制 LED 亮灭」的完整示例代码**,实现"天黑自动开灯,天亮自动关灯"的小项目?

相关推荐
LCMICRO-1331084774614 小时前
国产长芯微LDC5141完全P2P替代DAC80501,数模转换器 (DAC)
单片机·嵌入式硬件·fpga开发·硬件工程·dsp开发·数模转换器 dac
普中科技15 小时前
【普中 51-Ai8051 开发攻略】-- 第 9 章 按键控制实验
单片机·嵌入式硬件·开发板·keil·按键·普中科技·ai8051u
曼亿点16 小时前
STM32HAL驱动L298N电机驱动模块(PWM调速+双电机控制)保姆级教程
stm32·单片机·嵌入式硬件
独小乐19 小时前
012.整体框架适配SDRAM|千篇笔记实现嵌入式全栈/裸机篇
c语言·汇编·笔记·单片机·嵌入式硬件·arm·gnu
不吃鱼的羊19 小时前
ADC扫描组Scan Group
单片机
LCMICRO-1331084774620 小时前
长芯微LPC556D1完全P2P替代DAC8830,是引脚兼容的16位数模转换器,该系列产品为单通道、低功耗、缓冲电压输出型DAC
stm32·单片机·嵌入式硬件·fpga开发·硬件工程·电压输出型dac
charlie11451419120 小时前
嵌入式C++教程实战之Linux下的单片机编程(9):HAL时钟使能 —— 不开时钟,外设就是一坨睡死的硅
linux·开发语言·c++·单片机·嵌入式硬件·c
钿驰科技20 小时前
水泵无刷电机驱动板如何实现恒压控制?
单片机·嵌入式硬件
xingzhemengyou120 小时前
STM32 DMA
stm32·单片机·嵌入式硬件
森利威尔电子-20 小时前
森利威尔 SL3160A 降压型 DC - DC 转换器:10V - 150V 宽输入,稳出 5V/2.5A
单片机·嵌入式硬件·集成电路·芯片·电源芯片