ESP32片上模数转换ADC精度简单测试方案及测试数据分享

本文主要是介绍ESP32片上模数转换ADC精度简单测试方案及测试数据分享,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

了解ESP32测量电压的品质

***ESP32结合Phyphox进行移动实验的技术,渐而形成为一个创作而学术的氛围,至少在国内是这样——大家能够把实验中遇到的问题和灵感互相启发,这确实是相当好的事情——此刻,大家把目光重新转向了实验的最底层保证,ESP32测量电压的准确程度怎么样***

直接使用ESP32来测量电压,这个功能在单片机的术语里,是有专有词的:ADC,模数转换,Analog to Digital Converter。

直接使用ESP32测量引脚上的模拟电压,会有较大的波动,而且不准确,专业领域里会有众多的技术指标来说明。这里不想把它叙述得太玄乎,就说成了观察测量电压的品质,就是准确度和精确度怎么样。

ESP32肯定不会象数字万用表、示波器那样准确,所以对电压的数值要求不高、粗略的测量能应付,但精准的测量,最好不直接用ESP32。

我手上有个稳压电源模块,带数字面板,说明书上说是电压准确度能达到0.5%加1个字,分辨率0.01V。以前用示波器校过,精度0.01V没有问题,其他不敢说。

现在用它来给ESP32供电,由ESP32直接测量,得到图线如下:

在电压接近3V时误差最小。其他范围上,绝对误差最大可达0.2V;在3V以下,绝对误差均值约为0.15V。

我们的ESP32结合Phyphox实验较准确的测量电压,一直使用的是ADS1115,ADS1115是16位ADC芯片,精确度自然是ESP32无法比拟的。

现在使用稳压源和ADS1115测量同一电压情况,得测量结果如下:

可见ADS1115才是好的选择。

如果不使用ADS115就没有办法了么?不是的。

一种方案是使用内部参考电压,我也没有尝试过,很多网站上有教程。我没去看,麻烦。

另一种方案,是折中的修正一下,虽然仍然不准确,但若误差出现在小数点后的第2位即0.01V的位置,对于大多数高中物理的实验,也不错了吧?

ESP32的官方文档介绍了它的ADC不准确,官方是有言在先的。后面再琢磨修正这个事儿。

这篇关于ESP32片上模数转换ADC精度简单测试方案及测试数据分享的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/871840

相关文章

Python虚拟环境与Conda使用指南分享

《Python虚拟环境与Conda使用指南分享》:本文主要介绍Python虚拟环境与Conda使用指南,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、python 虚拟环境概述1.1 什么是虚拟环境1.2 为什么需要虚拟环境二、Python 内置的虚拟环境工具

SpringBoot服务获取Pod当前IP的两种方案

《SpringBoot服务获取Pod当前IP的两种方案》在Kubernetes集群中,SpringBoot服务获取Pod当前IP的方案主要有两种,通过环境变量注入或通过Java代码动态获取网络接口IP... 目录方案一:通过 Kubernetes Downward API 注入环境变量原理步骤方案二:通过

Springboot3+将ID转为JSON字符串的详细配置方案

《Springboot3+将ID转为JSON字符串的详细配置方案》:本文主要介绍纯后端实现Long/BigIntegerID转为JSON字符串的详细配置方案,s基于SpringBoot3+和Spr... 目录1. 添加依赖2. 全局 Jackson 配置3. 精准控制(可选)4. OpenAPI (Spri

关于跨域无效的问题及解决(java后端方案)

《关于跨域无效的问题及解决(java后端方案)》:本文主要介绍关于跨域无效的问题及解决(java后端方案),具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录通用后端跨域方法1、@CrossOrigin 注解2、springboot2.0 实现WebMvcConfig

基于Python实现一个简单的题库与在线考试系统

《基于Python实现一个简单的题库与在线考试系统》在当今信息化教育时代,在线学习与考试系统已成为教育技术领域的重要组成部分,本文就来介绍一下如何使用Python和PyQt5框架开发一个名为白泽题库系... 目录概述功能特点界面展示系统架构设计类结构图Excel题库填写格式模板题库题目填写格式表核心数据结构

在Java中将XLS转换为XLSX的实现方案

《在Java中将XLS转换为XLSX的实现方案》在本文中,我们将探讨传统ExcelXLS格式与现代XLSX格式的结构差异,并为Java开发者提供转换方案,通过了解底层原理、性能优势及实用工具,您将掌握... 目录为什么升级XLS到XLSX值得投入?实际转换过程解析推荐技术方案对比Apache POI实现编程

C/C++ chrono简单使用场景示例详解

《C/C++chrono简单使用场景示例详解》:本文主要介绍C/C++chrono简单使用场景示例详解,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友... 目录chrono使用场景举例1 输出格式化字符串chrono使用场景China编程举例1 输出格式化字符串示

Java实现本地缓存的常用方案介绍

《Java实现本地缓存的常用方案介绍》本地缓存的代表技术主要有HashMap,GuavaCache,Caffeine和Encahche,这篇文章主要来和大家聊聊java利用这些技术分别实现本地缓存的方... 目录本地缓存实现方式HashMapConcurrentHashMapGuava CacheCaffe

python多线程并发测试过程

《python多线程并发测试过程》:本文主要介绍python多线程并发测试过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、并发与并行?二、同步与异步的概念?三、线程与进程的区别?需求1:多线程执行不同任务需求2:多线程执行相同任务总结一、并发与并行?1、

Python处理大量Excel文件的十个技巧分享

《Python处理大量Excel文件的十个技巧分享》每天被大量Excel文件折磨的你看过来!这是一份Python程序员整理的实用技巧,不说废话,直接上干货,文章通过代码示例讲解的非常详细,需要的朋友可... 目录一、批量读取多个Excel文件二、选择性读取工作表和列三、自动调整格式和样式四、智能数据清洗五、