Проектов с блоками: 111 · Arduino · ESP32 · Pico

Блочный код для проектов на Arduino, ESP32 и Pico

Следи за цветными блоками вместо того, чтобы читать код строку за строкой. У проектов BlueGrays (всего: 111) есть блочная версия, и каждый блок соответствует строке настоящего кода, который работает на плате.

Что такое блочный код?

Блочный код — это когда программу собирают из блоков, похожих на пазл, а не набирают текстом. «Сделать пин выходом», «включить светодиод» и «подождать 1 секунду» — это отдельные блоки, и, складывая их друг на друга, ты собираешь программу. Не нужно следить за точками с запятой, скобками и опечатками, так что можно сосредоточиться на логике.

В BlueGrays свой набор блоков, и блоки говорят на твоём языке: если приложение на английском, на блоках написано «repeat forever» и «write HIGH to pin». В проектах на Arduino и ESP32 блоки соответствуют коду на C++, а в проектах на Raspberry Pi Pico — на MicroPython.

Цель не в том, чтобы навсегда остаться в блоках, а в том, чтобы понять код. Положи блоки проекта рядом с его кодом — и станет видно, что делает каждая строка. После нескольких проектов ты начнёшь читать код и без блоков.

Как работает блочный код в BlueGrays

В приложении блоки находятся в разделе кода каждого проекта с блоками. Четыре шага:

  1. 01

    Выбери проект с блоками

    У проектов с меткой «Блоки» есть блочная версия. Можно включить фильтр, чтобы в списке остались только проекты с блоками.

  2. 02

    Включи «Показать блоками»

    Один переключатель в разделе кода превращает код в блоки. Нажми на изображение, чтобы открыть его на весь экран и увеличить.

  3. 03

    Разберись в блоках

    Вкладка «Разбор блоков» шаг за шагом проводит по программе и на каждом шаге показывает только нужные блоки и что они делают.

  4. 04

    Переходи к настоящему коду

    Выключи переключатель — и та же программа появится в виде кода. Скопируй его в Arduino IDE (или в Thonny для Pico) и загрузи в плату.

Одна программа: блоки и код

Слева — блоки проекта. Справа — код, который работает на плате. У каждого блока есть соответствующая строка кода.

Блоки

Блочный код: Мигающий светодиод
Мигающий светодиодОткрыть в полном размере

Код

C++ (Arduino IDE)
1// ─────────────────────────────────────────
2//   BlueGrays · bluegrays.com
3//   Мигающий светодиод
4// ─────────────────────────────────────────
5// Мигает одним светодиодом каждые 100 мс. Показывает базовое использование
6// функций digitalWrite и delay.
7//
8// Пины:
9//   D9 -> Светодиод (с резистором 220 ohm)
10
11void setup() {
12  pinMode(9,OUTPUT);     // Пин светодиода как выход
13}
14
15void loop() {
16  digitalWrite(9,HIGH);  // Включить светодиод
17  delay(100);            // Ждать 100 мс (1000 мс = 1 с)
18  digitalWrite(9,LOW);   // Выключить светодиод
19  delay(100);
20}
21
Открыть проект: Мигающий светодиод

Проекты с блоками

Все проекты с блочной версией по платформам. Сначала идут бесплатные: полностью бесплатных проектов, вместе с блоками и кодом, — 31.

Проекты на ArduinoПроектов с блоками: 74

Мигающий светодиод
#1Новичок

Мигающий светодиод

Самое первое «привет» в электронике: включение и выключение одного светодиода. Arduino включает и выключает светодиод через короткие промежутки, поэтому свет быстро мигает. Ты самым простым способом в

4.6(188)
1127
Два попеременно мигающих светодиода
#2Новичок

Два попеременно мигающих светодиода

Два светодиода быстро мигают по очереди: когда один загорается, другой гаснет, будто они перебрасывают друг другу мяч. Arduino держит каждый свет включённым пятую долю секунды, а затем передаёт очеред

4.6(105)
343
Светофор
#3Новичок

Светофор

Крошечная копия светофора, который ты каждый день видишь на дороге. Красный горит две секунды, жёлтый мигает на мгновение, зелёный горит две секунды, затем через жёлтый снова возвращается красный, и т

