STM32 на ассемблере

"Одной из главных тенденций современного развития микроконтроллерных систем управления является переход на 32-разрядные архитектуры".

Вот так, не больше и не меньше. Партия постановила значит!

Чем мы с вами и займёмся. Данный сайт ориентирован для новичков, которые имеют опыт разработки в 8-битных архитектурах. И хотят освоить 32-битные микроконтроллеры с нуля.

Итак, начнём. Среда разработки: ваш любимый блокнот + набор утилит binutils. Язык программирования: Ассемблер. Для начала создайте новый чистый проект. Затем подрыгайте ножкой. И вот произошло чудо, вы стали экспертом 32-разрядных архитектур! Поздравляю! Теперь вы даже можете пойти на форум и давать советы новичкам!

Микроконтроллеры на основе ядра ARMv7 очень лёгкие в освоении. Набор инструкций, просто восхитительный. Писать для него на ассемблере, одно удовольствие! Если вы переходите с 8-битников, работая в GCC, вы даже и не заметите, что имеете дело с 32-битным камнем. Всё то же самое, синтаксическая основа не изменилась. Команды легко запоминаются и читаются.

Основное отличие 32-битных камешков от 8-битных, это их роскошный набор периферии, которая включает в себя все лучшие наработки, какие только были достигнуты со времён появления микроконтроллеров. Они напичканы до тошнотиков!

Сайт ориентирован на язык программирования Ассемблер. Он шикарен! Например, основной набор M3 включает в себя 110 уникальных мнемоник. За счёт суффикса S (влияние на флаги) набор расширяется до 130 мнемоник. А за счёт суффиксов выполнения команд по условию, реализуется просто невероятная обработка состояний флагов. Благодаря этому, набор мнемоник расширяется до более чем 2000 (!!!). И это не какой-то бессмысленный повторяющийся мусор, а каждая из них уникальна и может пригодиться.

Если у вас стекленеют глаза при виде нечто: LDREXBGE, то разобравшись в ассемблере, вы поймёте, что это классическая команда чтения ячейки памяти, аналогичная LD/LDR. Которая за счёт возможностей ядра становится настолько мощной, что просто дух захватывает!