Hi, thank for your answer
I understand a little better since Friday and you end make me understand (I hope !)
I'm right ? :
Heap :
1>>When using FreeRTOS (I don't use malloc apart from freertos) the heap necessary is that required by FreeRTOS only. (I can use xPortGetFreeHeapSize() to optimise this)
As freertos use malloc to allocate task stack, heap need to be large for a freertos application
2>> If not using malloc or FreeRTOS ; heap can be set to zero (no dynamic allocation)
Stack :
3>>With freertos i need just allocate stack for some variables that are outside FreeRTOS. The not stack or heap space must be allocate for some global or static variables that are outside FreeRTOS.
4>>Without FreeRTOs. I need to allocate the largest Stack, with just enough RAM (not stack space, neither heap) for global or static variables.
5>> In any case I need to leave space in RAM for startup vector table copy.
I'm right ?
thanks