Helix MP3 mit FreeRTOS auf STM32F4 geht nicht

Gast #4244939
Lesenswert?

Hallo,

ich versuche den HELIX MP3 Code auf einem STM32F4 mit FreeRTOS (8.0) zum 
laufen zu bringen.

Ich habe den Codec in einer Funktion zum Testen verpackt und im Flash 
ein MP3 File liegen. Zum Testen ist vom Codes die langsame C-Variante 
drin. Die Codec Variablen sind nicht auf dem Heap sondern Statische 
Variablen.


Wenn ich nun ohne dem RTOS in einer Schleife die Funktion aufrufe läuft 
alles super. Die gesamte Datei wird sauber decodiert.

Aber wenn ich in einem Task die Funktion aufrufe läuft meistens beim 2. 
Frame der Codec Amok und löscht fast das ganze RAM und damit alle 
Variablen.
Ich habe auch schon den Aufruf in eine Critical Section (oder wie das 
heist) gekapselt, auch ohne Erfolg.

Hat jemand Erfahrung mit dieser Kombination oder hat einen Tipp woran 
das liegen könnte?


VG, Peter
Gast #4245697
Lesenswert?

Vergesst es, meine Output Variable ( uint8_t Out[2][2304] )  war zu 
klein und hat dadurch die dahinter liegende Decoder Variable zerlegt.
Es sind nicht 2304 Byte  sonder  2304 Short.
Da hatte ich wohl aus einem falsches Demo Projekt das raus kopiert.


Beim Test ohne ROTS ist es nicht aufgefallen weil ich immer bei "0" 
angefangen habe.
Im RTOS habe ich den Output auf den 2. OUT Bereich umgeschaltet und dann 
wurde halt mal eben was falsches beschreiben.

VG, Peter

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren