Forum: Mikrocontroller und Digitale Elektronik Mikrolautsprecher ansteuern


von J!M! (Gast)


Lesenswert?

Hallo Boardies!

Das ist mir hier wirklich wichtig, denn es geht hier um meine beste 
Freundin.
Von ihr habe ich gestern zu meinem 18. ein sehr tolles, persönliches 
Geschenk bekommen, und da sie demnächst auch 18 wird, möchte ich ihr ein 
genau so tolles Geschenk machen.

Da ich musikalisch einigermaßen bewandt bin, wollte ich ihr einen Song 
schreiben. Aber nur einen Song zu schreiben, finde ich ist zu wenig... 
Es soll ein Geschenk sein, das sie überall hinbegleitet, das stets an 
mich erinnert. Zuerst wollte ich ihr eine selbstgelochte kleine Spieluhr 
mit dem Refrain vom Song schenken, aber einerseits können diese keine 
Töne von schwarzen Klaviertasten spielen, und zweitens sind sie zu groß 
um sie mit einem Schmuck zu kombinieren.
Und da ist mir soeben die Idee gekommen, mit nem Attiny nem 
Mikrolautsprecher die Melodie einzuprogrammieren, und sie dann mit nem 
Herzchenschmuck und n Foto drin oder so zusammenzubauen. Und jedes Mal 
wenn die Klappe vom Herzchenschmuck aufgeht, soll die Melodie abgespielt 
werden.

Nur:
a) Die Mikrolautsprecher sind doch auch dazu in der Lage Töne innerhalb 
von 2 Oktaven zu spielen als nur so n Signalton zu geben oder?
b) Wie steuert man denn einen Mikrolautsprecher an? (Leider nix gefunden 
im Internet...)

Da es wie gesagt mir sehr am Herzen liegt, bin ich für jede Antwort sehr 
sehr dankbar!

Beste grüße, J!M!

von Chris (Gast)


Lesenswert?

hmm, womit man auf jeden Fall Tonleitern spielen kann ist mit PWM. Hab 
das MSP430FG4618/F2013 Experimenter’s Board auf dem unter anderem auch 
ein Lautsprecher mit drauf ist und wen man auf den ein PWm Signal gibt 
bekommt man den entsprechende Ton, also 440Hz = A. Allerdings ist das 
von der Tonqualität eher auf dem Niveau eines internen PC Lautsprechers 
also ob es damit möglich ist auch ganze Lieder zu spielen bin ich mir 
nicht sicher.

von Michael U. (amiga)


Lesenswert?

Hallo,

da fällt mir dann immer das hier ein:
http://elm-chan.org/works/mxb/report.html

Sollte schwer zu unterbieten sein. ;-)

Gruß aus Berlin
Michael

von J!M! (Gast)


Lesenswert?

Erst mal vielen vielen Dank für die Antworten! Ihr seid top! xDD

Da der Link von Michael für mich ein bisschen einfacher zu verstehen 
ist, gehe ich jetzt erst mal nur darauf ein, denn ein paar Fragen sind 
noch vorhanden.

Also das mit der Hardware ist erst mal klar, die Beschaltung ist 
wirklich klein, was seeehr gut ist. :) Nur ne kleine Frage: "SP", geht 
da auch n Piezo-Signalgeber? oder soll da ein Mikrolautsprecher hin? 
Oder ist sogar beides das Gleiche? (Also ich stell mir ein 
Mikrolautsprecher etwas komplexer im inneren Aufbau vor; aber 
wahrscheinlich ist Beides doch das Gleiche...)

Software:
Also, so wie ich es verstanden habe, ist "wavetable synthesizer/-ing" 
wie "direct digital synthesizing" auch ein Konzept, wie man mit uCs 
analoge Signale gibt, die beide auf PWM beruhen. Richtig?

So, dann zur Anwendung, d.h. was für mich in Prinzip erst wirklich 
relevant ist:
Ich denke mal: txt-Datei mit Melodiesequenz erstellen, perl-Programm 
ausführen, mg.asm -Datei kompilieren, .hex-Datei auf uC laden richtig?
Auch hier eine kleine Frage? Warum wird in "mel.txt" nicht mit <time 
tick> "100" angefanen, sondern bei "120"?

Beste Grüße, J!M!


mel.txt:
;For Elise (3/8, 60bpm)

;<time tick> <note> <note> ...
; 1
120 E5
150 Dis5

...
...

von Michael U. (amiga)


Lesenswert?

Hallo,

mein Vorschlag: löte/steck das Ding zusammen, wirf das Demo rauf und 
hänge was zum Test ran. Piezo-Quietschen haben das Problem, daß sie 
ziemliche Resonanzspitzen haben, muß man probieren, wie es klingt.

Zu Details kann ich leider nichts sagen, von Musik keine Ahnung, habe 
das Teil nur zum Spaß mal auf ein Steckbrett gesteckt.

PS: wenn ich mich nicht irre, ist in For Elise ein falscher Ton drin 
oder mein .hex-File stimmte nicht...

Gruß aus Berlin
Michael

von J!M! (Gast)


Lesenswert?

Ok, danke danke.

Ebenfalls Gruß aus Berlin ;)
J!M!

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.