4.8(131)
397
Полицейская мигалка на светодиодах
#4Новичок

Полицейская мигалка на светодиодах

Как огни на полицейской машине: красный светодиод три раза быстро вспыхивает, затем три раза вспыхивает синий, и узор повторяется без перерыва. Нужны всего два светодиода и два резистора, подключённые

4.7(103)
258
Бегущие огни на светодиодах
#5Средний

Бегущие огни на светодиодах

Огни, которые загораются друг за другом, будто бегут. Arduino зажигает шесть светодиодов по одному; каждый светится короткое мгновение и гаснет, так что свет проходит от начала до конца и начинает сно

4.6(85)
207
Светодиодный эффект Knight Rider
#6Средний

Светодиодный эффект Knight Rider

Классический бегущий огонь-сканер: светящаяся точка скользит от одного края шести светодиодов к другому и возвращается обратно. Arduino зажигает каждый светодиод на десятую долю секунды и переходит к

4.8(106)
202
Бегущие огни с регулируемой скоростью
#7Средний

Бегущие огни с регулируемой скоростью

Шесть светодиодов загораются друг за другом, и кажется, что свет бежит от одного края к другому. Поверни ручку потенциометра, и скорость этого бега сразу меняется: в одну сторону свет мчится, в другую

4.6(72)
146
Светодиодный эффект Knight Rider с регулируемой скоростью
#8Средний

Светодиодный эффект Knight Rider с регулируемой скоростью

Свет бежит от одного края шести светодиодов к другому, разворачивается и бежит обратно. Поверни ручку потенциометра, и скорость этого бега сразу изменится: в одном крайнем положении свет почти летит,

4.5(60)
120

Проекты на Arduino: все проекты с блоками

Проекты на ESP32Проектов с блоками: 23

Мигающий светодиод на ESP32
#103Новичок

Мигающий светодиод на ESP32

Учит базовой работе с выходами GPIO на ESP32. Эффект мигания получается включением и выключением светодиода с цифрового пина. Это ESP32-версия классического проекта мигания на Arduino UNO; базовые команды мигания в среде Arduino те же, но расположение пинов ESP32 и уровни GPIO 3,3 V отличаются от Arduino UNO.

4.7(37)
99
Управление светодиодом кнопкой на ESP32 (удержание)
#104Новичок

Управление светодиодом кнопкой на ESP32 (удержание)

Светодиод горит, когда кнопка нажата, и гаснет, когда её отпускают. Показывает, как используются цифровой входной пин ESP32 и встроенный подтягивающий резистор. Режим INPUT_PULLUP избавляет от внешнего резистора.

4.6(36)
55
Управление светодиодом кнопкой на ESP32 (переключение)
#105Новичок

Управление светодиодом кнопкой на ESP32 (переключение)

При каждом нажатии кнопки состояние светодиода меняется: если горел — гаснет, если не горел — загорается. Классический шаблон переключения. Антидребезг убирает механический шум кнопки, чтобы одно нажатие давало одно переключение.

4.6(39)
57
Мигание встроенным светодиодом ESP32
#106Новичок

Мигание встроенным светодиодом ESP32

Мигание встроенным синим светодиодом на ESP32 DevKit V1. Внешние компоненты не нужны! Первый проект, который стоит попробовать после покупки ESP32. Встроенный светодиод подключён к GPIO 2.

4.8(29)
53
Светофор на ESP32
#107Новичок

Светофор на ESP32

Реалистичная симуляция светофора на 3 светодиодах — красном, жёлтом и зелёном. Тайминги близки к реальной логике движения: красный долго, жёлтый коротко, зелёный долго. Классический пример последовательного управления GPIO.

4.4(21)
44
Светодиоды Knight Rider на ESP32
#108Новичок

Светодиоды Knight Rider на ESP32

6 светодиодов по очереди бегают слева направо и справа налево (в стиле Knight Rider). Базовый пример использования циклов for и массивов. Учит логике смены направления.

4.5(19)
32
Плавное затухание светодиода с PWM на ESP32
#110Новичок

Плавное затухание светодиода с PWM на ESP32

Плавное изменение яркости светодиода от 0 до максимума и от максимума до 0. PWM управляется через analogWrite(), как в Arduino, — тот же синтаксис без проблем работает в ESP32 Arduino Core 3.0+. Достаточно определения пина, pinMode и analogWrite.

