Я пишу программу для микроконтроллерной системы, у которой есть внешний источник, записывающий двумерный массив образцов в настраиваемую область в кэше данных. Для больших пакетов это, естественно, использует более высокий процент памяти, и я заметил, что программа перезаписывает адреса, уже записанные периферийным источником для переменных l oop, прерывая сохранение контекста et c.
Начальный адрес настраивается извне, как и размеры массива. Я хочу заблокировать программу от использования части, используемой в памяти.
Пока что у меня есть:
volatile float* samples_ptr = (float *)(base_address);
Есть ли способ назначить это volatile-переменная как массив с сохранением начального адреса?