Hallo,
ich bin gerade am planen für eine kleine "Spielerrei".
Ist mein erstes µC-Projekt. Bin also leider noch sehr unerfahren.
Die Basics würde ich sagen habe ich. Schaltungstechnisch bekomme ich es
auch hin. Nur die Software will nicht so richtig hinhauen. Hab einfach
keine richtige idee, wie ich dem Avr beibringe, was er machen soll!
Es ist nicht ganz einfach zu erklären. Hab auch nicht wirklich einen
passenden Betreff für das Thema gefunden...
Ich versuch einfach mal es zu erklären.
Also:
Es geht darum ich möchte mit diesem SD-MP3-Modul
http://www.mdfly.com/index.php?main_page=product_info&products_id=284
ein Art Jingle-Box bauen, wie sie elv früher mal im Angebot hatte.
Also, ca. 10 Taster, die ein Soundfile von der SD wiedergeben.
Muss auch keine Ports sparen, da der Controller nur dafür genutzt werden
wird...
Das ist ja noch kein alzugroßes Problem.
Im Titel hab ich es schon angedeutet:
Ich möchte die laufende Musikwiedergabe "pausieren" (sie darf im
Hintergrund aber ruhig weiterlaufen!!) lassen, sobald ein Taster für das
MP3 Modul betätigt wurde.
Dabei soll natürlich kein nervendes "plopp" geräusch entstehen...
Nach der Wiedergabe des Files soll das zuvor gespielte per softstart
einfach wieder anfangen zu spielen.
Also langsam wieder zur eingestellten Lautstärke zurückkehren.
Da wird also schon ein digitales Poti fällig. Am besten 2 unabhängig von
einander steuerbare, die auch getrennt "gemutet" werden können.
So einen chip fand ich dann im DS1802.
Die Taster zum Manuellen lauter/leiser machen verwende ich auch. (wie im
Datenblatt)
Was machen denn eigentlich die Pins "ZCEN" und "Cout"?
Leider weiss ich nicht, wie ich die Taster anschließe, dass (egal
welcher betättigt wird) die bisherige Wiedergabe gemutet wird und
gleichzeitig der SD-Player "scharf" gestellt wird.
Die Ansteuerung über SPI verstehe ich auch noch nicht so ganz!
Außerdem würde ich gerne wissen, wie ich das mit dem Softstart
hinbekomme, nachdem der SD-Player die Wiedergabe gestoppt hat.
Der Busy ausgang am Modul sollte eigentlich schon genügen (oder brauch
ich den fürs Timming bei der Kommunikation?)
Normal ist er High. Busy wird er dann low.
Wofür sind eigentlich die ganzen Pins bei diesem Modul? Pin 1-13 hat
keine beschiftung ist aber mit dem Controller verbunden!?
Bin ich mit diesem Lösungsweg überhaupt ansatzweise richtig?
Wie würdet ihr so was denn angehen?
Ich hoffe, meine Fragen sind nicht alzu blöd!
Ist wirklich mein erstes Projekt.
Von der Logik her verstehe ich, was wann passieren muss. Wie ich das
aber in meinen Quellcode schreibe, damit es der AVR auch versteht ist
mir momentan noch ein Rätsel.
Hallo-Welt-Ausgaben ect. waren da doch noch einfacher :D
Achja, was ich noch erwähnen sollte: Die Signale sind Mono (von nem
simplen OPV Summierer addiert)
Zuvor ist noch eine Quellenwahl mit Lautstärke-Regler. Irgendein
PGA-Chip, der max. 2VRMS ausgiebt. (weiss nicht, ob das relevant ist?!)
Abschließend will ich noch einen Equalizer einbauen.
Die Frage: Zwischen Lautstärke-Regler und dem jetzt geplanten oder nach
dem SD-Modul?
http://www.knollep.de/Hobbyelektronik/projekte/55/index.htm
Vielen Dank schonmal für eure Hilfe!
MfG,
Alex
> Ich möchte die laufende Musikwiedergabe "pausieren" (sie darf im> Hintergrund aber ruhig weiterlaufen!!)
Wenn das Modul die Musikwiedergabe und das Jingle machen soll, dann
geht dein Vorhaben nicht. Das Modul kann entweder eine Musikdatei oder
eine Jingledatei wiedergeben. Ich sehe auch keine Möglichkeit, dass das
Modul mitten in ein Audiofile einsteigt, um z.B. eine unterbrochene
Musikwiedergabe fortzusetzen. Bei dem Sparkfun-Modul ist das genauso.
Alex schrieb:> ich bin gerade am planen für eine kleine "Spielerrei".> Ist mein erstes µC-Projekt. Bin also leider noch sehr unerfahren.
Du hast dir anscheinend auch die 'Doku' für dein Modul nicht angesehen.
> Es geht darum ich möchte mit diesem SD-MP3-Modul> http://www.mdfly.com/index.php?main_page=product_info&products_id=284> ein Art Jingle-Box bauen, wie sie elv früher mal im Angebot hatte.
...
> Da wird also schon ein digitales Poti fällig.
Wozu?
Das Modul kann in der Lautstärke eingestellt werden. Hast du dir den
'Befehlssatz' deines Moduls nicht angesehen. Es versteht diese Befehle
* Zahl von 1 bis 199 spiele Stück n
* Volume + Lautstärke erhöhen
* Volume - Lautstärke verringern
* Play / Pause mit dem Abspielen beginnen, Pausieren
* Hold ..
* Resume ich schätze mal: aus einer Pause heraus
weiterspielen
* Stop mit dem Abspielen aufhören.
Ich würde mal sagen, das ist ein überschaubarer Befehlssatz. Nichts
kompliziertes. Alle Befehle sind 1 Byte Befehle, also auch kein
kompliziertes Protokoll.
> Außerdem würde ich gerne wissen, wie ich das mit dem Softstart> hinbekomme, nachdem der SD-Player die Wiedergabe gestoppt hat.
Den Player auf Play stellen und dann in Hunderstelsekunden Schritten die
Lautstärke sukzessive erhöhen.
> Wofür sind eigentlich die ganzen Pins bei diesem Modul? Pin 1-13 hat> keine beschiftung ist aber mit dem Controller verbunden!?
Die Pins sind höchst wahrscheinlich entweder Testpins oder aber sie
sollen einfach nur für Stabilität der Verbindung sorgen. Und der
SD-Karten Halter muss ja schliesslich auch noch irgendwo angeschlossen
werden.
> Bin ich mit diesem Lösungsweg überhaupt ansatzweise richtig?> Wie würdet ihr so was denn angehen?
Sound Modul
dazu passend einen kleinen Verstärker
µC-Platine
an diese ein paar Taster
Doch, doch, die Doku hab ich mir angeschaut!
Aber - wie schon mehrfach erwähnt - kann das Modul keine 2 sachen
gleichzeitig abspielen. Das muss es aber auch nicht!
Der Sound, der unterbrochen werden soll, kommt von einer anderen Quelle
(je nachdem, was gerade bei der Quellenwahl eingestellt ist)
Dieses File kann ich auch nicht ohne weiteres Pausieren lassen. Macht
aber - wie gesagt - nix, wenn es nicht genau an der Stelle weitergeht!
Die Befehle des Moduls kann ich aufgrund der Situation also nicht
nutzen..
Sind wir wieder beim digitalen Poti, oder?
Ich hoffe, jetzt ist klar, was ich wollte.
War wohl ein bisschen unglücklich formoliert!
Also fremde Quelle soll unterbrochen werden, während das MP3 Modul
spielt und am Ende der Wiedergabe soll dann die fremde Quelle wieder
"einspringen"
Wenn mein Weg so richtig ist, wie würdet ihr alles über den BUSY Pin des
Moduls machen?
Weiss leider nicht, ob der von Anfang bis zum Ende der Wiedergabe dann
low ist.
Was muss ich eigentlich über SPI senden, wenn ich z.B ein Mute beim
DS1802 auslösen will?
Und was muss ich mit dem Pin Zcen bzw. Cout anstellen?
Das Modul anzusprechen, dass es ein bestimmtes File bekomm ich sicher
hin!
Fehlt eben der automatische Teil.
Gruß Alex
Alex schrieb:> Sind wir wieder beim digitalen Poti, oder?> Ich hoffe, jetzt ist klar, was ich wollte.> War wohl ein bisschen unglücklich formoliert!>>> Also fremde Quelle soll unterbrochen werden,
Ah. Da gibt es auch noch eine andere Quelle!
Ja, das muss einem gesagt werden.
> Sind wir wieder beim digitalen Poti, oder?
Hast du schon mal nach Vorverstärker-ICs gesucht, die mehrere Eingänge
haben?
Karl Heinz Buchegger schrieb:> Hast du schon mal nach Vorverstärker-ICs gesucht, die mehrere Eingänge> haben?
Das ist jetzt der erste der mir 'in die Hände gefallen ist'. Die
Audio-Profis hier kennen sicherlich auch noch andere oder bessere IC.
Bei Reichelt gibt es zb den TDA7439
4 Stereo-Eingänge, Lautstärkeregelung, Bass-Mitte-Höhe Regler, steuerbar
über I2C, und das ganze um 2 Euro.
Danke für den Tipp!
Ist grundsätzlich eine super Idee.
Hab zwar nur 2 mono Kanäle. Ist zwar egal, aber man kann sich so
schonmal einiges an Platz auf der Platine sparen.
Ich muss auch ehrlich sagen, dass ich mit der Ansteuerung überfordert
wäre.
Equalizer brauche ich eigentlich auch keinen, da ich den 10 Band vom
Link oben verwenden würde. So hat man mehr Kontrolle.
Wobei eine lowcut Funktion sehr nett wäre!
Naja, leider komm ich mit der Ansteuerung nicht klar...
Das mit der clock-Leitung verwirrt mich irgendwie total!
Ich werd jetzt mal noch bisschen lesen und dann mal sehen!
Gruß alex
So, werde mir das Modul morgen erst mal bestellen.
Hab mich mal ein bisschen in I2C eingelesen - bekomm ich mit ein wenig
Hilfe und ein klein wenig Zeit schon hin!
Zur Not probier ich halt ein wenig rum.
Durch falsche Befehle kann ich beim modul ja nichts kaputt machen, oder?
Fals jemand auch so ein Modul haben möchte, kann ich es gerne
mitbestellen.
Vielleicht sucht ja jemand gerade so etwas ähnliches!
Gruß Alex
So, Modul ist nun da!
Als Lautstärke IC hab ich mir jetzt den PGA2311 besorgt.
Die Frage ist nun, ob ich Ein- und Ausgangsseitig noch einen
Impedanzwandler brauche?
Vor dem Pga, der das automatische "ein - ausfaden" übernehmen soll,
liegt ebenfals ein PGA, der zuvor als lautstärkeregelung bzw.
Quellenwahl betrieben wird.
Schaltplan siehe hier:
http://sites.google.com/site/picplayer/VolCon.pdf?attredirects=0
Ist nicht mein Projekt! Lediglich nachgebaut wurde es. Funktioniert auch
super. Echt empfehlenswert!
Der zweite PGA wird wohl max. mit Verstärkung 1 gefahren bzw. schwächt
das eingangssignal ab, um es anschließend langsam bis V=1 hochzufahren.
Die Software sollte ich hinbekommen allerdings stellt sich mir die Frage
nach der Beschaltung!
Gruß Alex