4.8(36)
54
Управление RGB-светодиодом на ESP32
#111Новичок

Управление RGB-светодиодом на ESP32

Бесконечное число цветов одним RGB-светодиодом вместо 3 отдельных. Как в Arduino, радужный переход получается заданием значений R/G/B через analogWrite(). Теория цвета (например, красный + зелёный = жёлтый) видна на практике.

4.6(29)
51

Проекты на Raspberry Pi PicoПроектов с блоками: 10

Мигание встроенным светодиодом Raspberry Pi Pico (Pico и Pico W)
#147Новичок

Мигание встроенным светодиодом Raspberry Pi Pico (Pico и Pico W)

Первый проект серии Raspberry Pi Pico! Мигаем зелёным встроенным светодиодом, чтобы проверить, что плата работает, — классический первый опыт «Hello World». НИКАКИХ внешних компонентов, только Pico и USB-кабель. Код написан на MicroPython (официальном языке, поддерживаемом Raspberry Pi Foundation). Изучи в Thonny IDE класс machine.Pin, режим Pin.OUT, методы led.on()/off() и time.sleep(). Каждое переключение видно в выводе (REPL).

5.0(1)
10
Raspberry Pi Pico: управление внешним светодиодом (макетная плата)
#148Новичок

Raspberry Pi Pico: управление внешним светодиодом (макетная плата)

Следующий шаг после встроенного светодиода Pico: подключить внешний светодиод на макетной плате и управлять им через пин GP14. В этом проекте ты узнаешь, как использовать любой пин GPIO общего назначения у Pico как выход, какая полярность у светодиода (длинная ножка = анод/+, короткая = катод/–) и зачем нужен токоограничивающий резистор (220Ω). Без резистора через светодиод пойдёт слишком большой ток, и он может сгореть. Схема очень простая: Pico GP14 → резистор 220Ω → светодиод → GND.

4.5(2)
7
Два попеременно мигающих светодиода на Pico (узор мигалки)
#149Новичок

Два попеременно мигающих светодиода на Pico (узор мигалки)

Следующий шаг после одного светодиода на Pico: два светодиода мигают попеременно по классическому узору мигалки. Когда один гаснет, другой загорается — самый простой пример согласованной работы нескольких GPIO. В этом проекте два светодиода разных цветов (красный на GP14, зелёный на GP13) меняются состояниями каждые 500ms. Метод MicroPython Pin.toggle() делает код коротким и понятным. Та же логика лежит в основе светофоров, полицейских мигалок, бегущих огней и многих светодиодных анимаций.

5.0(2)
19
Симулятор светофора на Pico (3 светодиода по очереди)
#150Новичок

Симулятор светофора на Pico (3 светодиода по очереди)

Настоящий светофор на красном, жёлтом и зелёном светодиодах — первый проект серии Pico с 3 светодиодами! Зелёный 4 с «едем», жёлтый 1,5 с «внимание», красный 3 с «стоп» и красный + жёлтый 1 с «приготовиться» (европейская схема светофора). Изучи объявление функций (def all_off()), логику конечного автомата (последовательность) и синхронизацию нескольких GPIO. Простая схема: 3 светодиода на GP11 (зелёный), GP12 (жёлтый), GP13 (красный), у каждого токоограничивающий резистор 220Ω.

4.0(1)
12
Полицейский стробоскоп на Pico (красный + синий)
#151Новичок

Полицейский стробоскоп на Pico (красный + синий)

Имитируем мигалку полицейской машины на Raspberry Pi Pico в самом простом виде! Красный и синий светодиоды работают по очереди (мигалка): пока горит красный, синий погашен, и они меняются каждые 0,3 секунды бесконечно. Код записывает два шага прямо в одном цикле while True; скорость задаёт константа WAIT_MS.

4.7(3)
10
Полицейская мигалка на Pico с тройными вспышками (2 светодиода)
#152Новичок

Полицейская мигалка на Pico с тройными вспышками (2 светодиода)

