Forum: Mikrocontroller und Digitale Elektronik STK500 - Analog-Setup für Line-In-Adapter


von Kai G. (runtimeterror)


Angehängte Dateien:

Lesenswert?

Tach!

Ich bin gerade dabei mir ein Line-In-Adapter für das STK500 zu basteln. 
Die generelle Beschaltung habe ich einem Beitrag hier im Forum entnommen 
(siehe Anhang). Es geht nur um den oberen Teil für die ADC-Beschaltung.

Meine Frage ist jetzt welche von den Komponenten aufgrund der 
bestehenden STK500-Beschaltung eingespart werden können/sollen.

- Da meines Wissens nach AGND nicht rausgeführt wird, muss ich mich um 
dessen Beschaltung wahrscheinlich auch nicht kümmern.

- AREF wollte ich einfach per 'AREF'-Jumper vom Board mit 5V füttern 
lassen. Im Originalschema ist wahrscheinlich AVCC als AREF per 
ADC-Einstellung vorgesehen, richtig?

- Ist C2 auf dem Eval-Board bereits drauf?? Habe die Info nicht im 
Handbuch gefunden. Falls nicht würde ich den mit 100 nF ansetzen.

- C1 und C3 übernehmen ja etwa dieselbe Aufgabe und sind wahrscheinlich 
auf dem Board schon drauf.

Die Schaltung soll mit Vcc = 5 V betrieben werden.

Line-In ist nicht ganz korrekt - das ganze wird an Speaker-Out 
angeklemmt. Der Line-In-Pegel reicht ja angeblich nicht. Oder bringt es 
was R1 kleiner zu machen oder die GAIN-Optionen im Controller? ... lese 
den Teil gerade nochmal durch.

Versuchskaninchen wird ein ATmega16.

Danke für eure Ünterstützung!

von Unbekannter (Gast)


Lesenswert?

> Oder bringt es was R1 kleiner zu machen oder die
> GAIN-Optionen im Controller?

Nein.

R1 bilden mit C1 und mit C4 einmal einen Hochpass und einen Tiefpass. 
übrigens je nach dem was Du machen willst mit einem nicht so dollen 
Frequenzbereich (s.u.).

Über R2 und R3 wird der ADC-Eingang auf AVCC/2, also 2,5 Volt 
vorgespannt. Wenn also kein Signal anliegt, bringt der ADC immer den 
Wert 512.

Das Audio-Signal wird wechselspannungsgekoppelt. Die -3db-Punkte für den 
Tiefpass und den Hochpass liegen bei etwa  340 Hz und 22 kHz.

von Kai G. (runtimeterror)


Lesenswert?

Danke für die Rückmeldung.

>Das Audio-Signal wird wechselspannungsgekoppelt. Die -3db-Punkte für den
>Tiefpass und den Hochpass liegen bei etwa  340 Hz und 22 kHz.

Stimmt, das ist echt nicht wirklich optimal. 30 Hz - 15 kHz wären mir 
lieber. Mir fehlt allerdings im Moment der Background um das konkret 
durchzurechnen.

Die Frage ist jetzt natürlich immer noch, ob C1 auf dem STK500 verbaut 
ist und welche Größe der hat - ich schau mal, ob Atmel die Schaltung 
offen gelegt hat...

Muss auch nochmal schauen, was mit dem ATmega16 für eine 
Abtastgeschwindigkeit bei 256 Stufen (sofern das einen Unterschied 
macht) maximal drin wäre. Wenn das zu niedrig ist, muss ich die 
Grenzfrequenz des Tiefpasses dringend senken.

