ploop писал(а):Тут ещё проблема в том, что архитектура гораздо сложнее, и без опыта лучше не браться за ассемблер. Если AVR просто как валенок, соответственно и его ассемблер, то с STM32 такое не прокатит.
Хотя бы какие-то части вынести в качестве ассемблерной вставки ещё можно, но делать полностью проект нет смысла. Там на одном конфигурировании мозг взорвётся.
Я бы не сказал. Что касается конфигурирования, то нет особой разницы, на Си его клепать, или на асме, по-любому надо в какой-то набор портов распихать какое-то количество констант, то есть на каждый шаг инициализации либо одна строчка на Си, либо две на асме, одна - загрузить константу в регистр, вторая - выдать ее в порт. Ну, и, опять же, простые действия, типа проверить битик в порту и перейти куда-то, если он взведен, на Си и на Асме занимают примерно одинаково. Зато Си - это дополнительный уровень абстракции. Если ты его заранее не знаешь (причем хорошо), да и еще камень незнакомый, результат вряд ли порадует.
А что действительно сложно на асме - это оптимизация по скорости для глубоко конвееризуемых процессоров, когда "инструкция z выполняется за один такт, но результат будет доступен через 17 тактов", вот тут действительно мозг взорвется, но ЦП большинства МК не такие...

Кто мешает тебе выдумать порох непромокаемый? (К. Прутков, мысль № 133)