电位器模块采用常见的单圈碳膜旋转电位器(通常带有旋钮帽),旋转的圈数与电阻值变化的输出相对应。可通过单片机(如树莓派 Pico、Arduino、ESP32 等ADC接口模数转换器的引脚读取,常用于调节音量、控制 LED 亮度、电机调速或角度/位置传感器模块
模块内部本质是一个分压电路。当施加电压VCC时,滑动触点将内部电阻分为两部分。
输出电压VOUT计算公式为:
0当前旋转角度
0MAX总旋转角度(约 300°)
通过测得VOUT,单片机即可计算出当前旋钮的角度或相对位置。
工作电压:3.3v~5v (使用在单片机时请接3.3V,不可接5V供电)
标称阻值: 20kΩ
输出信号:AD模拟量信号(电压随旋转角度呈线性变化)
调节方式:旋转调节
旋转角度:约280°~300°(非 360° 无限旋转)
阻值变化:B型(线性电位器 - Linear)
工作温度:-10°C 至 +70°C
电压匹配:使用树莓派/ESP32等单片机时,务必将 VCC 接在 3.3V供电。千万不可接 5V,OUT 输出的最高电压与VCC供电一样,5V输出可能损坏单片机的芯片。
防抖与滤波:电位器在旋转过程中由于机械触点摩擦,可能会产生轻微的模拟量噪声/波动。如需更平滑的数据,可在代码中加入软件均值滤波,或在 OUT 与 GND 之间并联一个 0.1µF (104) 的瓷片电容进行硬件滤波。
| 以树莓派pico为例,用电位器旋转来控制LED灯亮度变化,请按下图接线。务必注意不可接反,默认接3.3V供电,千万不能接5v供电,否则会烧毁设备 |

| main 下载这个源代码直接上传到树莓派Pico文件内,运行程序后。旋转电位器然后查看数据变化,观察LED灯的亮度变化(如下图) |

本次以ESP32-S3主板为例按下图接好连接线,务必注意不可接反,否则会烧毁设备。

| main下载main这个源代码直接用Arduino IDE编译上传程序,然后旋转点位,查看LED灯的亮度变化(如下图) |

全程序核心逻辑可简化为 3 步:
配置:将 GPIO 5(电位器输入)和 GPIO 10(LED PWM 输出)均设置为 12 位精度(范围 0 ~ 4095)。
直连控制:使用 analogRead() 读取电位器数值,直接通过 ledcWrite() 赋值给 LED 占空比。(两者精度一致,无需换算)
反馈与延时:换算出电压和百分比打印到串口,每次循环延时 50 毫秒保证调光响应平滑。