首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Arduino中的ESP32 32-S2 TFT Feather -模拟数字

Arduino中的ESP32 32-S2 TFT Feather -模拟数字
EN

Stack Overflow用户
提问于 2022-10-24 20:37:36
回答 1查看 30关注 0票数 0

我有一个气体感应器,我正在试着读。我已经将传感器连接到ESP-S2 TFT Feather的模拟输入端。当我将模拟转换为数字,读取被测电压时,被测电压非常高。我算出这个棋盘的分辨率是13位。但是,测量的电压仍然很高。

代码语言:javascript
复制
 int analogInPin = A2; 
 void readco() {
 // read the analog in value:
 sensorValue = 0;
 const int res = 8191; //resolution = 13-bit and 2^13 - 1 = 8191
 
  sensorValue = analogRead(analogInPin) + sensorValue;   
  iaq_data.co_0=(float) sensorValue*3.3/res;
EN

回答 1

Stack Overflow用户

发布于 2022-10-25 07:34:10

从ESP32 32-S2文档中发现了这里

单读模式下ESP32 32-s2adc原始结果的分辨率为12位。

你确定你的决议是13位吗?

而且,您似乎每次都会将sensorValue添加到自身中。你每次都把它初始化为0,所以这不重要,但我会删除它。

这一守则应适用于:

代码语言:javascript
复制
int 12_bit_resolution = 4095; // 2^12 4096 - 1
input_voltage = analogRead(analogInPin) * (3.3 / 12_bit_resolution);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74186574

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档