Quality RTOS & Embedded Software

 Real time embedded FreeRTOS RSS feed 
Quick Start Supported MCUs PDF Books Trace Tools Ecosystem TCP & FAT




Loading

Disable interrupts in ISR while calling API's

Posted by michaeln32 on August 23, 2017

Hello

This is ISR :

void ISR(void) { taskENTERCRITICALFROM_ISR();

xEventGroupSetBitsFromISR();

taskEXIT_CRITICAL_FROM_ISR();

}

Can I call the API xEventGroupSetBitsFromISR() in critical section in ISR ?

Michael


Disable interrupts in ISR while calling API's

Posted by heinbali01 on August 23, 2017

I think that the critical section is not necessary. All FromISR() functions are aware of the ISR context. So this should be ok :

~~~ void ISR(void) { xEventGroupSetBitsFromISR(); } ~~~


Disable interrupts in ISR while calling API's

Posted by michaeln32 on August 23, 2017

Ok.

I use Free RTOS V8.

Interrupt nesting is when ISR with high priority can stop ISR with low priority from running and the high priority ISR take the CPU for himself.

1.How can I find out if my system support interrupt nesting ?

2.if my system do support interrupt nesting - How can I find out if interrupt nesting mechanism (context switch between ISR's) is enabled ?


Disable interrupts in ISR while calling API's

Posted by rtel on August 23, 2017

1.How can I find out if my system support interrupt nesting ?

Preferred option - read the documentation for the FreeRTOS port you are using.

Fallback option - mention which port you are using in one of your posts so we can tell you.


Disable interrupts in ISR while calling API's

Posted by michaeln32 on August 23, 2017

What is this port ?

Port of what ?

Thanks


Disable interrupts in ISR while calling API's

Posted by heinbali01 on August 23, 2017

Richard is asking which port of FreeRTOS you are using, or in other words, what is your platform ( CPU type ) ?

All ports are well documented and you can read if nested interrupts are supported or not.


Disable interrupts in ISR while calling API's

Posted by rtel on August 23, 2017

Port of the RTOS.

FreeRTOS runs on many many architectures, and can be built with many different compilers. A 'port' is considered to be a compiler/architecture combination. For example, if you are targeting a Cortex-M0 MCU using the IAR compiler, then you are using the Cortex-M0 IAR port.


Disable interrupts in ISR while calling API's

Posted by michaeln32 on August 23, 2017

Ok, I got it.

Microcontroller - STM32L433 Cortex M4.

Compiler - TrueSTUDIO - Atollic.

How can I find this documentation ?

Thank You


[ Back to the top ]    [ About FreeRTOS ]    [ Sitemap ]    [ ]




Copyright (C) Amazon Web Services, Inc. or its affiliates. All rights reserved.

Latest News

FreeRTOS kernel V10 is available for immediate download. Now MIT licensed.


FreeRTOS Partners

ARM Connected RTOS partner for all ARM microcontroller cores

IAR Partner

Microchip Premier RTOS Partner

RTOS partner of NXP for all NXP ARM microcontrollers

STMicro RTOS partner supporting ARM7, ARM Cortex-M3, ARM Cortex-M4 and ARM Cortex-M0

Texas Instruments MCU Developer Network RTOS partner for ARM and MSP430 microcontrollers

OpenRTOS and SafeRTOS