Forum: Analoge Elektronik und Schaltungstechnik ADC test differentiell


von D.I (Gast)


Lesenswert?

Hallo

Wenn ich einen ADC implementiert habe bei dem STM32L476 Nucleo Board mit 
DMA. Wie kann ich ueberpruefen, ob dieser richtig funktioniert? Ich habe 
den ADC als differentiellen Eingang. Sprich wie sieht die Schaltung aus?

Danke

von Waldemar Z. (waldemar_z)


Lesenswert?

> Wie kann ich ueberpruefen, ob dieser richtig funktioniert?

1. Durch Debugging
2. In dem du die Messwerte auf ein Display ausgibst

von D.I (Gast)


Lesenswert?

Ich habe keinen Display. Geht das irgendwie NUR mit Debugging?
Ich muss doch irgend welche Werte zum Wandeln simulieren, wie mache ich 
das?

von Waldemar Z. (waldemar_z)


Lesenswert?

Welche IDE verwendest du?

Debugging mit Eclipse:
http://stm32discovery.nano-age.co.uk/open-source-development-with-the-stm32-discovery/getting-hardware-debuging-working-with-eclipse-and-code-sourcey

Was willst du denn simulieren?
Ich denke, du willst ein reales Signal messen?

: Bearbeitet durch User
von D.I (Gast)


Lesenswert?

habe keil.  nein ich will einfach ueberpruefen ob der adc korrekt 
umwandelt und der wert auch richtig im speicher uber dma landet und 
spaeter ausgelesen wird vom speicher.

von Waldemar Z. (waldemar_z39)


Lesenswert?

> nein ich will einfach ueberpruefen ob der adc korrekt umwandelt und der wert 
auch richtig im speicher uber dma landet

Und um das zu überprüfen, brauchst du ein abtastbares Signal am 
ADC-Eingang. Wie willst du es sonst überprüfen?

von D.I (Gast)


Lesenswert?

ja stimmt. ich brauch ein reales signal. aber wie generiere ich ein 
differentielles signal, das ich messen kann?

von Hartmut D. (Gast)


Lesenswert?

D.I schrieb:
> aber wie generiere ich ein
> differentielles signal, das ich messen kann?

Signalgenerator vielleicht???

von Wolfgang (Gast)


Lesenswert?

D.I schrieb:
> nein ich will einfach ueberpruefen ob der adc korrekt
> umwandelt und der wert auch richtig im speicher uber dma landet und
> spaeter ausgelesen wird vom speicher.

Dann gib ein sauberes Sinussignal rein und gucke dir per FFT das 
Spektrum des im Speicher abgelegten Signals an.

von D.I (Gast)


Lesenswert?

Wolfgang schrieb:
> D.I schrieb:
> nein ich will einfach ueberpruefen ob der adc korrekt
> umwandelt und der wert auch richtig im speicher uber dma landet und
> spaeter ausgelesen wird vom speicher.
>
> Dann gib ein sauberes Sinussignal rein und gucke dir per FFT das
> Spektrum des im Speicher abgelegten Signals an.

wie meinst du das genau mit dem fft? was bringt mir das?

von fft (Gast)


Lesenswert?

D.I schrieb:
> wie meinst du das genau mit dem fft? was bringt mir das?

Wenn du schon so fragst: dir nichts. Einem Fachmann ziemlich viel.

von Mario EDUARDO (Gast)


Lesenswert?

Ganz hab ich noch nicht verstanden was du genau testen willst.
Möchtest du wissen, ob dein Programm den AD Wandler richtig bedient und 
die Werte dort landen wo du es erwartest oder möchtest du eine 
definierte, bekannte Spannung am Eingang des Wandlers anlegen und sehen, 
was der Wandler abliefert.

Im Fall 1 hilft eine JTAGICE, eine serielle Schnittstelle, ein LCD usw.

Im Fall 2 hab ich einen REF192 oder REF195 mit einer alten 9V Batterie 
und 0.01% Widerständen von MOUSER einen Spannungsteiler am Ausgang mit 
z.B. 10K, 100R, 10R (ich weiß, ein wenig übertrieben da so eine 
Genauigkeit eine ebenso präzise Platine benötigt, die ich aber nicht 
habe), ich habe damit 3 Spannungen zur Verfügung, messe mit einem FLUKE 
nach was da anliegt und sehe dann, was der Wandler mißt. Der Vorteil 
dieser Version ist u.a. die Potentialfreiheit der Referenzspannung.

Mario

von Frank (Gast)


Lesenswert?

Ich würde auch einen Sinus o.ä. drauf geben.
Wenn der DMA den Speicher voll geschaufelt hat, stoppst du den Debugger, 
liest den Speicher aus und siehst dir die Daten in Excel oder ich 
bevorzuge Octave/Matlab an.
Einmal im Zeitbereich (da sieht man je nach dem auch schon ob was schief 
gelaufen ist).
Oder auch noch im Frequenzbereich, das sind dann auch nur noch 10 Zeilen 
mehr im Skript.

von Wolfgang (Gast)


Lesenswert?

D.I schrieb:
> wie meinst du das genau mit dem fft? was bringt mir das?

Die Abweichungen des im Speicher abgelegten Signals von einem idealen 
Sinussignal siehst du direkt im Spektrum als Oberwellen und 
Grundrauschen.

http://www.analog.com/media/en/training-seminars/tutorials/MT-003.pdf

von Achim S. (Gast)


Lesenswert?

D.I schrieb:
> ja stimmt. ich brauch ein reales signal. aber wie generiere ich ein
> differentielles signal, das ich messen kann?

Bau drei Widerstände als Teilerkette zwischen VCC und GND.

Berechne die Widerstände so, dass am mittleren die Spannung deiner Wahl 
abfällt.

Konktrolliere mit einem Multimeter, dass du richtig gerechnet und 
gelötet hast.

Nutze den Spannungsabfall des mittleren Widerstands als differentielles 
Eingangssignal für deinen ADC.

Für die simpelst-mögliche Funktionskontrolle sollte das reichen.

von D.I (Gast)


Lesenswert?

Hallo zusammen

danke fuer die vielen Antworten
danke an Achim S, Wolfgang mit dem hilfreichen Link, Frank und Mario 
Eduardo. ? Ich werde mal was probieren und auf euch nochmals zukommen.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.