AVR Probleme mit externe Referenzspannung für ADC

Gast #2923210
Lesenswert?

Hallo zusammen,

ich habe Probleme mit der externen Referenzspannung für die Verwendung 
des ADC von einem AT90CAN. Zur Referenzspannungserzeugung verwende ich 
einen REF1004-2.5; also 2,5V als Referenzspannung. 
(http://www.ti.com/lit/ds/symlink/ref1004-2.5.pdf)

Den gleichen Baustein habe ich schon als Referenz für externe ADCs 
verwendet. Das funktioniert also soweit.

Die 2,5V habe ich andem µC an Aref angelegt. Weiter wird die 
Referenzspannung über drei Potis, jemweils 10k Ohm, an drei ADC-Ports 
des Controllers gelegt.

Nun habe ich das Problem, dass die Referenzspannung nicht stimmt. Diese 
liegt bei unter 0,4 V, konstant. Der Controller macht sonst, was er 
soll. Die Schaltung scheint auch nicht mehr Strom zu verbrauchen, als 
sie sollte.

Hat jemand eine Idee, woran das liegen könnte?

Vielleicht noch ein Ausschnitt aus dem Code für den ADC:
1
DDRF &= ~(1<<PF1)|~(1<<PF2)|~(1<<PF3); // ADC Ports
2
ADMUX  &= ~((1<<REFS1)|(1<<REFS0)) // ext. Ref.
3
ADMUX  &= ~(1<<ADLAR)              // right adjust
4
ADCSRA &= ~(0x07<<ADPS0)           // Prescaler
5
DIDR0 = (1<<ADC1D)|(1<<ADC2D)|(1<<ADC3D);
6

7
(ADCSRA |=  (1<<ADEN))             // Enable ADC

Beste Grüße
Persönliche Seite #2923229
Lesenswert?

Sven schrieb:
> des ADC von einem AT90CAN. Zur Referenzspannungserzeugung verwende ich
> einen REF1004-2.5; also 2,5V als Referenzspannung.
> (http://www.ti.com/lit/ds/symlink/ref1004-2.5.pdf)

Wie groß ist der Pullup an der Kathode des REF1004?

> Den gleichen Baustein habe ich schon als Referenz für externe ADCs
> verwendet.

Grückwunsch.

> Das funktioniert also soweit.

Bei deinen bisherigen Anwendungen mag es funktionieren.

> Die 2,5V habe ich andem µC an Aref angelegt. Weiter wird die
> Referenzspannung über drei Potis, jemweils 10k Ohm, an drei ADC-Ports
> des Controllers gelegt.

Wie wäre es damit, die Referenzspannung vorher über einen 
Transimpedanzverstärker zu jagen?

> Nun habe ich das Problem, dass die Referenzspannung nicht stimmt. Diese
> liegt bei unter 0,4 V, konstant.

Und was ist, wenn du die Potis von AREF trennst?
Gast #2923311
Lesenswert?

@ Magnus M.:

> Wie groß ist der Pullup an der Kathode des REF1004?

51k

> Und was ist, wenn du die Potis von AREF trennst?

Zugegebenermaßen noch nicht getestet, weil ist erst einmal nicht dran 
rum löten oder Leiterbahnen unterbrechen wollte.


Magnus M. schrieb:
>> ADMUX  &= ~((1<<REFS1)|(1<<REFS0)) // ext. Ref.
>> ADMUX  &= ~(1<<ADLAR)              // right adjust
>
> Dir ist schon klar, dass das Register nach einem Reset mit "0" hoch
> kommt?
>
>> ADCSRA &= ~(0x07<<ADPS0)           // Prescaler
>
> Auch dieses Register ist jungfräulich auf "0".

OK, deswegen wird das Ganze doch gesetzt. Stehe da jetzt irgendwie auf 
der Leitung. Der Code kommt nach den Portinitialisierungen usw. die halt 
am Anfang des Programms stehen. Somit werden die Grundeinstellungen des 
ADC doch ziemlich zu Anfang gesetzt.

Magnus M. schrieb:
>> (ADCSRA |=  (1<<ADEN))             // Enable ADC
>
> Meckert da dein Compiler nicht?

Sorry, falsch übertragen, da steht natürlich  ADCSRA |=  (1<<ADEN)

Beste Grüße
Persönliche Seite #2923336
Lesenswert?

Sven schrieb:
> @ Magnus M.:
>
>> Wie groß ist der Pullup an der Kathode des REF1004?
>
> 51k

Soderla... wir lassen mal den REF1004 aussen vor und betrachten nur den 
Spannungsteiler aus 51k und 3,333k (3x 10k parallel):

+5V O----+
         |
        +++
        | |
        | | 51k
        | |
        +++
         |
         +--------------O VREF
         |
        +++
        | |
        | | 3k333
        | |
        +++
         |
GND O----+--------------O


Aus diesem Spannungsteiler kommt selbst ohne Last nur 0,3V raus.

Das kann also nicht funktionieren !
Gast #2923471
Lesenswert?

Magnus M. schrieb:
> Soderla... wir lassen mal den REF1004 aussen vor und betrachten nur den
> Spannungsteiler aus 51k und 3,333k (3x 10k parallel):
>
> +5V O----+
>          |
>         +++
>         | |
>         | | 51k
>         | |
>         +++
>          |
>          +--------------O VREF
>          |
>         +++
>         | |
>         | | 3k333
>         | |
>         +++
>          |
> GND O----+--------------O
>
>
> Aus diesem Spannungsteiler kommt selbst ohne Last nur 0,3V raus.
>
> Das kann also nicht funktionieren !

Ok, das mit dem Spannungsteiler hatte ich natürlich nicht bedacht und 
das mit den 0,3V kann sehr gut hinkommen. Es sind gemssen acuh wischen 
0,3 und 0,3V.

Bis hierher erst einmal vielen Dank für die Hilfe! Ich werde mal eine 
nacht drüber schlafen und mir dan dann mit dne Hinweisen hinweisen hier 
nochmal genau anschauen!

Vielen dank bis hierhin. Ich werde berichten!

Beste Grüße

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren