物联网AI MicroPython学习之语法 ADC数模模块

学物联网,来万物简单IoT物联网!!

ADC 介绍

  • 模块功能:

ADC数模转换模块

ADC功能在ESP32引脚32-39上可用,使用默认配置时,ADC引脚上的输入电压必须介于0.0v和1.0v之间(任何高于1.0v的值都将读为4095),如果需要增加测量范围,需要配置衰减器。

接口说明

ADC - 构建ADC对象

  • 函数原型:ADC(ch, atten, width)
  • 参数说明:
参数 类型 必选参数? 说明
ch object Y 创建ADC引脚对象 例如:Pin(32) ESP32只有引脚32-39上可用ADC
atten enum N 衰减量 ATTN_0DB 默认配置 ATTN_2_5DB ATTN_6DB ATTN_11DB
width enum N 精度 WIDTH_9BIT WIDTH_10BIT WIDTH_11BIT WIDTH_12BIT默认配置
  • 返回值:
    构建的ADC对象。

atten - 操作ADC的衰减量

  • 函数原型:atten(data)
  • 参数说明:
参数 类型 必选参数? 说明
data int N 设置ADC输入的衰减量,以获取更大的电压测量范围,但是是以精度为代价的。 无参数:返回衰减量 有参数:设置衰减量 ATTN_0DB : 0dB, 最大输入电压为 1.00v ATTN_2_5DB : 2.5dB, 最大输入电压约为 1.34v ATTN_6DB : 6dB 衰减, 最大输入电压约为 2.00v ATTN_11DB : 11dB 衰减,最大输入电压约为 3v
  • 返回值:
    无参数:返回衰减量

width - 操作ADC的精度

  • 函数原型:width(data)
  • 参数说明:
参数 类型 必选参数? 说明
data int N 无参数:返回精度 有参数:设置精度 WIDTH_9BIT WIDTH_10BIT WIDTH_11BIT WIDTH_12BIT
  • 返回值:
    无参数:返回精度

read - 获取测量的ADC值

  • 函数原型:read()
  • 参数说明:

  • 返回值:
    ADC测量值
  • 代码示例
python 复制代码
from machine import ADC

adc = ADC(Pin(32))          # 在ADC引脚上创建ADC对象
adc.read()                  # 读取测量值, 0-4095 表示电压从 0.0v - 1.0v

adc.atten(ADC.ATTN_11DB)    # 设置 11dB 衰减输入 (测量电压大致从 0.0v - 3.6v)
adc.width(ADC.WIDTH_9BIT)   # 设置 9位 精度输出 (返回值 0-511)
adc.read()                  # 获取重新配置后测量值, 0-511
相关推荐
天天找自己19 分钟前
机器学习基石:深入解析线性回归
人工智能·机器学习·线性回归
是孑然呀28 分钟前
【笔记】重学单片机(51)(下)
笔记·单片机·嵌入式硬件
zhangxiaomm41 分钟前
pytorch 学习笔记(2)-实现一个线性回归模型
pytorch·笔记·学习
奔波霸的伶俐虫1 小时前
jeecg框架@Dict不生效问题
开发语言·python
Godspeed Zhao1 小时前
自动驾驶中的传感器技术12——Camera(3)
人工智能·机器学习·自动驾驶
tangjunjun-owen1 小时前
单类别目标检测中的 Varifocal Loss 与 mAP 评估:从原理到实践(特别前景和背景类区分)
人工智能·目标检测·计算机视觉
爆改模型1 小时前
【CVPR2025】计算机视觉|AnomalyNCD:让工业异常分类“脱胎换骨”!
人工智能·计算机视觉·分类
Fabarta技术团队1 小时前
Fabarta个人专属智能体限时体验中:高效、安全的长文写作新搭档
人工智能·科技·智能体
徐赛俊1 小时前
# 自动定时运行Python爬虫脚本教程(Windows任务计划程序)
windows·爬虫·python
暴躁的大熊1 小时前
LLM大模型时代:生活服务领域的“生存革命“与新生态重构
人工智能