problema analog input arduino. ADC rotto?

Buongiorno a tutti quanti,
sono nuovo nel forum! :slight_smile:
ho iniziato ad utilizzare arduino da qualche mesetto ed ecco il mio primo problema :slight_smile:

ho il seguente problema con arduino: (nell'allegato c'è la foto del codice

arduino mi stampa sul monitor seriale dei valori sbagliati; mi spiego meglio.
quando cortocircuito l'ingresso analogico (A0) con il pin di massa(gnd) di arduino, mi aspetterei di leggere un valore di ingresso pari a zero. invece trovo un valore ben diverso.
la stessa cosa mi succede quando forzo sia il gnd che il pin di ingresso(A0) alla massa del circuito(che è attaccata alla massa di casa mia tramite un generatore di tensione (ATX di un pc desktop).

non riesco a capire il motivo. dite che ho rotto il pin di ingresso dell'adc?

questo malfunzionamento ce l'ho solo sui pin A0 e A5. tutti gli altri pin, quando cortocircuitati a massa, danno il valore 0.00

Vi ringrazio molto :slight_smile:

Spero di riuscire a contribuire in futuro al forum

Buongiorno,
essendo il tuo primo post, nel rispetto del regolamento della sezione Italiana del forum (… punto 13, primo capoverso), ti chiedo cortesemente di presentarti IN QUESTO THREAD (spiegando bene quali conoscenze hai di elettronica e di programmazione ... possibilmente evitando di scrivere solo una riga di saluto) e di leggere con MOLTA attenzione il su citato REGOLAMENTO ... Grazie. :slight_smile:

Guglielmo

P.S.: Qui una serie di link utili, NON necessariamente inerenti alla tua domanda:
- serie di schede by xxxPighi per i collegamenti elettronici vari: ABC - Arduino Basic Connections
- pinout delle varie schede by xxxPighi: Pinout
- link generali utili: Link Utili

ops, scusami :slight_smile:

Intanto NON è necessario il "pinMode(A0, INPUT);" che serve solo nel caso il pin venga usato come INPUT digitale. Le funzioni che coinvolgono la lettura analogica predispongono già da sole il pin come deve essere.

Detto questo, se il pin A0 lo collegni con un filo a GND ... deve dare 0, altri valori indicano che c'è un problema ...

Usa un programmino semplice semplice per verificare:

void setup() {
   Serial.begin(9600);
}

void loop() {
   Serial.print("Valore: ");
   Serial.println(analogRead(A0));
   delay(1000);
}

... e vedi che valore ti riporta.

Guglielmo

grazie per la correzione del codice

si, mi da come prima un valore diverso da zero. dev'esserci un problema

andreedo:
la stessa cosa mi succede quando forzo sia il gnd che il pin di ingresso(A0) alla massa del circuito(che è attaccata alla massa di casa mia tramite un generatore di tensione (ATX di un pc desktop).
non riesco a capire il motivo. dite che ho rotto il pin di ingresso dell'adc?

Vista così temo di si, ma spiega meglio come hai fatto i collegamenti, in particolare cosa intendi con "alla massa di casa mia" e come hai collegato l'alimentatore ATX ad Arduino, e se qualche volta ti sei "sbagliato" a fare qualche collegamento su quei due pin...