Forum: Mikrocontroller und Digitale Elektronik FreeRTOS Interrupts Cortex M4


von Moritz M. (Gast)


Lesenswert?

Hallo,

ich hab mich langsam in FreeRTOS eingearbeitet und möcht nun auch 
Interrupts benutzten. Ich benutze ein STM32F4 (Cortex M4). Was mus ich 
in der FreeRTOSConfig.h einsellen damit der Taskwechsel die niedrigste 
Prio hat, sodass alle Interrupts davor abgearbeitet werden. Also:
"configKERNEL_INTERRUPT_PRIORITY" muss doch 255 sein oder? und
"configMAX_SYSCALL_INTERRUPT_PRIORITY" muss was sein?

Moritz

von Wissender (Gast)


Lesenswert?

Moritz M. schrieb:
> Also:
> "configKERNEL_INTERRUPT_PRIORITY" muss doch 255 sein oder? und
> "configMAX_SYSCALL_INTERRUPT_PRIORITY" muss was sein?

In Anbetracht der Tatsache, daß ST nicht alle möglichen Interrupts des 
Cores ausnutzt, ist 255 ein bißchen viel.
Beim F0 langt eine 15.

configMAX_SYSCALL_INTERRUPT_PRIORITY definiert die Priorität, bis zu der 
das RTOS andere Interrupts ausmaskiert. Wenn also ein Interrupt Vorrang 
vor dem RTOS haben soll, muss er die Priorität 
configMAX_SYSCALL_INTERRUPT_PRIORITY + 1 haben.

von Wissender (Gast)


Lesenswert?

Wissender schrieb:
> configMAX_SYSCALL_INTERRUPT_PRIORITY + 1

Meinte natürlich "-1"...

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
Noch kein Account? Hier anmelden.