Вот урок именно об этом: http://www.dwengo.org/tips-tricks/large-variables
По сути, вы объявляете свою переменную в специальном разделе, а указатель на нее в разделе по умолчанию:
#pragma udata DATA // section DATA
int large_table[768];
#pragma udata // return to default section
int *table_ptr = &large_table[0];
Затем вы обновляете скрипт компоновщика, чтобы определить большой раздел, добавив что-то вроде этого:
DATABANK NAME=data START=0x200 END=0x7FF PROTECTED
SECTION NAME=DATA RAM=data
Обратите внимание, что, как правило, в карте нет какой-либо несопоставленной памяти, в которую вы можете просто поместить свой раздел DATA, но USB-буферы, как правило, мой первый выбор для канализации (если, конечно, вам не нужен USB в том же проекте ...) 1010 *