Part Number: MSP432P4111
Tool/software: TI-RTOS
Hi,
I try to fix my code that I can use these 2 queues with an FreeRTOS Application:
xQueue1 = xQueueCreate( 12, 1000 * 2); // uint16_t => 2 byte unsigned integer
xQueue2 = xQueueCreate( 2, 6000 * 2); // uint16_t => 2 byte unsigned integer
With these queues it ends in vApplicationMallocFailedHook(). I would say that the heap size is to less.
I saw this thread: "RTOS/MSP432P4111: TI-RTOS heap and queue size" and tried to increase the heap size (Prj.Options => build => ARM linker => basic options => heap size=65535).
I also wrote the new heap size 65535 in the cmd file:
* ======== MSP_EXP432P4111_FREERTOS.cmd ========
* Define the memory block start/length for the MSP_EXP432P4111 M4
*/
--stack_size=1024
--heap_size=65535 //0 /* minimize heap since we're using heap_4.c */
--entry_point=resetISR
MEMORY
{
MAIN (RX) : origin = 0x00000000, length = 0x00200000
INFO (RX) : origin = 0x00200000, length = 0x00008000
ALIAS
{
SRAM_CODE (RWX): origin = 0x01000000
SRAM_DATA (RW) : origin = 0x20000000
} length = 0x00040000
}
/* Section allocation in memory */
SECTIONS
{
.text : > MAIN
.const : > MAIN
.cinit : > MAIN
.pinit : > MAIN
.init_array : > MAIN
.TI.ramfunc : {} load=MAIN, run=SRAM_CODE, table(BINIT)
.data : > SRAM_DATA
.bss : > SRAM_DATA
.sysmem : > SRAM_DATA
.stack : > SRAM_DATA (HIGH)
.intvecs : > 0x00000000
.vtable : > SRAM_DATA
}
/* Symbolic definition of the WDTCTL register for RTS */
WDTCTL_SYM = 0x4000480C;
But it always ends in the vApplicationMallocFailedHook() function.
What I'm doing wrong?
Thanks