19-07-2025, 19:00
Witam,
Mam Arduino NANO i ESP32 oraz moduł ADC Adafruit ADS1115 - próbuję odczytywać napięcie 3,3V z płytki Arduino NANO (faktyczne zmierzone multimetrem 3,26V) jednak ciągle dostaję zawyżony wynik ~3,63V.
ADS1115 zasilany z nóżki 5V Arduino (faktyczne napięcie ~4,7V).
Ktoś ma pomysł dlaczego?
18:58:59.604 -> AIN2: 3355 0.63V
18:58:59.604 -> AIN3: 19360 3.63V
18:59:01.617 -> -----------------------------------------------------------
18:59:01.660 -> AIN2: 3355 0.63V
18:59:01.660 -> AIN3: 19364 3.63V
18:59:03.671 -> -----------------------------------------------------------
18:59:03.714 -> AIN2: 3351 0.63V
18:59:03.714 -> AIN3: 19361 3.63V
18:59:05.725 -> -----------------------------------------------------------
18:59:05.769 -> AIN2: 3349 0.63V
18:59:05.769 -> AIN3: 19367 3.63V
18:59:07.791 -> -----------------------------------------------------------
18:59:07.791 -> AIN2: 3350 0.63V
18:59:07.824 -> AIN3: 19367 3.63V
18:59:09.846 -> -----------------------------------------------------------
18:59:09.888 -> AIN2: 3351 0.63V
18:59:09.888 -> AIN3: 19366 3.63V
Poniżej używany przeze mnie kod:
Mam Arduino NANO i ESP32 oraz moduł ADC Adafruit ADS1115 - próbuję odczytywać napięcie 3,3V z płytki Arduino NANO (faktyczne zmierzone multimetrem 3,26V) jednak ciągle dostaję zawyżony wynik ~3,63V.
ADS1115 zasilany z nóżki 5V Arduino (faktyczne napięcie ~4,7V).
Ktoś ma pomysł dlaczego?
18:58:59.604 -> AIN2: 3355 0.63V
18:58:59.604 -> AIN3: 19360 3.63V
18:59:01.617 -> -----------------------------------------------------------
18:59:01.660 -> AIN2: 3355 0.63V
18:59:01.660 -> AIN3: 19364 3.63V
18:59:03.671 -> -----------------------------------------------------------
18:59:03.714 -> AIN2: 3351 0.63V
18:59:03.714 -> AIN3: 19361 3.63V
18:59:05.725 -> -----------------------------------------------------------
18:59:05.769 -> AIN2: 3349 0.63V
18:59:05.769 -> AIN3: 19367 3.63V
18:59:07.791 -> -----------------------------------------------------------
18:59:07.791 -> AIN2: 3350 0.63V
18:59:07.824 -> AIN3: 19367 3.63V
18:59:09.846 -> -----------------------------------------------------------
18:59:09.888 -> AIN2: 3351 0.63V
18:59:09.888 -> AIN3: 19366 3.63V
Poniżej używany przeze mnie kod:
Kod:
#include <Adafruit_ADS1X15.h>
Adafruit_ADS1115 ads;
void setup(void)
{
Serial.begin(9600);
ads.setGain(GAIN_TWOTHIRDS);
if (!ads.begin()) {
Serial.println("Failed to initialize ADS.");
while (1);
}
}
void loop(void)
{
int16_t adc2, adc3;
float volts2, volts3;
adc2 = ads.readADC_SingleEnded(2);
adc3 = ads.readADC_SingleEnded(3);
volts2 = ads.computeVolts(adc2);
volts3 = ads.computeVolts(adc3);
Serial.println("-----------------------------------------------------------");
Serial.print("AIN2: "); Serial.print(adc2); Serial.print(" "); Serial.print(volts2); Serial.println("V");
Serial.print("AIN3: "); Serial.print(adc3); Serial.print(" "); Serial.print(volts3); Serial.println("V");
delay(2000);
}