Comments 10
Портирование AM32 на К1946ВК035 оказалось задачей не из простых — не столько из-за недостатка вычислительной мощности, сколько из-за особенностей периферии. Микроконтроллер уверенно тянет любые алгоритмы управления BLDC-моторами, но разработчику придётся вложиться в адаптацию к архитектуре:
Сделал для себя вывод, что лучше брать микроконтроллер на другой, но нормальной архитектуре (например, RISC-V), чем ловить косяки в "совместимых аналогах".
В этом плане никаких отличий ARM от RISC-V нет вообще никаких. И К1946ВК035 не является совместимым аналогом (да и несовместимым тоже) для STM32.
Но вообще RISC-V тоже нравится, хотелось бы подобные статьи на линейку 1921ВГ*
Будут ещё статьи и по этому МК и по другим.
Тут проблема в другом. Если вы берете "аналог STM32", то рассчитываете на использование уже разработанного кода, но у вас нет возможности отладки с помощью штатных средств (например, STM32CubeIDE), а стандартные библиотеки и уже отлаженные решения могут глючить в самых неожиданных местах.
Возможно с точки зрения трудоемкости имеет смысл менять железо не на "аналог" с непонятным статусом поддержки системного ПО, а перенести бизнес логику на другое железо с нормальной поддержкой системного ПО и средств разработки и отладки.
Вообще не понял. Что такое "непонятный статус поддержки системного ПО"? Он вполне себе поддерживается и никаких проблем с ним нет.
По поводу трудоёмкости - для меня, например, всякие кубы сильно сложнее, чем просто писать код. А с этой точки зрения все МК одинаковые. Да и берут подобные МК люди, которым нужно либо сделать максимально отечественное, либо спецфакторы вроде температур под -60 (1921ВК035).
Системные библиотеки для поддержки периферии могут иметь небольшие отличия от аналога, поэтому тут возникают вопросы насчет возможности поддержки новой аппаратной платформы в рамках одной прошивки (если платформа декларируется совместимой). Как делается, например, для поддержки GD, но приходится учитывать некоторые тонкости в различиях железа.
К1946ВК035 не позиционируется как аналог чего-либо. Скорее, это автор статьи сам проводит сравнение с более классическими представителями мира микроконтроллеров. Что касается архитектуры процессора, то она ни на что не повлияла — влияние может проявиться только при программировании на ассемблере. Здесь же скорее особенности архитектуры построения периферийных блоков вставляли палки в колёса.
В выводе фраза не очень корректная, адаптания не к архитектуре, а к периферии и особенностям архитектуры МК.
Первый опыт портирования open-source прошивки на отечественный микроконтроллер К1946ВК035