Подарок от Конфы Ивану

Комплект «МИК32 Амур»

Первый шаг для российской разработки. Гайдик написанный конфой для Ивана в дршку!

1. Что в коробке

Компонент Назначение
BluePill-MIK32 Отладочная плата с микроконтроллером MIK32 «Амур» К1948ВК015/018, USB-UART на CH340X, внешняя Flash-память и 20-контактный JTAG-разъём
BlueProg JTAG‑программатор для MIK32 и других RISC-V микроконтроллеров с логическим уровнем 3.3 В, совместим с OpenOCD
Провода «папа‑папа» Соединение отдельных контактов при экспериментах; штатный JTAG лучше подключать 20-контактным разъёмом или шлейфом
Провода «папа‑мама» Подключение светодиодов, кнопок и датчиков на макетной плате
Макетная плата (breadboard) Беспаечная плата для экспериментов
Светодиоды (3–5 мм) Визуальная индикация — мигалка для первого проекта
Резисторы 330 Ом, 0.5 Вт Токоограничивающие для светодиодов

Кратко по железу

Иван с инженерным вайбом

Схемы и исходные файлы

2. Железо: пошаговая сборка

Шаг 1. Соединяй программатор и отладочную плату

BlueProg подключается к компьютеру через USB Type-C, а к BluePill-MIK32 — через стандартный 20-контактный JTAG-разъём. Если у тебя есть JTAG-шлейф или программатор можно аккуратно состыковать с разъёмом платы напрямую, используй штатный 20-контактный разъём.

Таблица ниже лишь справочная распиновка JTAG из комплекта, а не инструкция как подключать каждый контакт отдельным проводом. Перед подключением проверь ориентацию ключа на разъёме: перевёрнутый JTAG-разъём — частая причина ошибок.

BlueProg (20‑pin JTAG-разъём) Сигнал на BluePill-MIK32 Примечание
Pin 1 (N/C) N/C Не подключается
Pin 3 (nTRST) nTRST Сброс JTAG-логики
Pin 5 (TDI) TDI Данные к цели
Pin 7 (TMS) TMS Выбор режима JTAG
Pin 9 (TCLK/TCK) TCLK/TCK Тактирование
Pin 11 (N/C) N/C Не подключается
Pin 13 (TDO) TDO Данные от цели
Pin 15 (RESET) RESET Сброс микроконтроллера
Pin 17 (N/C) N/C Не подключается
Pins 4, 6, 8, 10, 12, 14, 16, 18, 20 (GND) GND Общий провод
Pin 19 (5V) 5V Питание через JTAG, использовать только если это разрешено документацией
Важно: на схеме BlueProg pin 1 отмечен как N/C, а pin 19 — как 5V. Не подключай 5V вручную проводами и не подавай питание через JTAG, если не уверен в ревизии платы и настройках программатора. Для первых опытов безопаснее питать BluePill-MIK32 через собственный USB Type-C.

Шаг 2. Собери тестовую схему на макетной плате (мигающий светодиод)

Нужно: макетная плата, 1 светодиод, 1 резистор 330 Ом, 1 провод «папа‑мама».

Схема:

Плата (GPIO, например, P1.0) → резистор 330 Ом → длинная ножка светодиода (+) Короткая ножка светодиода (−) → провод → GND на плате

Как это на макетке:

  1. Вставь светодиод в две отдельные дорожки макетки.
  2. В ту же дорожку, что и длинная ножка, воткни один конец резистора.
  3. Второй конец резистора соедини проводом папа‑мама с любым свободным GPIO (например, P1.0).
  4. Короткую ножку светодиода соедини отдельным проводом папа‑мама с любым GND на плате.

Шаг 3. Подай питание(можно и в Лясю)

  • BluePill-MIK32 → подключи через USB Type-C к компьютеру или зарядке. Этот разъём используется для USB-UART на CH340X и подачи питания на плату.
  • BlueProg → подключи через USB Type-C к тому же компьютеру. Кабель USB Type-C обычно не входит в комплект.
  • Плату также можно питать от внешнего источника 5 В через клеммную колодку, если это нужно для эксперимента.
