ESP32 ADC引腳沒有線性行為

2023-02-08 12:35:38 字數 911 閱讀 5987

模數轉換器(adc)

esp32有18 x 12位adc輸入通道(而esp8266只有1 x 10位adc)。這些是可用作adc和相應通道的gpio:

adc1_ch0 (gpio 36)

adc1_ch1 (gpio 37)

adc1_ch2 (gpio 38)

adc1_ch3 (gpio 39)

adc1_ch4 (gpio 32)

adc1_ch5 (gpio 33)

adc1_ch6 (gpio 34)

adc1_ch7 (gpio 35)

adc2_ch0 (gpio 4)

adc2_ch1 (gpio 0)

adc2_ch2 (gpio 2)

adc2_ch3 (gpio 15)

adc2_ch4 (gpio 13)

adc2_ch5 (gpio 12)

adc2_ch6 (gpio 14)

adc2_ch7 (gpio 27)

adc2_ch8 (gpio 25)

adc2_ch9 (gpio 26)

注意:使用wi-fi時不能使用adc2管腳。因此,如果您使用wi-fi,並且無法從adc2 gpio獲取值,則可以考慮改用adc1 gpio。

adc輸入通道具有12位解析度,所以可以獲得0到4095之間的模擬讀數,其中0對應於0v,4095對應於3.3v,還可以在**上設定通道的解析度以及adc範圍。

esp32 adc引腳沒有線性行為,可能無法區分0和0.1v,或3.2和3.3v。在使用adc引腳時,您需要記住這一點。您將得到類似於下圖所示的行為。