Gast
#159272
N'Abend! Seit Freitag sind meine beiden Mega32 da und ich habe eine kleine Experimentierplatine gebaut mit allem was ich im Moment so brauche. Also 16MHz Quarz, RS232 und MMC Slot inklusive 3,3V Schaltregler und Levelshifter. Auslesen kann ich die Karte im Moment noch ohne Filesystem weil ich der Fat Code von Uli nur FAT16 unterstütz und ich keine Lust habe ihn anzupassen :) Ich bekomme Anfang nächster Woche eh eine 32MB MMC und dann kann ich mit FAT16 loslegen... Aber jetzt zu meiner Idee. Bestimme 512Byte Blöcke oder die ganzen Karteninhalt am Stück über die serielle Schnittstelle ausgeben ist schon recht lustig wenn man die Karte mit ICQ Logs gefütter hat :) Aber es sollte doch auch möglich sein 8Bit PCM Dateien durch einen DAC zu schicken... nur zum testen und zum lernen. Das ganze soll vorerst ohne Filesystem laufen und wie bei der Textausgabe einfach nur duch sequenzielle Adressierung der einzelnen Blöcke. Soweit so gut. Ich stelle mir das so vor: Sagen wir auf der MMC liegt eine .wav die mit 8Bit und 8kHz kodiert ist um den Aufwand etwas in Grezen zu halten... Mono natürlich :) Das macht denn 8000S/s*8Bit=64000Bit/s oder 8kByte/s und das ist ein Wert den der AVR und die MMC schaffen sollten. SPI Clock läuft mit einem Teiler von 128 also mit 125kHz. Soooo ich könnte PWM benutzen wenn ich den 8Bit Timer sagen wir mal auf 1/1024 einstelle komme ich auf 15625 Überläufe pro Sekunde die ich mit einer Interruptroutine abfangen könnte und bei jedem Überlauf (vielleicht eher bei jedem 2. wegen den 8kS/s der Wavedatei) und ein Byte der Datei ins OCR Register kopieren, oder? Oder ich schnappe mir "einfach" 8 freie Ausgände, baue einen Addierer aus Widerständen und nebnutze den als DAC... auch alle x Timerüberläufe. Macht das Sinn oder sollte ich besser mal ne Runde mit dem Hund raus und frische Luft schnappen? :) Es geht mir wie gesagt nur um die Machbarkeit und um ein kleines Erfolgserlebnis zu haben denn ihr wisst ja multimediale Anwendungen mit dem AVR sind immer ein kleines Erfolgserlebnis :) Ach ja, ich programmiere noch etwas wackelig unter WinAVR nachdem ich mich dazu überwunden habe größere Sachen in C und nicht alles in Assembler zu schreiben. Würde mich über Anregungen, Tipps, Links und alles andere freuen :)