Безопасный вариант для первых опытов: плата питается от своего USB Type-C, программатор — от своего USB Type-C. Питание через JTAG используй только после проверки документации к конкретной ревизии.

Перед первым включением

3. Софт: первичная настройка на компьютере

Что нужно установить (всё бесплатно)

Программа / компонент Зачем Ссылка / как найти Ляся
Visual Studio Code Редактор кода (легче, чем Eclipse) code.visualstudio.com
PlatformIO (расширение для VS Code) Среда разработки для сборки, прошивки и работы с C/SDK-проектами MIK32 В VS Code: вкладка Extensions → поиск «PlatformIO IDE»; параметры platformio.ini смотри в MIK32 Wiki
Драйвер для BlueProg (чаще всего Zadig на Windows) Чтобы компьютер увидел программатор Инструкция придёт вместе с платой, либо поиск Zadig + WinUSB + BlueProg
OpenOCD Для прошивки и отладки через JTAG Обычно ставится вместе с инструментами MIK32/PlatformIO; если не нашёлся — ставь по инструкции MIK32 Wiki
Git (опционально) Чтобы скачать примеры и SDK git-scm.com

Шаг 4. Создай первый проект в PlatformIO

Запусти VS Code → значок PlatformIO (слева) → New Project.

Выбери:

В зависимости от версии платформы может потребоваться настройка platformio.ini. Сверяй параметры с официальной MIK32 Wiki и примерами SDK.

Шаг 5. Напиши код мигалки

Для первого запуска лучше взять готовый пример из mik32-examples или из документации к BluePill-MIK32. Если используешь Arduino BSP, минимальная мигалка может выглядеть так:

#include <Arduino.h>

void setup() {
    pinMode(P1_0, OUTPUT);   // настроили ножку P1.0 на вывод
}

void loop() {
    digitalWrite(P1_0, HIGH); // светодиод зажёгся
    delay(500);               // ждём 500 мс
    digitalWrite(P1_0, LOW);  // потушили
    delay(500);               // ждём 500 мс
}

Этот код относится к Arduino-стилю. Для SDK/PlatformIO на C будут другие заголовки и настройка GPIO через регистры/HAL. Имя вывода P1_0 обязательно сверь с BSP или примерами для твоей конкретной платы.

Шаг 6. Компиляция и прошивка

Подключи оба USB (плата и программатор) к компьютеру.

Внизу VS Code, на синей панели PlatformIO:

  1. Нажми Build — код скомпилируется в прошивку.
  2. Нажми Upload — прошивка зальётся через BlueProg в микроконтроллер.

Если всё сделано правильно, твой светодиод на макетке начнёт мигать! Ахуеть, правда?!!

Если Upload выдаёт ошибку — убедись, что в конфиге PlatformIO выбран правильный программатор и указан подходящий OpenOCD-скрипт для BlueProg. Точные параметры лучше брать из MIK32 Wiki и примеров для твоей платы.

Минимальная проверка без макетки

У тебя на BluePill-MIK32 есть встроенный пользовательский светодиод, сначала можешь прошить пример для него. Так ты проверишь связку «компьютер → BlueProg → плата» без макетной платы и внешних проводов.

Проверка без макетки

Если не прошивается

Перед проверкой

4. Где дальше учиться? (Литература и ресурсы)

Основные материалы (русский язык)

Книги

Ваще похуй

Бесплатные курсы и сообщества

Продвинутые темы (когда освоишься)

5. Полезные советы

Короче, это не просто коробка с проводами и платами, а входной билет в настоящую российскую embedded-разработку. Этот комплект поможет тебе пощупать МИК32 руками, разобраться с JTAG, GPIO и прошивкой, а дальше — уже двигать отечественные технологии и вносить свой вклад в российскую науку. Был ещё вариант подарить тебе отладочную плату от Микрона, но она более казуальная. BluePill-MIK32 и BlueProg выглядят как путь посложнее, зато интереснее и ближе к реальной инженерке.