PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : AD Wandler am mega32



waxology
01.06.2007, 22:04
Hallo,

bin fast am verzweifeln versuche schon die ganze zeit über den ad-wandler werte einzulesen, aber bekomme nur mist!!!
habe schon sämtliche tutorials über den AD durchgelesen aber alles hat nicht geholfen.Habe auch schon mit verschiedenen µC getestet!!!
Jedenfalls am ende sollte es mit dem mega32 funktionieren:-)
Ausgangspunkt ist das ich eine Referenz von 5V benötige, am besten intern.
Zum testen habe ich eine Spannung von knapp 2,5V angelegt an ADC0 aber er gibt mir nur einen Wert von 1,2 -2,0 an und schwankt sehr.
Wie beschalte ich am besten die Ports AREF, AVCC, VCC und GND???
mein Programm zum test:


$regfile = "m32def.dat" ' we use the M163
$crystal = 8000000


Config Adc = Single , Prescaler = Auto , Reference = Avcc
Start Adc
Enable Adc

Dim W As Word , Channel As Byte , Hilf As Integer , Volt As Single
Channel = 0
Do
W = Getadc(channel)
Hilf = W * 5
Volt = Hilf / 1024
Print " Spannung: " ; Volt ; "V"
Print "Wert: " ; W
Waitms 500
Cls
Loop
End

Vielen Dank schonmal im vorraus:-)

zebrafalke
02.06.2007, 00:18
Ich habe 5 Messwerte kurz nacheinander genommen, und dann den Durchschnitt genommen, das stabilisiert die Werte stark. Ich arbeite mit externer Referenzspannung von 5V an AREF, AVCC wird auf VCC gelgt.

Gruß
zebrafalke

Hubert.G
02.06.2007, 11:55
AVCC sollte man wie im Datenblatt beschalten, an AREF einen C 100n nach GND, an VCC so nahe am IC wie möglich 100n nach GND. AREF im Prog auf AVCC legen.
Hubert

waxology
02.06.2007, 19:20
So jetzt bekomm ich nurnoch den wert 1023 angezeigt, kann es sein das der ADC kaputt ist???
Wie kann man das testen???

Hubert.G
02.06.2007, 19:33
Glaube nicht das der ADC kaputt ist, sieht eher nach fehlendem AREF aus. AVCC auf AREF gehört im Register ADMUX eingestellt.
Hubert