Перейти к содержимому
falang.ruEN

Настройка проекта

Каждый Arduino-проект начинается с короткого диалога «Новый проект…» и сразу получает три фиксированных документа — setup, loop и Devices — так что для описания вашей схемы подключения всегда есть отдельное место, а не только код.

  • Файл > Новый проект… (или Ctrl+N, или кнопка Новый проект… на стартовой странице) открывает диалог, где нужно указать имя, папку (она следует за именем, пока вы не выберете свою через Browse…) и плату.

  • Список плат покрывает самые распространённые: Uno, Nano, Nano (старый загрузчик), Mega 2560 и ESP32 Dev Module.

  • Плата выбирается один раз и больше не меняется. Она записывается в falang/config/arduino.json внутри папки проекта — эта настройка версионируется вместе со всем остальным в проекте — и каждая последующая компиляция, загрузка и отладочная загрузка берут её оттуда. Панель Build & Upload показывает плату как обычный текст — выбора платы там больше нет, нужно выбрать только порт.

  • Если открыть проект, созданный до появления этой возможности, он считается платой Uno, а файл конфигурации записывается при первом же открытии — дальше такой проект ведёт себя так же, как и любой новый.

  • setup и loop — обычные функциональные документы, тот же редактор, что и у любой другой функции — но закреплённые: дерево проекта не предлагает для них ни удаление, ни переименование, ни перетаскивание, а новый документ в корне проекта нельзя назвать setup или loop. Они существуют всегда и компилируются напрямую в собственные setup()/loop() Arduino.

  • Devices — третий закреплённый документ, но это не схема, а небольшая форма для описания подключённого оборудования, а не кода (см. ниже).

Две таблицы, обе напрямую попадают в сгенерированный setup():

  • Цифровые пины — номер пина, режим (Input, Output или Input (pull-up)) и необязательная метка для памяти. Каждая строка превращается в один вызов pinMode(…) в начале setup(), в том порядке, в котором строки перечислены — больше не нужно писать это вручную в блоке кода.

  • Devices — выберите встроенный драйвер, дайте экземпляру имя и заполните запрашиваемые поля. LCD1602 (I2C) — первое встроенное устройство: у него нужно указать только I2C-адрес дисплея (распространённые варианты — 0x20, 0x27, 0x3E — предлагаются в выпадающем списке). LCD1602 (Parallel) — тот же дисплей, но подключённый напрямую к 6 GPIO-пинам вместо I2C — для плат или схем без I2C — и запрашивает эти 6 пинов (RS, EN, D4-D7) вместо адреса. Добавление любого из них добавляет собственный вызов инициализации сразу после настройки режимов пинов.

  • Все встроенные драйверы объявляют секцию устройства, поэтому все они есть в этом списке (DHT: пин данных и датчик; HC-SR04: пины Trig и Echo; сервопривод: пин; RGB-лента: пин данных и длина; LCD1602: адрес или пины). Действия драйвера появляются в меню иконок только если в проекте есть хотя бы одно устройство этого драйвера — сначала добавьте устройство здесь, затем вставляйте его действия.

  • Любой драйвер, на который ссылается экземпляр устройства, автоматически включается в сборку — его исходные файлы и #include добавляются в скетч, даже если ни один узел-действие нигде в setup/ loop его не вызывает.

Плата уже зафиксирована, поэтому Build & Upload просит выбрать только порт. Сгенерированный скетч записывается в src/sketch/sketch.ino внутри папки проекта (вместе с нужными файлами драйверов) — больше нет скрытой папки .build, о которой нужно помнить. Сгенерированный код можно открыть и прочитать как любой другой файл, и, поскольку он лежит внутри src/, он попадает в историю версий точно так же, как и всё остальное в проекте.