Ритмичная вариация проекта полицейского стробоскопа — мигалка с тройными вспышками! Та же схема на 2 светодиодах (GP11 красный + GP12 синий), но другой узор: красный светодиод трижды быстро вспыхивает, затем трижды вспыхивает синий, и так бесконечно. Этот узор «серия + смена» — самый узнаваемый ритм настоящих полицейских мигалок. Изучи функцию с параметрами def burst(led, count, duration_ms), проектирование ритма и разные визуальные эффекты кодом на одной схеме.

0.0(0)
15
Переключение светодиода кнопкой на Pico
#156Новичок

Переключение светодиода кнопкой на Pico

Кнопка + светодиод — следующий уровень! В отличие от базового проекта с кнопкой, держать кнопку не нужно. Нажми и отпусти → светодиод горит. Нажми и отпусти ещё раз → гаснет (переключение). Схема та же (светодиод GP14, кнопка GP2), но код сильно отличается. Изучи определение фронта (ловлю момента спада 1→0), отслеживание состояния и антидребезг (фильтр механического дребезга). Метод led.toggle() в MicroPython меняет состояние одной строкой.

0.0(0)
9
Плавное затухание светодиода с PWM на Pico (эффект дыхания)
#160Новичок

Плавное затухание светодиода с PWM на Pico (эффект дыхания)

Светодиод больше не просто мигает — он дышит! С помощью PWM (широтно-импульсной модуляции) Raspberry Pi Pico яркость светодиода медленно растёт и медленно падает, как огонёк спящего MacBook. Изучи класс machine.PWM, duty_u16() (16-битная яркость 0–65535), частоту PWM (freq(1000) — 1000 циклов вкл/выкл в секунду, мерцания не видно), циклы range() с шагом (вверх и вниз) и почти аналоговый выход с цифрового пина.

0.0(0)
4

Для кого?

Дети и родители

Программирование для детей запоминается гораздо лучше, когда в конце на столе загорается светодиод. Блоки делают программу понятной, а схему вы собираете вместе.

Учителя и кружки

На занятии по робототехнике или STEM можно сначала объяснить проект на блоках, а затем перейти к коду. Для каждого проекта уже готовы список деталей и схема подключения.

Новички

Блочное программирование Arduino — самый быстрый способ понять логику первых проектов. Начни с блоков и переходи к коду, когда почувствуешь уверенность.

Частые вопросы

Что такое блочное программирование?

Это способ программирования, при котором команды показаны блоками, соединяющимися как кусочки пазла, а не набираются текстом. Опечаток не бывает, поэтому новичкам и детям легче понять логику программы.

У скольких проектов BlueGrays есть блоки?

Сейчас у 111: проекты на Arduino (76), ESP32 (25) и Raspberry Pi Pico (10). Список растёт по мере того, как мы переводим в блоки новые проекты.

Блочный код бесплатный?

Приложение бесплатное. Блоки и код проектов с блоками открыты всем (бесплатных: 31). В остальных проектах блоки, как и код, открываются с Premium.

Можно ли загрузить блоки прямо в плату?

Нет. Блоки помогают читать и понимать программу, а в плату всегда загружается настоящий код проекта. Скопируй его в Arduino IDE или в Thonny для Pico и загрузи.

Можно ли собирать свои программы из блоков?

Пока нет. Мы готовим блоки для каждого проекта и сопоставляем их с кодом один к одному, поэтому за блоками всегда стоит проверенная работающая программа.

Чем это отличается от Scratch или mBlock?

В Scratch и mBlock ты перетаскиваешь блоки на компьютере и пишешь свою программу. В BlueGrays у каждого проекта с блоками есть схема подключения, список деталей и настоящий код, а блоки — это удобная для чтения версия этого кода. Одно дополняет другое.

Подходит ли это детям? С какого возраста можно начинать?

Дети лет 9–10, которые уверенно читают, могут начинать вместе со взрослым. Для первых проектов не нужна пайка: они собираются на макетной плате со светодиодами, кнопками и зуммером.

На каких языках доступны блоки?

На английском, турецком, немецком, испанском, французском и итальянском. Блоки показываются на языке приложения; если приложение на русском, блоки отображаются на английском.

Приложение BlueGrays

Начни блочное программирование в телефоне

Блоки, схема подключения, список деталей и настоящий код на одном экране. Бесплатно на iOS и Android.

Загрузите в App StoreСкачать из Google Play

Страницы платформ