L
loocasm
Guest
Shel kammerat, kan en fyr gøre flapo213 "kompliceret", men meget nøje, selv eksemplarisk.Forberedt på denne måde de funktioner kan anvendes for evigt, vil du kun bruge ADC i Atmedze.
Hvis du ikke ønsker, at analysere alle de funktioner, kan du indstille funktionen AD konverter i nogle få linjer selv.
Generelt, er idéen at første sæt den relevante registreringsdatabasenøgle ADMUX, så registrer ADCSRA ved slutningen og sæt den smule der er ansvarlig for starten på konverteren.Dette er, hvad du har brug for i disse to sæt registre afhænger af, hvad du har brug for.Alt er efter min mening meget tydeligt beskrevet i datasheecie.
Eksempel:
Kode:
ADMUX | = _BV (REFS1);
ADMUX | = _BV (REFS0) / Vref Ext.
2,56 V
ADMUX | = _BV (ADLAR) / / tilpasning resultater til venstre (for at arbejde 8-bit)ADCSRA | = _BV (ADFR) / / free running
ADCSRA | = _BV (ADPS0) / preskaler 2 (hurtigste behandling AD)ADCSRA | = _BV (ADEN); / / tilladelse konverteringerADCSRA | = _BV (ADSC), / / starter behandling/ / Hvad er lavere - allerede i selve løkken
if (bit_is_set (ADCSRA, ADIF))
(resultat = ADCH
/ / læse værdier fra transduceren
Hvis du ikke ønsker, at analysere alle de funktioner, kan du indstille funktionen AD konverter i nogle få linjer selv.
Generelt, er idéen at første sæt den relevante registreringsdatabasenøgle ADMUX, så registrer ADCSRA ved slutningen og sæt den smule der er ansvarlig for starten på konverteren.Dette er, hvad du har brug for i disse to sæt registre afhænger af, hvad du har brug for.Alt er efter min mening meget tydeligt beskrevet i datasheecie.
Eksempel:
Kode:
ADMUX | = _BV (REFS1);
ADMUX | = _BV (REFS0) / Vref Ext.
2,56 V
ADMUX | = _BV (ADLAR) / / tilpasning resultater til venstre (for at arbejde 8-bit)ADCSRA | = _BV (ADFR) / / free running
ADCSRA | = _BV (ADPS0) / preskaler 2 (hurtigste behandling AD)ADCSRA | = _BV (ADEN); / / tilladelse konverteringerADCSRA | = _BV (ADSC), / / starter behandling/ / Hvad er lavere - allerede i selve løkken
if (bit_is_set (ADCSRA, ADIF))
(resultat = ADCH