市面上常见的传感器模块,其输出大体可分为模拟、数字、特定协议输出(例如 RS485、RS232、SPI、CAN、单总线等)。其中,前两种的读取最为简单通用,而使用特定协议的传感器读取方法要参考传感器相应的文档。
本教程以四针脚的光线传感器为例,介绍模拟和数字输出的传感器的读取方法。只有这款四针脚的光线传感器,才可以同时兼具模拟输出(AO 引脚)和数字输出(DO 引脚)。而其他三针脚的传感器,有的仅支持模拟输出,有的仅支持数字输出。
光线传感器对环境光线检测:
AO 脚输出模拟信号,信号量越大表示光线越少。
DO 脚输出数字信号,光线超过一个阈值时输出低电平,反之则输出高电平。这个阈值可以通过转动传感器上的可调电阻来设定。
硬件连接
传感器模块的 VCC 脚接树莓派 Pico 的 3V3。
传感器模块的 GND 脚接树莓派 Pico 的 GND。
传感器模块的 AO 脚接树莓派 Pico 的 GP28。
传感器模块的 DO 脚接树莓派 Pico 的 GP27。
编程
为了便于理解,我们下面的代码中,将读取到的数值进行一个变化。以便让光线越强时显示出来的数值更大(最小值为 0,最大值为 65535),当光线达到阈值时显示 1 而不是 0。
import machine
import utime
sensor_analog = machine.ADC(28)
sensor_digital = machine.Pin(27, machine.Pin.IN)
while True:
print('Analog value: %d, Digital value: %d.' % (65535 - sensor_analog.read_u16(), 1 - sensor_digital.value()))
utime.sleep(0.5)
运行之后,Shell 中每隔 0.5 秒会打印出一行从传感器读取到并转换之后的数据。数值随着环境光线的变化随之变化。

对于其他类似设计的传感器,例如声音传感器、振动传感器、火焰传感器、土壤湿度传感器、水位传感器、雨水传感器等,接线和读取方法以此类推即可。
审核编辑:刘清
Sensirion和AirTeq合作推出新型室内空气质量...
时间:2026-03-19
可穿戴生物传感器厂商SIBIONICS推出SIBIO K...
时间:2026-03-19
使用RT-Thread和CPK-RA2L1采集DHT11温湿度
时间:2026-03-19
柔性触觉传感阵列+深度学习实现健康监测和纹...
时间:2026-03-19
医疗传感器有哪些_磁传感器在医疗健康领域中...
时间:2026-03-19
液压压力传感器原理及应用场合
时间:2026-03-19
地磁传感器在城市交通中的主要作用
时间:2026-03-19
新型传感器的检测方法
时间:2026-03-19
压电陶瓷传感器的特点及常见用途
时间:2026-03-19
液压传感器的构造及工作原理
时间:2026-03-19
玻璃釉电容器的结构与特点
时间:2026-03-05
电阻的标称阻值和允许偏差
时间:2026-03-05
碳膜电阻如何识别_金属膜电阻器和碳膜电阻器...
时间:2026-03-05
石英灯电子变压器电路原理
时间:2026-03-06
变压器并列运行的条件浅析
时间:2026-03-06
关于STM32WL LSE 添加反馈电阻后无法起振的...
时间:2026-03-05
贴片电阻怎么看阻值
时间:2026-03-05
可调电阻怎么接线
时间:2026-03-05
压敏电阻有正负极吗
时间:2026-03-05
怎样测试三极管的好坏,NPN三极管如何知道是...
时间:2026-03-07