Вступить в клуб →
лёгкаявопросПрошивка: память, загрузчик и надёжность

Таблица синуса на 4096 точек съела 8 КБ оперативной памяти

На МК с 20 КБ RAM добавили генератор сигнала:

uint16_t sine_table[4096] = { 2048, 2051, 2054, /* ... */ };

Таблица только читается. После сборки arm-none-eabi-size показывает, что секция .data выросла на 8 КБ, и свободной RAM под стек и кучу почти не осталось. Как это исправить?

  • Объявить static const, чтобы таблица жила во flash
  • Объявить таблицу внутри функции как локальную
  • Сменить тип на int, чтобы убрать выравнивание
  • Инициализировать таблицу в main() циклом

🔒 Проверка ответа — для участников клуба

  • Проверка ответа
  • Подсказка, если застряли
  • Разбор с объяснением, почему так
  • Прогресс по всем задачам и виртуальные собеседования
Зарегистрироваться →

Регистрация занимает минуту

Другие задачи раздела