Ich habe mit einen AVR einen DA Wandler aufgebaut und möchte nun den Klang einer WAV Datei (8 Bit Mono) mit dem AVR abspielen. In wie weit kann ich die WÁV Datei dafür verwenden ?
Wenn diese unkomprimiert ist (also PCM, am besten 8bit Mono), reicht es den Header am Anfang der Datei (44 Bytes) zu entfernen. Der Rest kann direkt Sample für Sample ausgegeben werden.
http://www.ulrichradig.de/home/index.php/avr/megalol da wird genau das gemacht, funktioniert auch gut :)
Benedikt K. schrieb: > Wenn diese unkomprimiert ist (also PCM, am besten 8bit Mono), reicht es > den Header am Anfang der Datei (44 Bytes) zu entfernen. Der Rest kann > direkt Sample für Sample ausgegeben werden. Habe mal in Wikipedia nachgeschaut. Ein Sample ist ein "Abtastwert". Hier in dem Fall ein 8-Bit Abtastwert (1 Byte). Man kann also Abtastwert für Abtastwert an einem PWM-Port ausgeben. Ein ATmega8 hat 8192 Byte Flash. -Bei einer 8000 Hz Samplerate könnte man exakt eine Sekunde Sprache wiedergeben, und hätte 192 Byte übrig für den Code, um das 8k -Datenmeer zu lesen, und am PWM-Port auszugeben. Zum Ablegen der Wave-Daten den EEprom des Atmega8 zu benutzen lohnt glaube ich nicht, denn der EEprom das Atmega8 hat ohnehin nur 512 Byte.
Lady Ada hat ebenfalls so etwas gebaut: http://www.ladyada.net/make/waveshield/ (Auf der Seite gibt es auch ein Video.)
In Wave-Editor-Programmen kann man auch noch eine (niedrige) Samplerate von 6000 Samples pro Sekunde einstellen (s. ATTACHEMENT). Das ist immer noch eine höhere Samplerate als bei "sprechenden" Grußkarten, die man für ein paar Euro im Geschäft kaufen kann. -Weiss jemand, welche Samplerate bei Grußkarten verwendet wird?
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.