Mist, ich dachte einfach löten und gut :(

von mehrfacher STK500-Besitzer (Gast)


Lesenswert?

>Die Frage ist jetzt natürlich immer noch, ob C1 auf dem STK500 verbaut
>ist und welche Größe der hat
>- ich schau mal, ob Atmel die Schaltung offen gelegt hat...

Haben sie. Die Pläne findet man in der AVRStudio-Hilfe.
Wo genau, weiß ich gerade nicht (vermutlich bei den 
STK500-Unterlagen...)

von Michael U. (amiga)


Lesenswert?

Hallo,

dann vergrößere C4 eben auf 1µF und C5 auf 2,2n (nicht gerechnet, nur 
geschätzt...).

Denke daran, die Samplerate muß! mindestens das doppelte der höchsten im 
Signal vorkommenden Frequenz haben, bei 15kHz also mindestens 30kHz.

Sonst gibt es nette Alaising-Effekte, die garnicht schön klingen.

Neugierige Frage: was hast Du damit vor?

Gruß aus Berlin
Michael

von Kai G. (runtimeterror)


Lesenswert?

>dann vergrößere C4 eben auf 1µF und C5 auf 2,2n (nicht gerechnet, nur
>geschätzt...).

Ich glaube, ich löte den Kram einfach mal und lasse mir die Amplituden 
verschiedener Frequenzen ausgeben - darüber sollte sich die 
Übertragungsfunktion ja recht einfach ableiten lassen. Je nachdem, wie 
groß die Einbrüche sind kann ich die im Programm kompensieren. 
Spiegelfrequenzen sind natürlich ein Problem.

>Denke daran, die Samplerate muß! mindestens das doppelte der höchsten im
>Signal vorkommenden Frequenz haben, bei 15kHz also mindestens 30kHz.

Weiß ich doch ;)

>Neugierige Frage: was hast Du damit vor?

Och, das übliche: FFT, Resonanztests, Spectrum-Analyzer, 
Frequenzmessung, Stimmerkennung, Echo, Pitch-Shifter, Lichtorgel, 
BPM-Counter ... einfach schauen, was man da alles rausholen kann.

Gibt eigentlich keine konkreten Pläne damit, aber ich mag es, wenn etwas 
zur Musik blinkt - erinnert mich an meine DOS-Zeiten in Assembler - die 
meisten Anwendungen werden reine Spielerei.

von Kai G. (runtimeterror)


Lesenswert?

>R1 bilden mit C1 und mit C4 einmal einen Hochpass und einen Tiefpass.

Hmmm... R1 + C4 erkenne ich auch als Hochpass, aber C1 ist für mich nur 
die Glättung der Versorgungsspannung. Ist nicht C5 der Tiefpass - wie 
auch von Michael angedeutet?

Die Auswirkungen von R1 kann ich mir leider nicht herleiten.

Ich habe leider keine Schaltpläne von Atmel gefunden. Denke mal, dass 
ich mich um C1 nicht kümmern muss und C2 wird notfalls einfach nochmal 
drangeklemmt, wenn ich dazu keine Info finde - doppelt hält besser ;)

>Haben sie. Die Pläne findet man in der AVRStudio-Hilfe.
>Wo genau, weiß ich gerade nicht (vermutlich bei den
>STK500-Unterlagen...)

Leider keine gefunden. In der Hilfe ist auch nur der Inhalt des 
Handbuchs aufgeführt (mit miserablen Grafiken). Suche nach "schematics" 
liefert ein paar Schaltpläne zu Tage, aber alle nicht vom STK500 :(
Trotzdem danke.

von spess53 (Gast)


Angehängte Dateien:

Lesenswert?

Hi

Siehe Anhang.

MfG Spess

von Kai G. (runtimeterror)


Lesenswert?

Super, danke dir!

Bin ich zu blöd zum suchen, oder kommt man da nicht ohne Weiteres dran?

von Kai G. (runtimeterror)


Lesenswert?

Ok, AREF ist demnach immer mit 2x 10 nF gegen Ground geschaltet. Wenn 
man den ACVV-Jumper (JP601) setzt (was ich ja vorhabe), kommen nochmal 1 
µF dazu.

AVCC geht immer mit 3x 100 nF und 1x 10 µF gegen Ground.

Mit anderen Worten, ich kann C2 und C1 in meiner Beschaltung getrost 
weglassen.

Randfrage: Warum schaltet man eigentlich mehrere Kondensatoren parallel 
(um den Kapazitätsgewinn geht's ja anscheinend nicht)? Geringerer 
Innenwiderstand, höhere Ströme?

Danke schonmal an alle!

von Michael U. (amiga)


Lesenswert?

Hallo,

Serieninduktivität, Eigenresonanz zwischen C und Serieninduktivitär usw.

Elkos sind für Impulse im ns-Bereich zu langsam, für niederfrequente 
Belastungen (blinkende LED als Beispiel) sind die Elkos dann besser.

Bin gespannt, was Du aus dem armen Mega8 so rauskitzelst. :-)

Gruß aus Berlin
Michael

von Kai G. (runtimeterror)


Lesenswert?

>Bin gespannt, was Du aus dem armen Mega8 so rauskitzelst. :-)

