Gast
#2833764
Hey, ich habe ein WiFi-Radio mit dem xPlainedA1 Board aufgebaut welcher über UART(RN171-Wifi) MP3 Daten bekommt, sie in den SDRAM ablegt (über HighLevel Interrupt) und im Hauptprogramm diese an einen VS1053 weiterleitet. Das Ganze funktioniert soweit überraschend gut. Ich habe die Makro basierte Ring-Speicher(FIFO) Implemenierung von dieser Seite umgeschrieben so dass sie einen 8MB "breiten" Speicherzugriff auf den SDRAM ermöglicht. Leider funktioniert das ganze nur mit MP3s <250kbit/s. Bei höherer Qualität stockt das Ganze. Ich vermute dass die vielen Interrupts(320kbit/s ~ 40.000 Interrupts/s) das Weiterleiten über SPI ausbremsen. Als Lösungsansatz erscheint mir ein DMA als sinnvoll. Leider bin ich mir nicht sicher ob man mit einem DMA Daten vom UART zum externen SDRAM weiterleiten kann. Die DMAs besitzen eine Adressbreite von maximal 24Bit was genau der Speicherbreite des 64MBit SDRAMs entsprechen würde. Hat jemand so etwas schon mal gesehen oder bewerkstelligt? Und würde dies den xMega ausreichend endlasten? Gruß Denis