FreeRTOS vTaskList()

OP #2806663
Lesenswert?

Hallo,

weiß jemand wie in FreeRTOS die Funktion vTaskList verwendet wird?

Also "configUSE_TRACE_FACILITY" in der FreeRTOSConfig.h muss auf 1 
gesetzt werden.
Und dann hab ich einen Buffer folgendermaßen konfguriert:
1
signed char buffer[256];

Die Funktion ruf ich dann in einem Task so auf:
1
vTaskList(buffer);

In den Beispielen von FreeRTOS wird das auch genau so gemacht.

Nur leider wird dann immer der Default-Handler aufgerufen, und zwar, 
wenn der Controller das zweite mal hier hin kommt:
1
usStackRemaining = usTaskCheckFreeStackSpace( ( unsigned char * ) pxNextTCB->pxStack );
(task.c - prvListTaskWithinSingleList())

usStackRemaining hat dabei den Wert 93 und ist ein unsigned short
px->Stack ist = 0x0;

Ich benutze CoIDE mit ARM-GCC und das STM32F4Discovery 
Board(STM32F407VGT6)

Moritz
Gast #2806729
Lesenswert?

Du hast den Sourcecode.

Wieso steppst Du nicht einfach durch?

>Also ich habe jetzt rausgefunden, das der HardFault_Handler angeprungen
>wird.
>
>Weiß jemand warum?

Wenn Du soweit gekommen bist, kannst Du ja auch die entsprechenden
Debug-Register und den Stack auswerten, dann
findest Du evtl. raus, wo der HardFault ausgelöst wurde.

Single-Step dürfte aber schmerzloser sein...

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