Каталог RSS-каналов
Статистика

RSS-каналов в каталоге: 3394

Добавлено сегодня: 0

Добавлено вчера: 0

Hi-Tech / Прочее

Простейшее профилирование памяти на STM32 и других микроконтроллерах

Хабр / Интересные / Тематические публикации 08.03.2019 в 21:12

Интересные публикации из тематических хабов на Хабре

«С опытом приходит стандартный, научный подход к вычислению правильного размера стека: взять случайное число и надеяться на лучшее»

— Jack Ganssle, «The Art of Designing Embedded Systems»

Привет, Хабр!

Как ни странно, но в абсолютном большинстве виденных мной «учебников для начинающих» по STM32 в частности и микроконтроллерам вообще нет, как правило, вообще ничего про такую вещь, как распределение памяти, размещение стека и, главное, недопущение переполнения памяти — в результате которого одна область перетирает другую и всё рушится, обычно с феерическими эффектами.

Отчасти это объясняется простотой учебных проектов, выполняемых при этом на отладочных платах с относительно жирными микроконтроллерами, на которых влететь в нехватку памяти, мигая светодиодом, довольно сложно — однако в последнее время даже у начинающих любителей мне всё чаще встречаются упоминания, например, контроллеров типа STM32F030F4P6, простых в монтаже, стоящих копейки, но и памяти имеющих единицы килобайт.

Такие контроллеры позволяют делать вполне себе серьёзные штуки (ну вот у нас, например, такая вполне себе годная измериловка сделана на STM32F042K6T6 с 6 КБ ОЗУ, от которых свободными остаются чуть больле 100 байт), но при обращении с памятью при работе с ними нужна определённая аккуратность.

Об этой аккуратности и хочу поговорить. Статья будет короткая, профессионалы ничего нового не узнают — но начинающим эти знания очень рекомендуется иметь.

Читать дальше →

Другие записи ленты

[Из песочницы] Rosserial & STM32 08.03.2019 в 18:46

Microsoft открыла код Калькулятора Windows 08.03.2019 в 18:07

Российская компания запустила серийное производство нейропроцессоров — конкурентов Nvidia 08.03.2019 в 17:39

[Из песочницы] Наша с девушкой первая видеоигра. Разработка на Unity. Часть 1 08.03.2019 в 16:45

История второго места в Russian AI Cup 2018: CodeBall 08.03.2019 в 16:21

[Из песочницы] Оформление PL/SQL кода и формирования PL/SQL документации (pldoc), аналогично JavaDoc 08.03.2019 в 09:59

«Мышиная возня» в инфракрасном свете: внедрение наночастиц в субретинальную область глаза мыши 08.03.2019 в 09:00

[Перевод] Функциональное мышление. Часть 10 08.03.2019 в 07:00

Законопроект о борьбе с фейковой информацией принят в третьем чтении 07.03.2019 в 22:59

Полуторасуточный прогноз силы ветра поможет оптимизировать выходную мощность ветрогенераторов 28.02.2019 в 18:00