Sto usando arduino per la prima volta e non capisco veramente cosa dovrei collegare al PIN di riferimento dellADC … o se lo faccio devo anche usarlo mentre colleghi il sensore analogico ad arduino, grazie!
Commenti
- Fa arduino.cc/reference/en/language/functions/analog-io/ … aiuto? Non ' devi usarlo.
Rispondi
Il convertitore AD nel microcontrollore ATMega (come quello utilizzato in Arduino) converte una tensione di ingresso in un numero .
Questo ADC sembra essere a 10 bit che significa 2 ^ 10 stati che è 1024.
Il numero 0 (zero) indica una tensione di ingresso di 0 Volt.
Il numero 1023 indica il massimo tensione di ingresso.
Poiché anche 0 è un valore, la scala va da 0 a 1023, producendo 1024 valori.
La scala è lineare quindi 511 significa metà di quella tensione massima.
Qual è la tensione di ingresso massima?
Questa è la Tensione di riferimento ADC . Per impostazione predefinita viene utilizzata la tensione di alimentazione, quindi se esegui il tuo Arduino su 5 V, allora 1023 = 5 V. Ma se esegui il tuo Arduino su 3,3 V, allora 1023 = 3,3 V.
Cè anche nel riferimento interno di 2,56 V (o 1,1 V a seconda del tuo Arduino), se lo usi allora, hai indovinato, 1023 = 2,56 V (o 1,1 V).
Potresti avere un esterno molto stravagante tensione di riferimento già disponibile e se vuoi usarla, usa limpostazione esterna e collega quella tensione di riferimento al pin AREF.
Se il tuo sensore analogico fornisce da 0 a 5 V e anche il tuo Arduino è alimentato da 5 V allora dovresti usare limpostazione predefinita in modo che il VCC sia usato come riferimento ADC.
Se il tuo sensore fornisce una tensione tra 0 e 1 V, puoi usare il riferimento interno in modo che più dello 0 per La gamma 1023 è utilizzabile. Dandoti una risoluzione migliore.
Risposta
Il comportamento predefinito è che il riferimento analogico sia Vcc che su molti Arduino è 5V . In tal caso non collegare nulla ad AREF.
Tuttavia se hai un riferimento di tensione di precisione puoi collegarlo a AREF (e GND) e specifica nel tuo schizzo, prima di eseguire una lettura analogica :
analogReference (EXTERNAL);
Ho una pagina sul convertitore ADC che potrebbe aiutare a spiegare o potrebbe contenere troppi dettagli. 🙂
o anche se devo usarlo mentre collego il sensore analogico ad arduino
A meno che tu non abbia intenzione di utilizzare una tensione di riferimento diversa, non usarla affatto.
Per un Arduino da 5 V la tensione misurata con lAREF di default sarebbe allincirca 4,88 mV per unità di misura (es. 5V / 1024), ma più precisamente:
float voltage = ((float) rawADC + 0.5 ) / 1024.0 * Vref;
La tensione che fornisci a VREF (se ne fornisci all) deve essere compreso tra 1,0 V e Vcc, dove Vcc sarebbe 5 V per un Arduino Uno.
Commenti
- “ non collegare qualsiasi cosa ad AREF “e” [call
analogReference(EXTERNAL)
] prima di fare un analogRead “(amphasis mio). Questi sono molto importanti punti non menzionati nelle altre risposte. - Ho aggiunto lenfasi nella mia risposta nel caso fosse troppo blanda comera.;)
Risposta
Bene, penso che dovresti leggere prima il manuale prima di utilizzarlo (e forse anche frenarlo).
In generale, il riferimento analogico è un valore di tensione compreso tra 0,00 e 5,00 V, che verrà utilizzato come riferimento virtuale per tutti gli ingressi analogici, che colleghi al tuo scheda arduino.
Informazioni sui riferimenti analogici sono disponibili sul sito Arduino: https://www.arduino.cc/reference/en/language/functions/analog-io/analogreference/
Risposta
LAREF è un pin di ingresso della tensione di riferimento.
La tensione di riferimento è la tensione massima quando si misura il segnale analogico.
In altre parole, è possibile misurare la tensione 0V ~ AREF utilizzando la porta ADC.
Tieni presente che la tensione minima di AREF è 1.0V.