Главная → Контроллеры

Плата STM32 Blue Pill на STM32F103C8T6: обзор и подключение

7 октября 2026 · Контроллеры

Что это за плата

Blue Pill — народное название дешёвой отладочной платы на STM32F103C8T6: плитка ~53×23 мм с шагом выводов 2,54 мм, по размеру ближе к Arduino Pro Mini, чем к Uno. Артикул по системе ST: 103 — семейство Performance line на ядре Arm Cortex-M3, C — корпус на 48 выводов, 8 — 64 КБ флеша (у старшего STM32F103RB её 128 КБ), T — корпус LQFP. Все цифры ниже — из действующего datasheet ST (DS5319 Rev 20, июль 2025), не из описаний магазинов.

Характеристики по datasheet ST

Параметр Значение
Ядро Arm Cortex-M3, 72 МГц, 1,25 DMIPS/MHz, аппаратные умножение и деление
Флеш / ОЗУ 64 КБ / 20 КБ
Питание 2,0–3,6 В
GPIO 37 на этом корпусе, почти все толерантны к 5 В, мапятся на 16 линий внешних прерываний
АЦП 2 × 12 бит, до 16 каналов, преобразование 1 мкс, встроенный датчик температуры
Таймеры 3 универсальных 16-битных по 4 канала + продвинутый TIM1 с dead-time для управления моторами, SysTick, два watchdog
Связь 2 × SPI до 18 Мбит/с, 2 × I2C, 3 × USART (один до 4,5 Мбит/с), USB full-speed 12 Мбит/с, CAN 2.0B до 1 Мбит/с
DMA 7 каналов: таймеры, АЦП, SPI, I2C, USART
Потребление Run: тип. 36 мА на 72 МГц (27 мА с выключенной периферией); Sleep: 14,4 мА; Stop: 14–24 мкА; Standby: 2–3,4 мкА
Корпус чипа LQFP48

Для сравнения: Nano во сне потребляет миллиамперы, а у Blue Pill режим Stop уже на уровне микроампер — на батарейках это решает.

Что на плате помимо чипа

Чем отличается от привычных плат

Blue Pill Arduino Nano ESP32 DevKit
Ядро Cortex-M3, 72 МГц, 32 бита AVR, 8 бит, 16 МГц 2 × LX6, 240 МГц
Флеш / ОЗУ 64 КБ / 20 КБ 32 КБ / 2 КБ обычно 4 МБ / 520 КБ
Радиомодуль нет нет Wi-Fi + Bluetooth
АЦП 2 × 12 бит 1 × 10 бит 12 бит
USB собственный USB device только через USB-мост только через мост
Токи сна до единиц мкА миллиамперы миллиамперы

Как прошивать

Заводской загрузчик в системной памяти по datasheet умеет перепрошивать флеш только через USART1 (PA9 — TX, PA10 — RX). Загрузки по USB «как в ESP32» из коробки нет. Рабочие пути такие:

  1. ST-Link V2 по SWD — основной и самый удобный. Подключаешь SWDIO (PA13), SWCLK (PA14), GND и 3.3V. В Arduino IDE ставишь ядро STM32 от STMicroelectronics, выбираешь плату Generic STM32F103C-серии, Upload method — STM32CubeProgrammer (SWD). Тот же программатор работает и в PlatformIO, и в STM32CubeProgrammer напрямую.
  2. Через UART-переходник — без программатора. Джампер BOOT0 на 1, нажать RESET, заливка из STM32CubeProgrammer по USART1. После прошивки вернуть BOOT0 на 0, иначе плата снова уйдёт в загрузчик.
  3. Загрузчик maple — один раз прошивается по SWD, после чего скетчи заливаются по USB-порту без программатора, но с ручным нажатием RESET.

Подключение периферии

Логика — 3,3 В. Почти все цифровые пины толерантны к 5 В (маркировка FT в datasheet), но аналоговые входы АЦП лишний вольт не переживут: их диапазон 0–VDD. Основные шины разведены так:

