Hallo, ich möchte für meinen Arduino ein bisschen soundausgabe haben, und hab dafür das wave shield von adafruit gefunden, da ich aber nicht alles brauche dachte ich mir kopiere ich einfach den teil den ich benötige Das ist das Waveshield: http://www.ladyada.net/images/wavshield/v11/wave11schem.png Meine Frage: Wie kann ich den Lautstärkeregler (TM1POT rechts oben, direkt über Volume) ersetzen so das ich die Lautstärke per software steuern kann?
Per Software: Du gibts auf den DAC per Software aus - ergo ... bestimmst Du doch per Software die Lautstärke.
Ich würd's aber nicht machen, denn der DAC hat nur 12 Bits, was für Musikwiedergabe schon suboptimal ist. Wenn Du nun die Lautstärke z.B. auf 1/10 reduzieren willst, bleiben nur noch 8 Bits übrig. Wie das klingt, kannst Du Dir sicher denken.
Stefan schrieb: > Ich würd's aber nicht machen, denn der DAC hat nur 12 Bits, was für > Musikwiedergabe schon suboptimal ist. Wenn Du nun die Lautstärke z.B. > auf 1/10 reduzieren willst, bleiben nur noch 8 Bits übrig. Wie das > klingt, kannst Du Dir sicher denken. Im Prinzip ja. Allerdings würd ich von so einem µC sowieso keine Hi-Fi Klänge erwarten. Und für ein paar Signaltöne tut es das allemal.
Naja, es soll ein Wecker werden, umso nerviger umso besser ;) Wichtig ist nur dass ich die Lautstärke sanft starten lassen kann um am ende richtig Laut zu werden... Was ich jetzt nur nicht so ganz verstehe. Die Dateien kommen von einer SD-Karte, und werden über SPI an den Chip übertragen. Schaff ich es, da dazwischen zufummeln und die Lautstärke zu verändern? Wäre es nicht besser den Poti mit einem Transistor zu ersetzen den ich über einen Pin vom arduino steuer?
Peter K. schrieb: > Wäre es nicht besser den Poti mit einem Transistor zu ersetzen den ich > über einen Pin vom arduino steuer? So einfach geht das nicht. Du könntest beispielsweise mit PWM eine grüne LED steuern. Diese beleuchtet dann einen Fotowiderrstand un mit dem baust Du einen Spannungsteiler für Audio. Gruss Harald
Peter K. schrieb: > Was ich jetzt nur nicht so ganz verstehe. Die Dateien kommen von einer > SD-Karte, und werden über SPI an den Chip übertragen. Das geht ja nicht per Hardware, sondern da ist eine Software am werkeln, die die Übertragung macht. > Schaff ich es, da > dazwischen zufummeln und die Lautstärke zu verändern? Eine Lautstärkenänderung ist nichts anderes als die Multiplikation mit einer Konstanten im Bereich 0 bis 1. D.h. jedes Byte, ehe es an den DAC ausgegeben wird, wird mit einer Zahl mutlipliziert. (ok, in der Realität ist es ein wenig komplizierter, aber im Grunde läuft es darauf hinaus) > Wäre es nicht besser den Poti mit einem Transistor zu ersetzen den ich > über einen Pin vom arduino steuer? Wenn du mit der Sound-Qualität leben kannst, ist eine reine Software-Lösung die einfachste Lösung. TRansistor ist nicht so einfach. Denn du brauchst ja einen veränderbaren Widerstand. Wenn schon dann ein Digital-Poti. Die kosten allerdings wieder Geld.
Karl Heinz Buchegger schrieb: > Peter K. schrieb: >> Wäre es nicht besser den Poti mit einem Transistor zu ersetzen den ich >> über einen Pin vom arduino steuer? > > Wenn du mit der Sound-Qualität leben kannst, ist eine reine > Software-Lösung die einfachste Lösung. TRansistor ist nicht so einfach. > Denn du brauchst ja einen veränderbaren Widerstand. Wenn schon dann ein > Digital-Poti. Die kosten allerdings wieder Geld. kosten Geld? Von wieviel reden wir? ein paar Euro würde ich da schon investieren wenn das die bessere Lösung ist. Was für einer wäre da geeignet?
Peter K. schrieb: > Karl Heinz Buchegger schrieb: >> Peter K. schrieb: >>> Wäre es nicht besser den Poti mit einem Transistor zu ersetzen den ich >>> über einen Pin vom arduino steuer? >> >> Wenn du mit der Sound-Qualität leben kannst, ist eine reine >> Software-Lösung die einfachste Lösung. TRansistor ist nicht so einfach. >> Denn du brauchst ja einen veränderbaren Widerstand. Wenn schon dann ein >> Digital-Poti. Die kosten allerdings wieder Geld. > > kosten Geld? Von wieviel reden wir? ein paar Euro würde ich da schon > investieren wenn das die bessere Lösung ist. Was für einer wäre da > geeignet? ? Welchen Wert brauchst du (steht im Schaltplan). Dann gehst du zu den üblichen Verdächtigen (Reichelt, Conrad, ...) die Bauelemente verkaufen und suchst nach einem Digital-Poti mit diesem Nennwert. (War doch nicht so schwer, Oder?)
Tach Peter, je nachdem wie viele Lautstärkestufen du haben möchtest. Die elegante Lösung ist eine geschaltete Widerstandsleiter hinter dem DAC. Entweder mit einem Schieberegister oder direkt mit einem freien Port. Wenn du 8bits erübrigen kannst hast du 256 Lautstärkestufen. Thor
Der Vorschlag mit dem Photowiderstand und der PWM angesteuerten Leuchtdiode ist für den genannten Anwendungsfall sicher gut genug und dazu schön einfach. Ich regele seit Jahren die Lautstärke meines Fernsehers mit LED und Photowiderstand. Das hat sich beisher bewährt - auch wenn das Audio-Signal dadurch ein klein wenig verzerrt wird. Den Unterschied kann ich nicht hören.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.