ESP8266具有内置的10位ADC,只有一个ADC通道(A0引脚),即只有一个ADC输入引脚可读取来自外部器件的模拟电压

ESP8266上的ADC通道和芯片供电电压复用,也就是说我们可以将其设置为测量系统电压或者外部电压

测量外部电压:

analogRead(A0),用于读取施加在模块的ADC引脚上的外部电压;

输入电压范围:   0 - 3.0V之间;

测量精度  由于ADC具有10位分辨率,因此会给出0-1023的值范围

注意点:    为了支持外部电压范围(0-3.3v),NodeMcu做了一个电阻分压器,如图所示:

例子

编写一个读取NodeMcu的ADC引脚上的模拟电压。我们这里使用电位器在ADC引脚上提供0-3.3V的可变电压。如下图连接线:

代码:

void setup() {
Serial.begin();//配置波特率
} void loop() {
Serial.print("ADC Value: ");
Serial.println(analogRead(A0));//读取A0脚的数据,输出0-1023 对应 外部输入电压 0-1.0v
delay();
}
测量系统VCC电压:
ADC引脚必须保持悬空;在读取VCC电源电压之前,应更改ADC模式以读取系统电压
ADC_MODE(ADC_VCC);//设置ADC模式为读取系统电压
//ADC_MODE(ADC_TOUT) 读取外部电压模式---默认
void setup() {
Serial.begin();//配置波特率
} void loop() {
Serial.print("ESP8266当前系统电压(mV): ");
Serial.println(ESP.getVcc());//ESP.getVcc()读取VCC的电压,单位mv
delay();
}

天子骄龙

模拟输入(ADC-A0)的更多相关文章

  1. esp8266模拟输入(ADC)检测问题

    今天使用esp12f读取A0数据时一直出现错误; Serial.println(analogRead(A0));读取值一直为1024 因为前段时间一直用的是开发板,读取电压值正常 而从昨天换为了esp ...

  2. DAC杂谈二 ——ADC和DAC常用技术术语

    采集时间 采集时间是从释放保持状态(由采样-保持输入电路执行)到采样电容电压稳定至新输入值的1 LSB范围之内所需要的时间.采集时间(Tacq)的公式如下: 混叠 根据采样定理,超过奈奎斯特频率的输入 ...

  3. MSP430:AD10

    使用的MSP430G2553,为AD10,正常有8路输出,P1.0-P1.7为A0-A7 有七个寄存器, 参考电压可以是VCC或者内部参考电压1.5V或者2.5V 参考时钟可以是内部ADC10OSC ...

  4. ADXL3xx: 读取 ADXL3xx 加速度传感器

    原文链接:https://www.arduino.cc/en/Tutorial/ADXL3xx ADXL3xx加速度传感器 本教程将为你展示如何读取Analog Devices的ADXL3xx系列加速 ...

  5. [Arduino] Leonardo 中文介绍

    以下内容均翻译自arduino.cc,水平有限,如有错误请大家指正. 概述Arduino Leonardo是基于ATmega32u4一个微控制器板.它有20个数字输入/输出引脚(其中7个可用于PWM输 ...

  6. 史上最全脉搏心率传感器PulseSensor资料(电路图+中文说明书+最全源代码)

    准确度说明: 1 输入引脚一定要接在模拟输入口上 ESP-D1  只有一个模拟输入口  A0  0-3.3V  心跳不要接在5v上,否则电压不准  ESP-D1开发板有一个5V和一个3.3v 普通ar ...

  7. 进阶之路(基础篇) - 022 Arduino Leonardo 中文介绍(摘抄)

    本文摘抄:http://www.arduino.cn/thread-1205-1-1.html 概述Arduino Leonardo是基于ATmega32u4一个微控制器板.它有20个数字输入/输出引 ...

  8. Arduino开发版学习计划

    制定学习开发版的计划,今天先大体过一下整个教程. http://www.bilibili.com/video/av6105302/ 视频中说可以自己制造亦可卫星放上天. Arduino使用C/C++编 ...

  9. 转:utf8汉字编码16进制对照

    http://blog.chinaunix.net/uid-25544300-id-3281847.html GB    Unicode  UTF-8     Chinese Character Co ...

  10. STM32之ADC+步骤小技巧(英文)

    神通广大的各位互联网的网友们.大家早上中午晚上好好好.今早起来很准时的收到了两条10086的扣月租的信息.心痛不已.怀着这心情.又开始了STM32的研究.早上做了计算机控制的PID实验,又让我想起了飞 ...

随机推荐

  1. 【MyBatis】-----【MyBatis】---表级联系【一对多】

    一.核心配置文件 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE configuration ...

  2. 【C语言工具】AddressSanitizer - 内存检测工具

    Github 地址:https://github.com/google/sanitizers Wiki 地址:https://github.com/google/sanitizers/wiki/Add ...

  3. VBA文件操作

    做这些东西主要是为了,实现,我们的最终目标. 查到 两个大表里面的变化数据. 所以 这次 ①实现了 文件操作的一部分内容. 包括,excel的打开.分四个步骤. 1.路径 2.打开工作博 3.操作 4 ...

  4. cocos2dx基础篇(14) 滚动视图CCScrollView

    [3.x]     (1)去掉 "CC"     (2)滚动方向         > CCScrollViewDirection 改为强枚举 ScrollView::Dire ...

  5. 精读《Optional chaining》

    1. 引言 备受开发者喜爱的特性 Optional chaining 在 2019.6.5 进入了 stage2,让我们详细读一下草案,了解一下这个特性的用法以及讨论要点. 借着这次精读草案,让我们了 ...

  6. Nginx日志监控 使用 goaccess查看nginx日志

    nginx日志监控 yum install goaccess   安装使用教程 goaccess access.log -o ../html/report.html --real-time-html ...

  7. [Git] 018 冲突在所难免,需要巧妙化解

    0. 回顾 [Git] 005 初识 Git 与 GitHub 之分支 中"4.2 情形二"的 9 提及了"解决冲突" 当时没有展开,这回详谈 我这回反其道而行 ...

  8. qt QUndoGroup的使用

    最近项目中用到撤销,恢复功能.qt的demo中有一个例子,是类似于单文档的.而我的项目中是类似于多文档的项目,即可能要打开多个页面,不同的页面都有撤销恢复功能.这样的话,就要用到QUndoGroup类 ...

  9. ubuntu14 teamviewer使用

    一. 软件安装 1.1. 下载.deb文件 下载13版本的,不要下载最新版本的 1.2. 环境配置 <1>. sudo dpkg --add-architecture i386 <2 ...

  10. Coding 地址

    Coding 连接 https://dev.tencent.com/u/leexi