Интерфейс Пины Что подключать
I2C1 PB6 (SCL), PB7 (SDA) датчики освещённости BH1750, MPU-6050, OLED на SSD1306
SPI1 PA4 (NSS), PA5 (SCK), PA6 (MISO), PA7 (MOSI) RFID-модуль RC522, TFT-дисплеи ST7735, SD-карты
USART1 PA9 (TX), PA10 (RX) загрузчик, GSM-модули, MAX485 и RS-485
АЦП PA0–PA7, PB0, PB1 аналоговые датчики, 12 бит вместо 10 у Nano

По силе выхода пин держит ±8 мА гарантированно и ±20 мА с просадкой уровней, суммарный предел по питанию — 150 мА. Реле, моторы и длинные ленты — только через реле-модули или драйверы.

Пример: мигаем и шлём в UART

// Blue Pill: светодиод на PC13, Serial на USART1 (PA9 TX, PA10 RX).
// Ядро STM32duino (STMicroelectronics), плата Generic STM32F103C.

void setup() {
  pinMode(PC13, OUTPUT);
  Serial.begin(115200);
}

void loop() {
  digitalWrite(PC13, LOW);    // светодиод включается низким уровнем
  Serial.println("LED on");
  delay(500);

  digitalWrite(PC13, HIGH);
  Serial.println("LED off");
  delay(500);
}

Частые ошибки

  1. Ждут заливку скетча по USB без подготовки. Заводской загрузчик работает только через USART1. Купи ST-Link — стоит копейки и решает все вопросы, включая восстановление «кирпича».
  2. Подают 5 В на пины как на Arduino. Рабочее напряжение чипа 2,0–3,6 В. Пять вольт допустимы только как цифровой сигнал на FT-пинах и на вход VIN через стабилизатор.
  3. Нагружают PC13. Лимит ±3 мА и 2 МГц. Реле с PC13 не переключить — бери любой другой GPIO.
  4. Кормят 5 В во входы АЦП. Толерантность к 5 В — про цифровые режимы. Аналоговый вход живёт в диапазоне 0–3,3 В.
  5. Не проверяют резистор USB. Подтяжка 1,5 кОм на PA12 обязательна; на части плат номинал другой, и ПК плату не видит. Лечится перепайкой.
  6. Прочитай чип перед использованием. Есть клоны (CS32, CH32F103) и подделки с реальной флешой меньше 64 КБ и капризным USB. Подключи ST-Link и проверь идентификатор и объём памяти в STM32CubeProgrammer.

Кому подходит

Blue Pill берут, когда нужен дешёвый 32-битный контроллер без беспроводной связи: управление моторами через TIM1 с dead-time, шина CAN в автомобильных самоделках, собственные USB-устройства вроде HID-гаджетов, экономные приборы на батарейках. Если нужен Wi-Fi или Bluetooth — это к ESP32; если максимально простая экосистема под обучение — к Arduino Uno и Nano; если много памяти и необычная периферия — к Raspberry Pi Pico.

Информация собрана из открытых источников и паспортов производителей и не является истиной в последней инстанции. Характеристики, распиновку и совместимость проверяйте по документации конкретной партии модуля перед покупкой и подключением.

Читайте дальше

Датчики

Тензодатчик и HX711: делаем электронные весы

Почему датчику не обойтись без усилителя Электронные весы — это пара: тензодатчик, превращающий деформацию металла в изменение сопротивления, и АЦП-усилитель, потому что…

Читать обзор →
Датчики

Ёмкостный датчик влажности почвы v1.2: почему резистивный датчик сгнивает за месяц

Если у вас когда-то сгнил резистивный датчик влажности почвы — вы не одиноки. Разберёмся, почему это происходит, чем лучше ёмкостный датчик v1.2…

Читать обзор →
Датчики

BME280: обзор датчика температуры, влажности и давления

BME280 — комбинированный датчик Bosch Sensortec, который в одном корпусе размером с рисовое зерно измеряет сразу три величины: температуру, относительную влажность и…

Читать обзор →