FreeRTOS Support Archive
The FreeRTOS support forum is used to obtain active support directly from Real
Time Engineers Ltd. In return for using our top quality software and services for
free, we request you play fair and do your bit to help others too! Sign up
to receive notifications of new support topics then help where you can.
This is a read only archive of threads posted to the FreeRTOS support forum.
The archive is updated every week, so will not always contain the very latest posts.
Use these archive pages to search previous posts. Use the Live FreeRTOS Forum
link to reply to a post, or start a new support thread.
[FreeRTOS Home] [Live FreeRTOS Forum] [FAQ] [Archive Top] [January 2010 Threads] Free memory withe PIC32 Posted by barber colman on January 18, 2010 HI I am looking at using FreeRtos with a PIC32MX. I compiled and ran the demo. MPLAB shows 31996 out of 32768 bytes of ram used. I have previously used FreeRtos on an AVR part with far less ram. I think FreeRtos has grabbed all the ram but hopefully is not using all of it.
What is the easiest to check for free ram?
RE: Free memory withe PIC32 Posted by Richard on January 18, 2010 If you are using heap_1.c or heap_2.c then configTOTAL_HEAP_SIZE in FreeRTOSConfig.h will dimension a simple array that is used as the heap. The memory gauge in MPLAB will show you the entire heap as used RAM - even though only part of it will actually be used.
The demo applications generally just keep generating tasks until the RAM is exhausted. You can use xPortGetFreeHeapSize() to see how much heap is unused once your application is running. You can then reduce the setting of configTOTAL_HEAP_SIZE accordingly.
Use uxTaskGetStackHighWaterMark() to fine tune the stack size allocated to each task.
Regards.
RE: Free memory withe PIC32 Posted by barber colman on January 18, 2010 Hi I am looking at the API Referenc and do not find xPortGetFreeHeapSize. Am I missing it or is xPortGetFreeHeapSize documented else ware?
RE: Free memory withe PIC32 Posted by Richard on January 18, 2010 You are right - I just had a look at its missing. The prototype is:
size_t xPortGetFreeHeapSize( void );
Regards.
RE: Free memory withe PIC32 Posted by barber colman on January 18, 2010 Do you know who does the demos? I used xPortGetFreeHeapSize() and found there is 0x01D8 bytes of free heap. This means that the demo is using approximately 27.5K of ram.
Is there a demo that leaves enough ram to add an application?
I did find a reference to printf taking a lot of space. I will try to remove it, but, STILL 27.5K
Copyright (C) Amazon Web Services, Inc. or its affiliates. All rights reserved.
|