hvad er arduino adc reference?

Jeg bruger arduino for første gang og forstår ikke rigtig, hvad antager jeg at sætte i ADC-referencepinkoden … eller hvis jeg skal endda bruge det, mens du tilslutter den analoge sensor til arduinoen, tak!

Kommentarer

Svar

AD-konverteren i ATMega-mikrocontrolleren (som brugt i Arduino) konverterer en indgangsspænding til en nummer .

Denne ADC er tilfældigvis 10 bit, hvilket betyder 2 ^ 10 stater, hvilket er 1024.

Nummeret 0 (nul) betyder 0 Volt indgangsspænding.

Nummeret 1023 betyder maksimum indgangsspænding.

Da 0 også er en værdi, løber skalaen fra 0 til 1023, hvilket giver 1024 værdier.

Skalaen er lineær, så 511 betyder halvdelen af den maksimale spænding.

Hvad er denne maksimale indgangsspænding?

Det er ADC-reference spænding . Som standard bruges strømforsyningsspændingen, så hvis du kører din Arduino på 5 V, så er 1023 = 5 V. Men hvis du kører din Arduino på 3,3 V, så er 1023 = 3,3 V.

Der er også i intern reference på 2,56 V (eller 1,1 V afhængigt af din Arduino), hvis du bruger det, gættede du det, 1023 = 2,56 V (eller 1,1 V).

Du har muligvis en meget fancy ekstern allerede tilgængelig referencespænding, og hvis du vil bruge den, skal du bruge den eksterne indstilling og tilslutte denne referencespænding til AREF-stiften.

Hvis din analoge sensor giver 0 til 5 V, og din Arduino også får strøm fra 5 V, så skal du bruge standardindstillingen, så VCC bruges som ADC-reference.

Hvis din sensor giver en spænding mellem 0 og 1 V, kan du bruge den interne reference, så flere af 0 til 1023 rækkevidde kan bruges. Giver dig en bedre opløsning.

Svar

Standardadfærden er, at den analoge reference er Vcc, som på mange Arduinos er 5V . I så fald ikke forbinder noget til AREF.

Men hvis du har en præcisionsspændingsreference så kan du forbinde det til AREF (og GND) og angiv i din skitse inden du laver en analogLæs :

 analogReference (EXTERNAL); 

Jeg har en side om ADC-konverteren , som kan hjælpe med at forklare eller måske være for mange detaljer. 🙂


eller hvis jeg endda skal bruge det, mens jeg tilslutter den analoge sensor til arduinoen

Medmindre du planlægger at bruge en anden referencespænding, skal du slet ikke bruge den.

For en 5V Arduino ville spændingen målt med standard AREF omtrent være 4,88 mV pr. måleenhed (dvs. 5V / 1024), men mere præcist:

float voltage = ((float) rawADC + 0.5 ) / 1024.0 * Vref; 

Den spænding, du leverer til VREF (hvis du leverer nogen ved alle) skal være mellem 1.0V og Vcc, hvor Vcc ville være 5V for en Arduino Uno.

Kommentarer

  • ikke forbinder alt til AREF ”og“ [call analogReference(EXTERNAL)] før foretager en analogRead ”(fremhæver min). Disse er meget vigtige punkter, der ikke er nævnt i de andre svar.
  • Jeg tilføjede vægten i mit svar, hvis det var for mildt som det var.)

Svar

Nå, jeg synes, du skal først læse vejledningen før du bruger (og endda måske bremser det).

Generelt er analog reference en spændingsværdi mellem 0,00 og 5,00V, som vil blive brugt som virtuel reference for alle de analoge indgange, du forbinder til din arduino-kort.

Om analog reference findes på Arduino-websted: https://www.arduino.cc/reference/en/language/functions/analog-io/analogreference/

Svar

AREF er en referencespændingsindgangsstift.
Referencespændingen er maksimal spænding, når du måler det analoge signal.
Med andre ord kan du måle 0V ~ AREF-spænding ved hjælp af ADC-porten.

Vær opmærksom på, at AREFs minimumspænding er 1.0V.

Skriv et svar

Din e-mailadresse vil ikke blive publiceret. Krævede felter er markeret med *