Heap management for small microcontrollers

by Isaac Marino Bavaresco

Specially suited for PIC18 with FreeRTOS, but works with Microchip MPLAB-C18, Hi-Tech PICC and Hi-Tech PICC-18

malloc.c Implements the function "malloc()".
malloc.asm An optional substitution for the file "malloc.c". It is much more optimized, but works only for PIC18 in extended mode with Microchip MPLAB-18.
free.c Implements the function "free()".
free.asm An optional substitution for the file "free.c". It is much more optimized, but works only for PIC18 in extended mode with Microchip MPLAB-C18.
__freelist.c Declares the free blocks list head.
__heap.c Declares the heap data area.
__reclaim_stack.c Useful only when used with PIC18 and FreeRTOS.
alloc.h Header with defines and prototypes. Should be included in the application files.
heap.h Header used by the heap functions.
main.c Demo application.
heap_config.h Defines for configuring the heap parameters