MIK32 Амур (К1948ВК018) — первый российский 32-битный микроконтроллер на ядре RISC-V от АО «Микрон». Для работы с ним разработчики предлагают связку VS Code + PlatformIO. Казалось бы, всё просто — но на практике сталкиваешься с множеством неочевидных шагов, которые нигде не собраны в одном месте. В этой статье я пошагово покажу, как развернуть полноценную среду разработки для MIK32 Амур на Windows. Читать далее
MIK32 Амур (К1948ВК018) — первый российский 32-битный микроконтроллер на ядре RISC-V от АО «Микрон». Для работы с ним разработчики предлагают связку VS Code + PlatformIO. Казалось бы, всё просто — но на практике сталкиваешься с множеством неочевидных шагов, которые нигде не собраны в одном месте. В этой статье я пошагово покажу, как развернуть полноценную среду разработки для MIK32 Амур на Windows.
Что понадобитсяОтладочная плата с MIK32 Амур
JTAG-адаптер (Mikron-Link/Start-Link — часто встроен прямо в отладочную плату)
Кабель USB (micro-USB или Type-C, зависит от программатора)
Windows 11 (У меня такая версия. Возможно, на других версиях будут другие сюрпризы)

С такой отладочной платой я и работал (отмечу сходство с платой NUCLEO)
Скачайте VS Code с официального сайта: code.visualstudio.com — пояснять тут нечего.
Шаг 2. Установка PlatformIOОткройте VS Code, нажмите Ctrl+Shift+X — откроется панель расширений. В строке поиска введите «PlatformIO IDE» и нажмите Install. Установка займёт пару минут — PlatformIO скачает Python-окружение и необходимые утилиты.
После установки в левой панели VS Code появится иконка PlatformIO (муравей).
PlatformIO — кроссплатформенный инструмент для встраиваемой разработки, который автоматически подтягивает тулчейн, HAL и настройки сборки под конкретный микроконтроллер, работает как расширение VS Code.
Шаг 3. Установка платформы MIK32Это ключевой шаг, на котором многие спотыкаются. MIK32 не входит в стандартную библиотеку платформ PlatformIO — её нужно установить вручную.
Перейдите на страницу релизов: github.com/MikronMIK32/mik32-platformio/releases
Скачайте архив последней версии (например, mik32-platformio-0.5.0.zip).
Распакуйте архив. Внутри будут папки packages и platforms.
Слейте содержимое этих папок с директорией PlatformIO. На Windows путь:
C:\Users\ВАШ_ПОЛЬЗОВАТЕЛЬ\.platformio\Перезапустите VS Code.
Программатор Mikron-Link (M-Link) / Start-Link использует чип FTDI. Windows может не установить правильный драйвер автоматически. Нужно заменить драйвер на WinUSB через утилиту Zadig:
Скачайте Zadig: zadig.akeo.ie
Подключите программатор по USB.
Запустите Zadig от имени администратора. В меню Options включите List All Devices.
Выберите ваш FTDI-адаптер в списке: Dual RS232-HS (Interface 1). Interface 0 не трогайте — он должен остаться обычным COM-портом.
Выберите драйвер WinUSB и нажмите Replace Driver.
Попробуйте различные версии Zadig. Свежие версии у меня не работали (просто вылетали при нажатии на кнопку Replace Driver. Рабочей версией оказалась 2.4.
Здесь у меня возникла проблема: установка стабильно завершалась ошибкой Driver Installation: FAILED (Other error). Причина оказалась в проверке цифровой подписи драйверов в Windows: Zadig ставит самоподписанный драйвер, а Windows его блокирует.
Решение — на время установки отключить проверку подписи драйверов:
Win + I → Система → Восстановление → Расширенные параметры запуска → «Перезагрузить сейчас».
В синем меню: Troubleshoot → Advanced options → Startup Settings → Restart.
После перезагрузки появится пронумерованный список опций — выберите Disable driver signature enforcement (клавиша F7).
Компьютер загрузится в обычном режиме, но с отключенной проверкой подписи. После этого запускайте Zadig — установка WinUSB должна пройти без ошибок. Проверить успех просто: устройство Dual RS232-HS (Interface 1) должно пропасть из списка COM-портов в Диспетчере устройств.
В корне проекта нужен файл platformio.ini(Можно посмотреть его в одном из примеров официального репозитория) :
[env:mik32v2]
platform = MIK32
board = mik32v2
framework = framework-mik32v2-sdk
board_build.ldscript = eepromЕсли PlatformIO не находит платформу по имени (
UnknownPackageError: Could not find the package with 'MIK32' requirements) - укажите платформу прямой git-ссылкой вplatformio.iniвместо имени:
platform =https://github.com/MikronMIK32/platform-mik32.git
Параметр board_build.ldscript определяет, куда загружается прошивка:
eeprom — энергонезависимая, сохраняется после выключения
ram — быстрая загрузка для отладки, теряется при выключении
spifi — внешняя Flash-память, если есть на плате
Заголовочные файлы с картой регистров, стартовый файл и линкер-скрипты лежат здесь — переписывать регистры вручную не нужно.
После инициализации проекта в появившейся папке .vscode откройте файл c_cpp_properties.json и добавьте путь до скачанных внешних библиотек в includePath.
Откройте палитру команд в VS Code (Ctrl+Shift+P) и выберите PlatformIO: Open PlatformIO Core CLI — это откроет терминал с уже активированным виртуальным окружением PlatformIO.
Подключите программатор к плате и к ПК по USB.
Компиляция:
pio runПосле этой команды PlatformIO создаёт папку .pio, внутри в build/mik32v2/ будет firmware.hex.
Прошивка:
pio run -t uploadЕсли всё настроено правильно — в терминале появится SUCCESS.
PlatformIO поддерживает пошаговую отладку через JTAG. Нажмите F5 или откройте панель Run and Debug слева в VS Code. Появится панель отладки, где можно ставить breakpoints, смотреть переменные и пошагово выполнять код.
Важный нюанс: у RISC-V ядра MIK32 всего 3 аппаратных триггера для breakpoint'ов (это видно в логе OpenOCD: Found 3 triggers). Один из них PlatformIO использует автоматически под временный breakpoint на вход в main() (tbreak main), и ещё один под внутренние нужды — то есть реально доступно не более одного breakpoint'а. Если поставить больше — получите ошибку Cannot insert hardware breakpoint: resource not available, и отладчик откажется продолжать выполнение.
После выполнения всех 8-ми шаговых Вы успешно запустите свой первый код на отечественном МК. Пишите в комментариях, если у Вас возникают какие-то траблы в ходе алгоритма. Также приглашаю в свой ТГ канал — там больше материалов про embedded-разработку, AI и подобные вещи.
| # | Наименование новости | Тональность | Информативность | Дата публикации |
|---|---|---|---|---|
| 1 | Двенадцать символов, двадцать один байт: как я научил голый RISC-V говорить «Привет, мир!» | 0 | 10.81 | 01-08-2026 |
| 2 | Безопасность микроядра: где заканчивается трюизм и начинается инженерия | 0 | 7.88 | 16-07-2026 |
| 3 | Как мы ускоряли прошивку ESP (спойлер: совы не то, чем кажутся) | 0 | 9.66 | 23-07-2026 |
| 4 | Программисты на Руси программируют на Си. RUSI: Концепт билингвального компилятора | 0 | 6.74 | 04-08-2026 |
| 5 | Операционная Система на C без знаний C | 0 | 7.27 | 17-07-2026 |
| 6 | Компилятор в 16 лет | 0 | 8.77 | 20-07-2026 |
| 7 | Разработан одноплатный компьютер на российском процессоре | 0 | 0 | 20-05-2025 |
| 8 | Новое поколение отечественного микроконтроллера представят к 2030 году | 0 | 0 | 21-05-2025 |
| 9 | Российские процессоры — инфографика CNews, проблемы, будущее | 0 | 7 | 05-06-2026 |