ESP8266使用ADC(模擬輸入)


ESP8266 ADC(模擬輸入)

ESP8266-12E 和 ESP8266-07 都有一個易於訪問的 ADC 引腳。這意味着這些 ESP8266 板可以讀取模擬信號。

image-20210207104525192

ESP8266 ADC 規格

在參考 ESP8266 ADC 引腳時,您經常會交替聽到這些不同的術語:

  • ADC(模擬數字轉換器)
  • TOUT
  • Pin6
  • A0
  • Analog Pin 0

所有這些術語都引用 ESP8266 中的同一針腳。

ESP8266 ADC 分辨率

ADC 引腳具有 10 位分辨率,也就是210 ,所以我們可以獲得介於 0 和 1023 之間的值。

ESP8266 輸入電壓范圍

如果使用裸芯片,ESP8266 ADC 引腳輸入電壓范圍為 0 至 1V。但是,ESP8266 開發板都配有內部分壓器,因此輸入范圍為 0 至 3.3V。

  • ESP8266 開發板中的 ADC 電壓范圍:0 至 3.3V(例如:ESP8266 12-E NodeMCU 套件、WeMos D1 Mini、...)
  • ESP8266 芯片中的ADC電壓范圍:0至1V(例如:ESP-07芯片、ESP-12E芯片等)

ESP8266 模擬引腳

借助 ESP8266 12-E NodeMCU 套件和其他 ESP8266 開發板,只需將跳線連接到引腳即可輕松訪問 A0(請參見下圖)。

image-20210207104856051

需要零件

為了向您展示如何在 ESP8266 中使用模擬讀數,我們將從電位計讀取值。為此,您需要將電位計連接到您的電路板。

以下是完成本教程所需的硬件:

  • 推薦: ESP8266-12E NodeMCU 套件
  • 替代:1x ESP8266-07 芯片或 1x ESP8266-12E 芯片+ 串口下載線CH340G模塊
  • 100 歐姆電阻器(如果您使用裸芯片,需要)
  • 220 歐姆電阻器(如果您使用裸芯片,需要)
  • 1k 歐姆電位計
  • 面包板
  • 跳線

示意圖

如果您使用的是 ESP8266 開發板,請按照下一個示意圖操作。

image-20210207105101419

如果使用的ESP8266 芯片的輸入電壓范圍為 0V 至 1V,則需要確保 A0 引腳上的輸入電壓不超過 1V。因此,您需要一個分壓器電路,如下所示。

image-20210207105151720

我們使用的是 100 歐姆和 220 歐姆電阻器,因此 Vout 是 1V。

img

使用 Arduino IDE

首先要在 Arduino IDE 中安裝 ESP8266的支持庫文件

為了將代碼上傳到 ESP8266,您需要先安裝 ESP8266 加載項(如果尚未安裝)。按照下一教程操作:

const int analogInPin = A0;  //ESP8266模擬引腳ADC0,也就是A0

int sensorValue = 0;  

void setup() {
  // 初始化串口的波特率為115200
  Serial.begin(115200);
}

void loop() {
  //讀取模擬數值
  sensorValue = analogRead(analogInPin);
 
  // 打印串行監視器中的讀數
  Serial.print("sensor = ");
  Serial.print(sensorValue);
  
  delay(1000);
}

上傳代碼后,以 115200 的波特率打開串行監視器。

image-20210207105816436

旋轉電位計,查看值增加或減少。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM