You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

为何未接外设时Raspberry Pi Pico ADC引脚电压不为0?

问题分析与解决

原因

未连接外设时ADC 0-2通道读数异常且波动的核心原因是引脚处于浮空状态:

  • Raspberry Pi Pico的ADC0、ADC1、ADC2对应GPIO26、GPIO27、GPIO28,你的代码中对这些引脚执行了gpio_disable_pulls(i),关闭了内部上下拉电阻,导致引脚没有固定的参考电平。
  • 浮空的引脚会像天线一样拾取环境中的电磁干扰(比如板上其他电路的信号、周围的无线辐射、甚至靠近时的人体感应),因此读数会随机波动,且不会稳定在0V。
  • 板载温度传感器是内部硬连接到ADC4的,有固定的信号路径和电平参考,所以读数稳定且合理。

解决方法

  1. 添加上下拉电阻:如果需要测试空载状态下的ADC读数,给对应引脚开启内部上下拉:
    // 替换原代码中gpio_disable_pulls(i)的部分
    gpio_pull_down(i); // 下拉到0V,读数会接近0
    // 或者 gpio_pull_up(i); // 上拉到3.3V,读数会接近3.3V
    
  2. 实际使用时无需额外操作:当你连接传感器后,传感器会为ADC引脚提供稳定的输入电平,此时浮空问题自然消失,读数会恢复正常。
  3. 修正输入使能配置:ADC引脚需要保持输入使能状态,建议删除gpio_set_input_enabled(i, false)这行代码,避免影响ADC采样。

内容的提问来源于stack exchange,提问作者pawrok

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.24 20:39:14