PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : AD Umwandlung



IceWave
30.11.2015, 10:09
Hi, wir behandeln das Thema gerade in der Schule.
Eigentlich hab ichs verstanden.
Nur habe ich jetzt im Internet dass hier gesehen:
Ustep = Uref/Auflösung
Ustep = 2,56 Volt / 1.024 (0 bis 1.023 = 1.024 Steps)
Ustep = 0,0025 Volt

Was ich jetzt noch nicht verstanden habe, mann muss doch durch 1023 teilen oder? Sonst kann man die 0 ja nicht darstellen.
Ist das richtig?

oberallgeier
30.11.2015, 11:58
Hallo, willkommen im Forum.


.. Eigentlich hab ichs verstanden .. Was ich jetzt noch nicht verstanden habe, mann muss doch durch 1023 teilen ..Wäre für solche Fragen nicht der Lehrer die erste und bessere Ansprechperson?

Ich glaube gelesen zu haben dass Du Dich mit PICs beschäftigt, aber das ist im Prinzip bzw. in diesem Punkt gleich mit den ATMELs. Daher hier mein Bezug auf die Dokumentation Atmel für mega1284 (http://www.atmel.com/images/Atmel-8272-8-bit-AVR-microcontroller-ATmega164A_PA-324A_PA-644A_PA-1284_P_datasheet.pdf). Der ADC dort kann - wie üblich bei den ATMEL-8-Bittern bestenfalls 1024 Schritt auflösen, d.h. er liefert nach der Wandlung Werte von 0 .. 1023 - - - das sind zusammen 1024 Werte. DAHER MUSS durch 1024 geteilt werden; 1024 Schritte - also 1024 Teile(r) !!

Dasselbe errechnet ATMEL, siehe Dokumentation m1284, obiger Link, Seite 247

For single ended conversion, the result is

..........VIN * 1024
ADC = ------------
............VREF

Zur Auflösung gibts auf Seite 246 der gleichen Dokumentation dann diesen Hinweis:

Quantization Error: Due to the quantization of the input voltage into a finite number of codes, a range of
input voltages (1LSB wide) will code to the same value. Always ±0.5LSB

Damit ist also in Deinem Beispiel (Ustep = 0,0025 Volt) alles unter 0,00125 Volt ziemlich sicher ne Null, alles drüber bis etwa 0,00375 eine Eins usf.

Ist das jetzt verständlich geworden ?

IceWave
30.11.2015, 12:16
Aber wenn man durch 1024 teilt wäre ja bei 8 Bits :
0000 0000 = 0,0025 Volt
0000 0001 = 0,0050 Volt
usw...

Die Frage die ich mir jetzt stelle, wie wird dann 0 Volt in Bit dargestellt?
Das geht ja nur wenn man für die 0 einfach 0000 0000 verwendet und somit durch 1023 teilt oder ?

Und Danke schonmal für die Antwort
MfG

Peter(TOO)
30.11.2015, 13:50
Hallo,

Aber wenn man durch 1024 teilt wäre ja bei 8 Bits :
0000 0000 = 0,0025 Volt
0000 0001 = 0,0050 Volt
usw...

Die Frage die ich mir jetzt stelle, wie wird dann 0 Volt in Bit dargestellt?
Das geht ja nur wenn man für die 0 einfach 0000 0000 verwendet und somit durch 1023 teilt oder ?

Ob du durch 2n oder 2n-1 Teilen musst, hängt von der Wandlerkonstruktion ab und das musst du im Datenblatt nachsehen.
Bei einem Vergleicher mit einem Spannungsteiler als Referenz, kann man bei 8-Bit 255 oder 256 Widerstände verwenden.

Ein ADC quantisiert die Spannung, du weisst also den genauen Wert gar nicht ;-)
Wenn also deine Schrittweite 2.5mV beträgt und du einen idealen Wandler hast:
0000 0000 = <1.25mV (0*2.5mv +/-1.25mV)
0000 0001 = 1.25-3.75mV (1*2.5mv +/-1.25mV)
0000 0010 = 3.75-6.25mV (2*2.5mv +/-1.25mV)
....

MfG Peter(TOO)

witkatz
30.11.2015, 14:49
Falls es sich wirklich um PICs handelt, es gibt eine recht anschauliche Erklärung in dem entspr. Family Reference Manual.
Der Verlauf der A/D Transfer Function zeigt grafisch, was Peter(TOO) beschrieben hat:
http://ww1.microchip.com/downloads/en/DeviceDoc/33023a.pdf#G25.1007705

Klebwax
30.11.2015, 20:19
Der Verlauf der A/D Transfer Function zeigt grafisch, was Peter(TOO) beschrieben hat:
http://ww1.microchip.com/downloads/en/DeviceDoc/33023a.pdf#G25.1007705
30952

Das Bild zeigt, daß halbe Bits nicht vorkommen. Wenn die Auflösung also 2,5mV ist, liefert eine Spannung zwischen 0mV und 2,49 mV 0, eine Spannung von 2,5mV und 4,99mV 1, usw. Ist auch irgendwie logisch, sonst wäre der Bereich für 0 als Ausgabewert halb so groß wie der für 1. Digitale Schaltungen runden typischerweise nicht, sondern schneiden einfach ab.

MfG Klebwax

PICture
30.11.2015, 20:51
Hallo!

@ IceWave

Vielleicht hilft es zu Verständniss: es ist wie bei Treppen -> es ist immer um eine Ebene mehr als gezählt. ;)