начнём с того, что контроллер у которого 256к флешки и всего 16к рамы - несбалансирован. 32к рамы должно быть как минимум, а ещё лучше - 64. кроме того, многозадачность память особо-то и не жрёт. всё что нужно сверх от обычного кода это место под описатели задач да стек на каждую задачу. в CTL стек задаётся ручками под каждую задачку, можно точненько выделить место используя инструменты для анализа стекопрожорливости