Ich auch!

von Unbekannter (Gast)


Lesenswert?

> Hmmm... R1 + C4 erkenne ich auch als Hochpass, aber C1 ist für mich
> nur die Glättung der Versorgungsspannung. Ist nicht C5 der Tiefpass
> - wie auch von Michael angedeutet?

Natürlich. Ganz offensichtlich ein Tippfehler.

Also:

  R1 + C4 = Hochpass
  R1 + C5 = Tiefpass


> Die Auswirkungen von R1 kann ich mir leider nicht herleiten.

Ist nicht weiter kompliziert.

R3 und R2 (jeweils 470k) bilden einen Spannungsteiler mit 2,5 Volt 
Ausgangsspannung und 235 Kiloohm Innenwiderstand.

R1 bildet mit diesem Spannungsteilerinnenwiderstand wiederum einen neuen 
Spannungsteiler, so dass der ADC-Eingang nur ein abgeschwächtes 
Nutzsignal sieht. Allerdings ist diese Abschwächung klein, nämlich nur 
rund 2% ( 4,7k/(235k+4,7k) ).

Bleibt nur noch die Frage offen, wie sich der Eingangswiderstand für zu 
tiefe oder zu hohe Frequenzen verhält. Auch das ist einfach:

Zu tiefe Frequenzen werden von C4 nicht durchgelassen, also geht der 
DC-Eingangswiderstand gegen unendlich.

Zu hohe Frequenzen werden über C4, R1 und C5 nach Masse abgeleitet, also 
geht der HF-Eingangswiderstand gegen 4,7 Kiloohm (der Wert von R1). Das 
ist logisch, denn für (ausreichend) hohe Frequenzen sind die 
Kondensatoren C4 und C5 praktisch wie Drahtbrücken.


> Mir fehlt allerdings im Moment der Background um
> das konkret durchzurechnen.

Auch ganz einfach. Den -3dB-Punkt eines RC-Gliedes (Tiefpass wie 
Hochpass) berechnet sich nach:

   fg = 1 / (2  pi  R * C)

Das heisst aber nicht, dass ab diesem Punkt alle zu hohen oder zu tiefen 
Frequenzen weggefiltert werden, sondern nur, dass die Abschwächung ab 
diesem Punkt etwa 20dB pro Dekade zu nimmt.

Konkret:

  R = 4,7kOhm   C = 1,5nF

  fg = 1 / (2  pi  4,7kOhm * 1,5nF) = 22,5 kHz

Das ergibt für:

  22,5 kHz  -->  -3 db   =  0,71
  225 kHz   -->  -20 db  =  0,10
  2,25 MHz  -->  -40 db  =  0,01

usw.

von Kai G. (runtimeterror)


Lesenswert?

Danke dir für die ausführliche Darstellung! Ich werd' das nochmal mit 
meinen Wunschwerten durchrechnen. Rumprobieren kann ich danach ja immer 
noch ;)

von Kai G. (runtimeterror)


Lesenswert?

Noch eine einfache Frage zu den RC-Gliedern: ist es egal, ob ich R oder 
C verändere um die Trennfrequenz zu anzupassen? Also ist 100 nF mit 2 
kOhm dasselbe wie 200 nF mit 1 kOhm? (fiktive Werte) Oder hat das 
irgendwelche Seiteneffekte?

Dass sich in der obigen Schaltung auch die Trennfrequenz des jeweils 
anderen RC-Gliedes ändert ist klar.

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.