Программы для программирования ардуино. Визуальные среды программирования микроконтроллеров: обзор популярных инструментов

Какие визуальные среды подходят для программирования Arduino и Micro:bit. Как выбрать оптимальный инструмент для обучения детей робототехнике и электронике. На что обратить внимание при сравнении различных сред разработки для микроконтроллеров.

Содержание

Особенности популярных визуальных сред программирования

В статье рассматриваются следующие визуальные среды для программирования микроконтроллеров:

  • KittenBlock
  • MindPlus
  • Snap4arduino
  • mBlock5
  • mBlock3

Ключевые особенности, на которые обращается внимание при анализе:

  • Возможность интерактивного взаимодействия с микроконтроллером в реальном времени
  • Скорость работы в интерактивном режиме (чтение и запись состояния портов)
  • Простота подключения и настройки микроконтроллера
  • Поддержка создания автономных программ
  • Наличие библиотек для работы с датчиками и устройствами
  • Возможность изучения текстовых языков программирования (C, Python)

KittenBlock: универсальная среда на базе Scratch 3

KittenBlock — это визуальная среда на основе Scratch 3, позволяющая программировать Arduino и Micro:bit. Ключевые особенности:


  • Работает в Windows 7 и 10
  • Поддерживает интерактивный режим работы с Arduino и Micro:bit
  • Позволяет создавать автономные программы
  • Имеет расширения для различных робототехнических наборов
  • Дает возможность изучать C (Wire) и Python

Скорость работы в интерактивном режиме довольно хорошая — около 150 циклов чтения/записи за 10 секунд. Это позволяет использовать KittenBlock для создания простых игр с Arduino в качестве контроллера.

MindPlus: мощный инструмент с акцентом на продукцию DFRobot

MindPlus — среда разработки от компании DFRobot, также основанная на Scratch 3. Особенности:

  • Отличная скорость чтения данных с датчиков (322 цикла за 10 секунд)
  • Низкая скорость записи (46 циклов за 10 секунд)
  • Простой процесс подключения и настройки Arduino
  • Большое количество расширений для продукции DFRobot
  • Возможность изучения C и Python

MindPlus отлично подходит для создания игр и проектов с активным использованием датчиков. Низкая скорость записи ограничивает возможности по управлению моторами в реальном времени.


Snap4arduino: идеальное решение для интерактивного режима

Snap4arduino — уникальная среда, ориентированная на интерактивное взаимодействие с Arduino:

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

Snap4arduino идеально подходит для проектов, требующих быстрого обмена данными между компьютером и Arduino. Может использоваться в связке с MindPlus для упрощения процесса прошивки платы.

mBlock5: новая версия популярной среды

mBlock5 — обновленная версия mBlock на базе Scratch 3. На момент написания статьи имела ограниченную функциональность:

  • Поддержка только оригинальных Arduino Uno и Mega2560
  • Работа только в режиме создания автономных программ
  • Отсутствие интерактивного режима (обещан в будущих обновлениях)
  • Хорошая поддержка наборов компании MakeBlock

mBlock5 пока не оправдывает ожиданий пользователей предыдущей версии, но активно развивается.


mBlock3: проверенное решение для Arduino Uno

mBlock3 — предыдущая версия среды на базе Scratch 2, до сих пор популярная среди педагогов:

  • Поддержка интерактивного режима и создания автономных программ
  • Средняя скорость работы (около 14 циклов чтения/записи в секунду)
  • Большое количество методических материалов и расширений
  • Ориентация на максимальное использование возможностей Arduino Uno

mBlock3 остается хорошим выбором для обучения основам программирования Arduino, особенно в сочетании с расширением AdvancedArduino.

Выбор оптимальной среды для обучения

При выборе визуальной среды программирования для обучения детей робототехнике следует учитывать несколько факторов:

  • Возраст и уровень подготовки учащихся
  • Имеющееся оборудование (Arduino, Micro:bit, наборы других производителей)
  • Цели обучения (знакомство с электроникой, создание автономных устройств, разработка игр)
  • Необходимость перехода к текстовым языкам программирования

Для начального знакомства с микроконтроллерами подойдут KittenBlock или MindPlus. Они обеспечивают простое подключение и интуитивно понятный интерфейс. Для более глубокого изучения возможностей Arduino рекомендуется использовать mBlock3 с расширением AdvancedArduino.


Перспективы развития визуальных сред программирования

Визуальные среды программирования микроконтроллеров продолжают активно развиваться. Основные тенденции:

  • Переход на базу Scratch 3 для улучшения пользовательского опыта
  • Расширение поддержки различных микроконтроллеров и робототехнических наборов
  • Улучшение производительности в интерактивном режиме
  • Интеграция возможностей машинного обучения и искусственного интеллекта
  • Развитие облачных версий сред разработки

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


Arduino: ТОП-3 графических сред программирования

В последние годы кружки программирования и робототехники стали крайне популярны и доступны даже для учеников начальной школы. Это сделалось возможным благодаря применению графических сред программирования, которые, надо отметить, активно используются и крупными компаниями. Чтобы рассказать о графических средах программирования, мы выбрали три наиболее популярных из них.

Visuino

Visuino — это бесплатная графическая среда, работающая на базе совместимых с Arduino промышленных контроллеров (ПЛК) Controllino. Она дает возможность создания сложных систем автоматизации и решений IoT (Internet of Things, интернета вещей), причем сделать это можно, просто перемещая и соединяя визуальные блоки. Программная среда автоматически генерирует код для промышленных контроллеров.

Итак, что надо сделать. Выбираем компоненты (модули) с панели компонентов и перемещаем их в область проектирования. Затем их необходимо соединить и настроить свойства. Это делается с помощью инспектора объектов.

К плюсам Visuino относится большой набор компонентов для математических и логических функций, сервоприводов, дисплеев, интернета и пр.

Когда ПЛК запрограммирован, графическая среда подсказывает доступный способ подключения к контроллеру. Это может быть последовательный порт, Ethernet, Wi-Fi или GSM.

Наконец ваш проект готов: все контроллеры прописаны, все работает. Теперь, нажав на логотип Arduino, расположенный на верхней панели, вы заставите Visuino создать коды для Arduino и открыть среду его разработки (Arduino IDE), через которую уже можно скомпилировать код и загрузить его в ПЛК.

Совет. Если установленная плата не соответствует вашему Arduino, вы можете изменить ее с помощью команды «Select Board» (Выбрать панель).

Scratch

Эта графическая среда программирования была создана в 2003 году, когда группа сотрудников MIT Media Lab решила разработать язык программирования, доступный абсолютно для всех. В итоге через некоторое время публике был представлен Scratch.

Больше всего, пожалуй, он похож на Lego. По крайней мере, принцип тот же: это объектно ориентированная среда, в которой программы собираются из деталей, разноцветных и ярких. Эти детали можно перемещать, видоизменять, заставлять взаимодействовать различным образом. Основа Scratch — блоки команд, таких как сенсоры, переменные, движение, звук, операторы, внешность, перо, контроль и пр. Встроенный графический редактор дает возможность нарисовать любой объект. Не прошло и пяти лет с момента создания Scratch, как возник проект Scratch для Arduino (сокращённо — S4A), позволяющая программировать ПЛК Arduino.

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

Совет. Для новичков в Scratch существует специальный ресурс: https://scratch-ru. info.

ArduBloсk

Когда человек уже полностью освоил Scratch, но еще не дорос до Wiring, на котором программируются Arduino-совместимые платы, самое время посоветовать ему написанный на Java инструмент ArduBloсk. Особенно хорош он для тех, кто увлекается робототехникой.

В чем же разница? Дело в том, что Scratch не умеет прошивать Arduino, он лишь управляет его ПЛК через USB. Таким образом, Arduino не может работать сам по себе, ведь он зависит от компьютера.

По сути, ArduBloсk — это промежуточный этап между детской Scratch и вполне профессиональной, хоть и доступной Visuino, поскольку так же, как последняя, обладает возможностью перепрошивки Arduino-совместимых контроллеров.

Совет. Не забудьте установить на свой ПК Java-машину. Это не займет много времени.

Итак, больше графических сред — хороших и разных. Да пребудет с вами Arduino.

Фото: компании-производители, pixabay.com

Читайте также:

Обзор визуальных средств программирования микроконтроллеров (часть 2)

Жизнь не стоит на месте, и практически одновременно с публикацией первой части обзора появилась новая версия одной из рассматриваемых нами программ. Это добавило работы и поставило новые вопросы, в результате часть таблицы, представленной в прошлой публикации, теперь выглядит по-другому. Модифицированную таблицу можно увидеть в конце статьи.

Внимание! На сайте www.lab169.ru сделан репост этой публикации с полно-
размерными иллюстрациями и возможностью скачать все файлы проектов:

www.lab169.ru/2018/12/25/обзор-визуальных-средств-программирования-микроконтроллеров-часть-2

В прошлый раз мы обсудили особенности программ MicroBlocks и MakeCode. На повестке дня сегодня следующие визуальные среды.

  1. KittenBlock
  2. MindPlus
  3. Snap4arduino
  4. mBlock5
  5. mBlock3

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

Трудно переоценить то, насколько важно такое богатство возможностей в контексте решения образовательных задач. Одно из наиболее очевидных применений вышеописанному — разнообразные физические эксперименты, а также создание компьютерных моделей физических объектов, явлений и процессов. Например, моделирование движения свободнолетящего тела, моделирование столкновения двух тел, и прочее моделирование физической реальности, требующееся при создании простых и сложных компьютерных игр.

Но даже если не обращаться к компьютерным играм, интерактивность очень помогает осваивать работу с микроконтроллерами. Достаточно щелкнуть по блоку «digitalWrite» мышкой, и светодиод на плате загорится. А если щелкнуть по блоку «analogRead», мы сразу увидим цифровое значение, возвращаемое аналоговым портом, к которому подключен датчик (датчик освещённости, например).

Подобную интерактивность как раз и обеспечивают описанные ниже программы, а также программа MicroBlocks, которую мы обсуждали в прошлый раз.

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

 

KittenBlock

www.kittenbot.cc

При описании этого программного продукта мне придётся упомянуть о массе «хитростей», но результат того стоит.

Текущая версия — 1.8.1 (не изменялась с момента прошлой публикации). Однако на web-сайте очень долго лежала лишь версия 1.6.5. Не так давно сайт обновился, на нём пропала информация о «старых» (но для нас более чем интересных и актуальных) продуктах компании KittenBot, зато появился инсталлятор программы KittenBlock версии 1.8.0. И не исключено, что ссылок на новые версии тоже долго не будет.

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

KittenBlock базируется на Scratch 3, при этом работает не только в Windows 10, но и в Windows 7, позволяет интерактивно взаимодействовать с некоторыми контроллерами на базе Arduino, а также с Micro:bit. Иными словами, у нас появился инструмент, позволяющий писать игры, в которых Micro:bit либо Arduino Uno с подключенными сенсорами будут играть роль игрового пульта. И писать программы автономной работы для устройств на базе этих контроллеров, само собой.

Следующая хитрость. Щелкнув по списку устройств (изначально отображается как «Нет устройства») и выбрав Arduino Uno, а затем установив соединение с нужным коммуникационным портом (щёлкнув по надписи «Не подключено»), Вы НЕ сумеете добиться того, чтобы Ваша плата управлялась интерактивно.

Но данная возможность всё-таки существует! Нужно лишь выбрать вместо Arduino Uno устройство под названием KittenBot. Собственно, именно для управления этим интересным робототехническим набором среда KittenBlock и была изначально создана.

Итак, выбираем «KittenBot», нужный коммуникационный порт (который будет помечен как «UNO» или как «Ch440»), а затем нажимаем кнопку «Обновить прошивку».

Робоплатформа KittenBot базируется на UNO-совместимом контроллере RosBot. На палитре блоков мы видим теперь множество специфических команд, но главное, присутствуют и базовые команды работы с цифровыми и аналоговыми портами.

Реальная скорость чтения и изменения состояния портов при работе в интерактивном режиме в программе KittenBlock не является рекордной, но вполне хороша. Скрипты для тестирования представлены ниже.

При тестировании с платой Arduino Uno скорость чтения состояния двух аналоговых портов составила 151 цикл за 10 секунд. А вот с измерением скорости записи возникли проблемы.

Когда я тестировал одну из старых версий, я получил вполне разумный результат около 150 циклов за 10 секунд. Но среда 1.8.1 демонстрирует 1460 циклов за 10 секунд! Вспоминается старая фантастическая комедия, в которой приборная панель на космическом корабле была промаркирована следующим образом: «Разумная скорость», «Световая скорость», «Безумная скорость».

Число «1460» в данном случае говорит нам лишь об одном: программная среда на самом деле не проверяет, действительно ли плата выполнила отправленную команду, или нет. Реальная скорость выполнения команд много ниже. По результатам других тестов она не превышает 120-160 циклов записи за 10 секунд. Иначе говоря, на практике удаётся мигнуть лампочкой не более, чем 12-16 раз в секунду.

Для оценки реальной интегральной производительности системы «KittenBlock + Arduino Uno» пришлось использовать другой метод, опирающийся на измерение частоты автоколебаний, возникающих при отрицательной обратной связи. Результат — 22 переключения состояния в секунду (11 колебаний в секунду), что вполне годится для неспешной езды по линии, например. Скрипт представлен ниже.

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

Но давайте продолжим обзор среды KittenBlock. Что действительно импонирует в этой программе — возможность работы не только с «голым» Micro:bit, но и с массой устройств на его основе, например, с робототехническим контроллером Robotbit, умеющим управлять четырьмя обычными или двумя шаговыми двигателями, а также восемью сервомоторами. Список разнообразных поддерживаемых наборов и периферии непрерывно растёт и включает в себя продукцию разнообразных компаний.

Как уже было сказано, подготовка контроллера к использованию в интерактивном режиме достаточно проста, хоть и необходимо помнить о некоторых тонкостях. И стандартная прошивка, и пользовательские программы на плату Micro:bit грузятся быстро и просто.

Процесс создания собственных расширений для среды KittenBlock еще предстоит освоить. Но уже сейчас это неплохой инструмент для изучения текстового программирования контроллеров Arduino с помощью языка Wire (по сути это диалект языка C). При сборке графического скрипта мы не только сразу видим изменения в тексте создаваемой программы, её можно нажатием мыши загрузить в Arduino IDE для дальнейшего редактирования.

Достаточно важно с точки зрения изучения языка Wire то, что разработчики KittenBlock не стали идти по пути неоправданного упрощения. В своих программах необходимо явно указывать нужный режим работы того или иного порта («Вывод режим INPUT/OUTPUT/INPUT_PULLUP»), а также скорость работы последовательного соединения. Все эти требования обусловлены использованием среды Arduino IDE, об этом мы будем говорить чуть подробнее, когда зайдёт речь о среде mBlock3 с расширением AdvancedArduino.

Программируя плату Micro:bit можно изучать язык Python. Точно так же все изменения в графическом сприпте будут отражаться в текстовом окне с правой стороны. При желании можно сделать изменения непосредственно в тексте, сохранить его, загрузить уже использованный ранее, и лишь после этого нажать на кнопку «Выполнить скрипт Python».

А ещё благодаря разработчикам компании KittenBot у нас есть возможность загрузить дистрибутив MakeCode for Micro:bit, работающий без интернет-соединения под управлением операционной системы MS Windows 7.

kittenbot.cc/software

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

 

MindPlus

www.mindplus.cc

ОЧЕНЬ китайская программа, продукт компании DFRobot. Этот производитель предлагает массу интересных товаров. И «китайское» в данном случае означает качественное, поскольку это то, что китайцы делают для себя, а не для всего остального мира.

Когда Вы зайдете на сайт MindPlus, не пугайтесь и не ищите кнопку перевода на русский язык, просто скачайте дистрибутив (этот квест будет совсем несложен). После запуска инсталлятора нужно будет выбрать английский язык. После запуска программы тоже, и это будет чуть сложнее (из окна выбора устройств выйти и нажать на значок с шестерёнкой).

Текущая версия программы — 1.5.0, раньше на сайте лежала версия 1.2.1, и результаты замера скорости работы именно этой старой версии вошли в таблицу в первой части обзора. Новая таблица с результатами и новой и старой версии в конце статьи.

MindPlus также базируется на Scratch 3 и позволяет создавать для плат Arduino Uno и Micro:bit программы для работы в интерактивном и в автономном режимах.

После того, как Вы настроили язык, подключить плату Arduino Uno будет совсем несложно. Следует щёлкнуть по значку «Extensions» в левом нижнем углу, выбрать вкладку «Board», затем «Arduino Uno». И как только Вы укажете коммуникационный порт («Connect device», порт, помеченный как UNO или Ch440), Вы увидите, что MindPlus попытается соединиться с платой, и спустя несколько секунд самостоятельно начнёт загрузку собственной прошивки (этот процесс отображается над областью Сцены). Пожалуй, с точки зрения удобства подготовки платы Arduino к использованию, всё реализовано наилучшим образом.

После завершения прошивки Micro:bit придётся ещё повращать плату для калибровки акселерометра, об этом следует помнить (MindPlus не сможет подключиться к Micro:bit до тех пор, пока Вы не завершите этот процесс).

О скорости работы. MindPlus показывает отличные результаты при чтении показаний датчиков, и это позволяет с успехом использовать его для программирования различных игр. За 10 секунд происходит 322 цикла чтения состояния двух аналоговых портов!

Но вот со скоростью записи всё грустно. За 10 секунд удаётся мигнуть светодиодом всего лишь 46 раз. Ужасающе плохой результат. Ни о какой программе езды по линии в интерактивном режиме управления робоплатформой речи не идёт (разве что о программе переползания по линии). Интегральный показатель — 8 переключений состояния в секунду при автоколебаниях. Но даже такой скорости работы более чем достаточно для того, чтобы проверить, загорится ли светодиод, если щелкнуть мышкой по графическому блоку, изменяющему состояние порта.

Предоставляемых разработчиками расширений достаточно много, и хотя все они предназначены для работы с продукцией компании DFRobot, могут использоваться и с товарами других производителей. Например, датчик температуры DHT11/22 работает одинаково, независимо от того, кем именно он произведён.

Возможность изучать языки текстового программирования Wire и Python тут тоже присутствует, хотя на мой взгляд, у MindPlus в этом плане больше шероховатостей, чем у KittenBlock. Кстати, оба программных продукта пока не позволяют запускать несколько параллельных процессов на Micro:bit (надеюсь, Вы помните, что MakeCode и MicroBlocks умеют это делать, и насколько это важно).

Обзор программы MindPlus можно было бы закончить словами: «Несмотря на недостатки, отлично подходит для программирования игр, в остальных случаях лучше всё-таки выбрать что-то иное». Однако существует один дополнительный неожиданный аспект, который нельзя не учитывать, когда мы говорим о MindPlus. Эта программа использует для коммуникации с платой Arduino один из вариантов протокола Firmata, а именно этот протокол требуется для работы уникальному продукту в нашем обзоре — среде Snap4arduino.

 

Snap4arduino

snap4arduino.rocks

С точки зрения задачи создания программ автономной работы для микроконтроллеров возможности этой графической среды очень скромны. Да действительно, получается преобразовать графический скрипт в текстовой скетч, а потом найти его на диске и загрузить в Arduino IDE. И только. Никаких проработанных библиотек для подключения разнообразных датчиков и исполнительных устройств, присутствует лишь минимальная функциональность. Даже последовательное соединение использовать нельзя, а как без этого отлаживать программы? По сути, таким образом мы можем создать лишь заготовку будущего проекта, которую потом придётся «дорабатывать напильником».

Однако у среды Snap4arduino есть неоспоримое достоинство: идеальная, скоростная и надежная работа с микроконтроллерами в интерактивном режиме. И при чтении состояния портов, и при их изменении. Для проектов, в которых необходима достаточная скорость работы с большим количеством портов, среда Snap4arduino совершенно незаменимый инструмент.

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

«Хардкорные ардуинщики» лишь снисходительно улыбнутся, прочитав такое. «Вот ведь проблема!» Но это не отменяет того факта, что для большинства начинающих это действительно может оказаться непреодолимым препятствием. И уж тем более для учеников начальной школы. Особенно когда нет возможности прошить плату один раз и навсегда. Ведь достаточно загрузить на нее альтернативную программу, и процедуру прошивки придётся повторять.

Но теперь появился выход: оказывается, после того, как мы прошьём плату Arduino Uno в среде MindPlus, становится возможно работать и в среде Snap4arduino!

Таким образом, программы MindPlus и Snap4arduino представляют собой отличную «связку», хорошо работают вместе, дополняя возможности друг друга.

Среда Snap4arduino работает чрезвычайно быстро с платой, на которую загружена прошивка StandartFirmata, и медленнее (но всё равно очень быстро) с платой, на которую загружена прошивка MindPlus, и в режиме чтения, и в режиме записи. Парадоксальным образом прошивка MindPlus ничуть не ухудшает общую интегральную производительность системы. Конкретные цифры можно посмотреть в таблице.

Нужно сказать, что всё вышеизложенное даёт основания для уверенности в том, что проблемы со скоростью записи в среде MindPlus будут скоро устранены.

 

mBlock5 for PC

www.mblock.cc/mblock-software

Разработка компании MakeBlock, новая версия (5.0.0-RC) легендарной программы mBlock, теперь на базе Scratch 3. Чрезвычайно ожидаемый многими продукт, который этих ожиданий пока так и не оправдал.

В настоящий момент позволяет программировать лишь контроллеры Arduino Uno и Mega2560 (но лишь оригинальные Uno и Mega2560) и Micro:bit, но лишь для работы в автономном режиме. Поддержку интерактивного режима обещают.

Для чего пока действительно подходит mBlock5, это для программирования собственных робототехнических наборов компании MakeBlock: mBot, mBot Ranger, Neuron и особенно, Codey Rocky. Причём последний имеет забавную разъёмную конструкцию из головы (Codey) и шасси (Rocky), базируется на ESP32, и при создании программ есть возможность использовать несколько параллельных процессов.

 

mBlock 3 for PC

www.mblock.cc/mblock-software

Текущая версия 3.4.11, и таковой, судя по всему, и останется. Продукт уже достаточно старый, базируется на Scratch 2, и в этом есть как свои недостатки, так и свои достоинства.

Скорость работы маловата, но в большинстве случаев её хватает (чтение — 14,4 цикла в секунду, изменение — тоже 14,4 цикла в секунду). Если проект предполагает исключительно чтение состояния и только лишь одного сенсора — вообще нет проблем.

Интегральная производительность на минимально приемлемом уровне (16 переключений состояния в секунду).

Это ПЕРВАЯ визуальная среда, в которой стало возможно использовать и интерактивный режим, и режим создания программ автономной работы («Arduino mode»). Именно для среды mBlock3 к настоящему моменту написано максимальное количество разнообразных методических материалов, а также разнообразных расширений, некоторые из которых трансформируют продукт до неузнаваемости.

mBlock3 с современными 32-разрядными контроллерами работать (считается, что) неспособен, и в настоящий момент представляет собой реализацию идеи «с минимальными усилиями выжать из Arduino Uno почти максимум». А это значит, что программная среда mBlock3 годится и для знакомства с платформой Arduino, и для того, чтобы создавать на базе Arduino Uno проекты, значительно превышающие по сложности основную массу тех, что наводнили Youtube и руководства по программированию Arduino IDE.

Здесь следует упомянуть об одном принципиально неустранимом недостатке сочетания «Scratch+Arduino». Восьмиразрядные платы Arduino имеют существенно меньшую производительность, чем любой компьютер, на котором «крутится» Scratch, а это значит, что поддержку всех возможностей настолько высокоуровневого языка как Scratch на платформе Arduino обеспечить просто не получится. Мы можем составлять программы с использованием блочного языка Scratch. Но вместо списков нам придется создавать массивы, и придумывать для этого специальные блоки. Вместо универсальной переменной с динамической типизацией, которая может хранить и строку, и целое число, и действительное число, нам придётся использовать специальные придуманные самостоятельно блоки для создания типизированных переменных (byte, int, float).

Единственный способ радикального преодоления вышеописанной проблемы — повышение производительности микроконтроллеров и отказ от языков низкого уровня в пользу таких, которые обладают теми же самыми свойствами, что язык Scratch (например, возможность работы со списками, как в Python). Что мы можем сделать пока? До тех пор, пока жизнь заставляет использовать низкоуровневые языки (в том числе при обучении детей), хотя бы немного попытаться нивелировать их недостатки. Ведь за высокоуровневыми языками будущее! Программирование на языках низкого уровня тоже будет использоваться. Но ОЧЕНЬ редко и лишь ОЧЕНЬ узкими специалистами.

«Плохая» (условно) новость: чтобы перейти к «продвинутому» программированию микроконтроллеров Arduino в среде Scratch язык Wire учить придётся. Хорошая новость заключается в том, что теперь его не требуется зубрить! Требуется просто понимание особенностей языка: чем локальная переменная отличается от статической или глобальной, например. Или что произойдёт, если переменной типа byte присвоить значение 255, а потом увеличить её значение ещё на единицу. Кстати, для ответов на подобные вопросы незачем штудировать толстенные фолианты, достаточно посетить сайт arduino.ru, раздел «Программирование».

arduino.ru/Reference

Именно для нивелирования недостатков низкоуровневого языка Wire было создано расширение для среды mBlock 3, которое называется AdvancedArduino. И до тех пор, пока мы в нашей стране не перейдём поголовно к использованию в процессе обучения контроллеров, подобных Micro:bit, Calliope, Adafruit Circuit PlayGround Express и т.д., это расширение будет позволять детям извлекать из программирования удовольствие и пользу.

Итак, сегодня я хочу рассказать не просто о программе mBlock3, а о связке  «mBlock3 + AdvancedArduino Extension».

Процесс установки расширения AdvancedArduino чрезвычайно прост и описание его по ссылке ниже.

www.lab169.ru/mblock/advanced-arduino-extension-v1-0/rus

Но здесь размещено русское описание самой первой версии расширения, которую можно даже скачать в виде ZIP-файла и установить, но это будет ошибкой. Правильнее будет установить свежую версию с англоязычной страницы или прямо с сайта mBlock через менеджер расширений (выбрав из списка расширений, доступных для загрузки).

www.lab169.ru/mblock/advanced-arduino-extension-c-v

Первая версия расширения отличается от всех последующих тем, что в ней отсутствует команда явного переключения режима работы порта из состояния «вход» (INPUT) в состояние  «выход» (OUTPUT) или в состояние «вход с подтягиванием к высокому уровню» (INPUT_PULLUP). Опыт показал, что операция переключения режима работы является базовой, критически важной для понимания принципов работы микроконтроллера, и полезно, если дети будут с самого начала использовать эту команду в явном виде, поскольку это требуется средой Arduino IDE. А среда mBlock перестанет ошибаться, когда мы начнём использовать номер порта в качестве параметра.

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

 Самая свежая версия расширения «AdvancedArduino» в настоящий момент — 2.5, и она включает в себя (помимо заголовка) 10 блоков, работающих как в интерактивном режиме, так и в режиме «Arduino mode» (базовые блоки из расширения «Arduino», но исправленные для устранения ошибок), 1 блок, который можно использовать как в одном, так и в другом режиме («pinMode», в интерактивном режиме никак не влияет на работу программы, mBlock сам при необходимости переключает порт в другой режим), и 57 блоков, которые следует использовать лишь в режиме «Arduino mode».

На любой компьютер с выходом в интернет можно буквально за несколько секунд добавить расширение AdvancedArduino при помощи менеджера расширений среды mBlock3 (не забывайте о наличии поля Search, очень помогающего быстро найти то, что нужно). Кроме того, если возникают вопросы с использованием того или иного блока, в любой момент времени можно обратиться к примерам, воспроизвести их по образцу, либо скачать целиком в готовом виде и проверить, как они работают. Для этого не обязательно запоминать названия сайтов, достаточно в том же менеджере расширений выбрать AdvancedArduino (в списке доступных или в списке установленных расширений) и щёлкнуть по ссылке «More Info». Страница с примерами откроется в окне браузера.

Что же становится доступным после установки? Использование переменных различных типов, массивов, произвольных функций, графических блоков, включающих фрагменты текстового кода, процессов, запускаемых в фоновом режиме и по расписанию, создание процедур обработки аппаратных прерываний, и т.д. Всё это вплотную приближает связку «mBlock3+AdvancedArduino» к профессиональным системам программирования по набору предоставляемых возможностей.

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

 

Приложение.

Таблица результатов тестирования скорости работы Scratch-подобных программных сред.

Название

Чтение

Запись

Интегральный тест

KittenBlock 1.8.1

15,1

146

22

MindPlus 1.2.1

18

4,4

7

MindPlus 1.5.0

32,2

4,6

8

Snap4arduino 1.2.7
(StandartFirmata)

86

28,6

41

Snap4arduino 1.2.7
(MindPlus Firmata)

45,4

22

42

mBlock 3.4.11

14,4

14,4

16

 

Внимание! На сайте www.lab169.ru сделан репост этой публикации с полно-
размерными иллюстрациями и возможностью скачать все файлы проектов:

www.lab169.ru/2018/12/25/обзор-визуальных-средств-программирования-микроконтроллеров-часть-2

Page not found — Лаборатория проектов школы 169

Unfortunately the page you’re looking doesn’t exist (anymore) or there was an error in the link you followed or typed. This way to the home page.


Blog

  • 02/25/2021 — Новое пособие «Дизайн компьютерных игр»
  • 01/22/2021 — Snap4Arduino и проекты «виртуальной» робототехники
  • 01/21/2021 — Cеминар «Программирование микроконтроллеров в визуальных средах. От учебных проектов к профессиональным»
  • 01/18/2021 — Дистанционная внеурочка, материалы занятий по темам Робототехника и Дизайн компьютерных игр
  • 12/01/2020 — Лекция-демонстрация «Комплект на базе робота Makeblock mBot в школе и дома»
  • 11/24/2020 — Профессиональный и личностный успех в проектах технической направленности как фактор формирования социальных установок обучающихся
  • 11/23/2020 — Виртуальная робототехника на Scratch и Snap4arduino
  • 11/16/2020 — Цифровая образовательная среда. Проблемы, решения и влияние на социальные установки. Начало.
  • 11/11/2020 — Представляем 5 главу книги «Scratch и Arduino для юных программистов и конструкторов»
  • 08/25/2020 — Программа физического моделирования Algodoo, первые шаги
  • 08/19/2020 — Средства визуального программирования микроконтроллеров, краткий обзор обновлений
  • 08/04/2020 — Готовим дидактические материалы для внеурочки в условиях продолжающейся пандемии
  • 06/01/2020 — Шаг за шагом моделируем в Scratch гармонические колебания и упругое взаимодействие объектов
  • 04/27/2020 — Шаг за шагом моделируем столкновения объектов в среде Snap4arduino
  • 04/18/2020 — Шаг за шагом моделируем поведение робота в среде Snap4arduino
  • 04/04/2020 — Создание домашних заданий в TRIK Studio
  • 03/27/2020 — Дистанционное обучение робототехнике на платформе TRIK Studio
  • 03/05/2020 — Открытая учебная робоплатформа нового поколения
  • 02/25/2020 — Преемственность учебных материалов в робототехнике, альтернативы mBot
  • 12/12/2019 — Методы распределённой разработки как учебный инструмент в робототехнике
  • 12/10/2019 — Приглашаем на городской семинар «Современные микроконтроллеры и ранняя инженерная профориентация в школе»
  • 12/02/2019 — Открытые зимние состязания Санкт-Петербурга по робототехнике 2019
  • 11/22/2019 — Наш УМК по робототехнике — Победитель конкурса инновационных продуктов!
  • 10/22/2019 — Сборка робота на основе конструктива из набора «Ресурсный набор Lego Mindstorms EV3 (45560)»
  • 09/20/2019 — Наш УМК выставлен на участие в региональном конкурсе инновационных продуктов
  • 09/12/2019 — Семинар «Техносфера современной школы: создание и перспективы использования»
  • 09/01/2019 — Перевод регламента соревнований makeX 2019 года
  • 05/29/2019 — Апробация плат от Elecfreaks
  • 05/26/2019 — 2 место в категории «Следовании по линиии экстремал»
  • 05/15/2019 — Образовательный робонабор под нашу книжку.
  • 04/24/2019 — ME-Sensors 3D (модели для печати защитных пластин)
  • 04/18/2019 — Региональный круглый стол в 169-ой
  • 04/07/2019 — Поздравляем победителей открытых состязаний Санкт-Петербурга по робототехнике 6-7 апреля 2019
  • 03/31/2019 — Открытые соревнованиях по робототехнике Центрального района
  • 03/28/2019 — ИТНШ 2019. «Ноу-хау» на основной площадке конференции.
  • 03/27/2019 — ИТНШ 2019. Выездной семинар в 169-ой
  • 02/22/2019 — 3D-печать на занятиях. Из опыта работы.
  • 02/18/2019 — Fischertechnik. BT Стартовый набор. Пробуем ROBO Pro Light
  • 02/11/2019 — Образовательные продукты Makeblock — традиции, инновации и открытые стандарты
  • 02/02/2019 — Курсы робототехники в 169-ой
  • 01/30/2019 — Первый шаг в мир микроконтроллеров
  • 01/27/2019 — Городские соревнования «Юный конструктор»
  • 12/25/2018 — Обзор визуальных средств программирования микроконтроллеров (часть 2)
  • 12/20/2018 — Городской семинар «Scratch-подобные визуальные среды программирования микроконтроллеров: обзор, сравнение, расширение возможностей, опыт использования»
  • 12/19/2018 — Обзор визуальных средств программирования микроконтроллеров (часть 1)
  • 12/14/2018 — Игрофикация в робототехнике, плюсы и минусы
  • 12/14/2018 — Fischertechnik. BT Стартовый набор. Начинаем апробацию.
  • 12/05/2018 — MakeBlock Ranger. 3D модели для сборки. Вариант 1.
  • 11/22/2018 — Наш УМК — лауреат конкурса инновационных продуктов!
  • 11/21/2018 — Поздравляем нашего выпускника!
  • 10/23/2018 — В 169-ой переведен регламент MakeX Robotics Competition Blue Planet 2018
  • 10/18/2018 — Новое поколение микроконтроллеров и программных средств, в чем отличие?
  • 10/14/2018 — Зачем и как мы учим программировать микроконтроллеры. Как?
  • 10/06/2018 — Робофинист 2018: ведем мастер-классы, представляем новые продукты.
  • 10/05/2018 — Ура! В издательстве БХВ вышла наша новая книжка про роботов!
  • 09/28/2018 — 3D печать в школе — несколько зарисовок из опыта работы.
  • 09/22/2018 — Договор с MakeBlock Co.Ltd и ООО «ЦС Импэкс» о совместных исследованиях!
  • 06/08/2018 — Advanced Arduino Extension — расширение для mBlock3 от А.Григорьева
  • 04/24/2018 — Встреча: MakeBlock, DIGIS, БХВ и 169-ая))
  • 03/28/2018 — ИТНШ 2018. Выездной семинар в 169-ой.
  • 03/27/2018 — ПОФ 2018. Ярмарка «Успешных практик реализации ФГОС»
  • 03/20/2018 — mBot. Собираем оптимальную конфигурацию учебного робота.
  • 03/15/2018 — ПРОБЛЕМЫ ВНЕДРЕНИЯ УЧЕБНЫХ ПРОГРАММ ПО НАПРАВЛЕНИЮ «РОБОТОТЕХНИКА» В ОБЩЕОБРАЗОВАТЕЛЬНОЙ ШКОЛЕ
  • 03/08/2018 — 7-8 марта. Выступление на Робофесте 2018 в Москве.
  • 03/06/2018 — Новый видеоролик о mBot: «лягушка» и «жук»
  • 02/14/2018 — ОПЫТ ПРЕПОДАВАНИЯ РОБОТОТЕХНИКИ В ОБЩЕОБРАЗОВАТЕЛЬНОЙ ШКОЛЕ
  • 01/31/2018 — вебинар «Опыт школ по внедрению Инженерного инновационного класса»
  • 01/30/2018 — Семинар по программированию микроконтроллеров и технологиям «Интернет-вещей»
  • 01/18/2018 — Робототехника и экология. Выступление в Туле.
  • 12/09/2017 — «Робоняша» в 169-ой
  • 12/08/2017 — Новый ролик в видеоблоге: Робот mBot от компании Makeblock. ч.3-1. Расширение: шестиногий робот.
  • 11/30/2017 — Межрайонный мастер-класс
  • 11/25/2017 — 169-ой школе исполнилось 80 лет!
  • 11/18/2017 — Практиканты «Петровского колледжа» в 169-ой
  • 11/15/2017 — Новая книга!
  • 11/07/2017 — Проект «Знакомимся, mBot!»
  • 10/06/2017 — «Умные вещи», новый виток развития технологий
  • 10/05/2017 — Как связать два микроконтроллера по Bluetooth. Настраиваем HC-05 для работы в режиме Master
  • 10/04/2017 — СПО в школе. Давайте вместе заполним список! Часть 1. Поддержка робототехники и конструирования
  • 10/03/2017 — Робототехника… без роботов. Scratch и имитационное программирование. Движение по линии
  • 10/02/2017 — Стандарты для Arduino-роботов как возможность занять правильную нишу в образовательной робототехнике.
  • 10/02/2017 — Использование распределенных ресурсов сетевых партнеров для формирования современной техносферы образовательной организации
  • 10/02/2017 — Визуальное программирование микроконтроллеров в образовании

Среда программирования RobotON Studio

СКАЧАТЬ ПРОГРАММУ

Среда программирования RobotON Studio является графической и разработана специально для детей и взрослых, не имеющих начальных навыков программирования, но имеющих огромное желания заниматься робототехникой на Arduino. Данная программа была разработана программистами «RobotON» и используется как основной инструмент для программирования роботов в наших кружках.

Скриншот программы «RobotON Studio»

Зачем мы создали данный софт? Дело в том, что графическое ПО открывает двери в мир робототехники для студентов любого уровня (особенно для новичков!). Необходимость изучать синтаксис программного кода, искать мелкие ошибки в огромных программах, состоящих из страниц кода, – все это часто приводит к падению интереса у обучающихся, особенно у детей. Обратное происходит, если ребенок сразу видит результат своих действий, интерес в таком случае возрастает многократно!

Принцип работы RobotON Studio следующий: обучающиеся собирают разноцветные блоки в логическую цепочку, программный код, при этом, генерируется автоматически. Загрузка кода в плату Arduino происходит напрямую из программы. Таким образом, пользователи могут управлять различными устройствами, начиная светодиодами и заканчивая различными электромоторами и датчиками. С каждым обновлением мы расширяем базу поддерживаемых устройств, которые могут управляться с помощью среды программирования RobotON Studio.

Программирование Arduino и Arduino-совестимых плат в среде RobotON Studio подходит и для продвинутых пользователей, которые хотят перейти от простого графического программирования к реальному написанию кода. Изучать реальные команды можно, наблюдая за изменением кода в специальном окне RobotON Studio, во время любых взаимодействий с блоками (код генерируется в реальном времени!).

RobotON Studio в наших кружках робототехники

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

Что дает RobotON Studio
  • Возможность программирования Arduino без начальных знаний и навыков программирования
  • Возможность результативного использования детьми от 7 лет
  • Широкий спектр поддерживаемых плат, моторов, датчиков итд.
  • Бесплатное использование для наших учеников
  • Простой и понятный интерфейс
Установка RobotON Studio

Скачать RobotON Studio можно по ссылке. Программа сама устанавливает все необходимые драйвера и настраивает ваш компьютер на работу с любыми платами класса Arduino и китайскими аналогами.

По вопросам получения лицензии, обращайтесь в личные сообщения в группу в ВК или на почту [email protected]

Стоимость лицензии на использование ПО «RobotON Studio»:

Среда разработки для Arduino: программирование контроллера

Покупая плату Arduino, нужно понимать где и как можно запрограммировать этот контроллер, а для этого есть официальная среда разработки.

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

Среда разработки Arduino IDE состоит из набора специфичных библиотек и драйверов, необходимых для корректной работы с контроллером. Установив программу и запустив ее, вы увидите интерфейс, похожий на простой текстовый блокнот, но с подсветкой синтаксиса. В этот текстовый блокнот и пишется программа для контроллера.

С помощью встроенных библиотек вы всегда можете подключить дополнительный датчик или дисплей к контроллеру. Имеется возможность проверить код на наличие ошибок. Программа укажет точное место ошибки в коде или где были введены некорректные данные. Если их не исправить, то программа просто не сможет скомпилировать код, и вам не удастся залить скетч в ваш контроллер.

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

Arduino IDE имеет предустановленные скетчи для демонстрации возможности устройства. Это помогает удостовериться, что плата не повреждена и что на нее можно залить программу. Кроме того, базовые примеры позволят вам намного быстрее понять принцип программирования. В базовые примеры входят простые скетчи управления выводами.

Самый элементарный скетч позволяет управлять светодиодом, расположенным на плате. Вы можете подкорректировать данные и заставить светодиод моргать чаще или медленнее, или задать, например, такт мигания каждые две секунды и при этом сделать само горение светодиода на полсекунды. Также можно посмотреть работу программы аналоговых и цифровых выводов, простых и сенсорных дисплеев, сделать проверку различных звуковых элементов и т.д.

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

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

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

В интернете на форумах можно найти гораздо больше информации об интеграции того или иного устройства, описание ошибок, возникающих при программировании и компиляции, и много всего другого. Разработка программ в среде Arduino сделана максимально комфортной и удобной для людей, только начинающих познавать электронику и робототехнику. В статьях на Arduino+ я постараюсь много времени посвятить вопросам работы со средой разработки для Ардуино.

Графическая среда разработки для контроллеров Arduino

Автоматизация и робототехника очень плотно входит в нашу жизнь. Интернет-магазины буквально ломятся от всяких различных плат, контроллеров, компьютеров, датчиков и т.д. Самые бюджетные платы из всех это преимущественно Arduino. У них своя собственная среда разработки, которая требует каких-то элементарных навыков программирования. А что делать «Непрограммистам»?  Технологам например? Или человеку, который хочет внедрить узел автоматики или собрать инкубатор за «Дёшево»? Как раз существует для Arduino графическое программирование, то есть с помощью функциональных блоков.

Приветствую, уважаемые посетители блога. На связи с вами автор, Гридин Семён. Сегодня мы с вами поговорим о языке программирования. Но, не о том, к которым вы привыкли, писать строчки кода, компилировать, соблюдать синтаксис.

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

Для плат Arduino тоже разработана среда, в которой можно писать технологические программы, не зная тонкостей строения кода. Имя среды разработки — FLprog.

Как-то я косвенно писал о ней в своих статьях. Сегодня мы рассмотрим поподробнее.

Установка и запуск среды разработки FLprog

Заходим на официальный сайт FLprog, скачиваем программу. На сайте есть форум, если у вас будут какие-то технические трудности, вы можете обратиться за помощью.

Далее следует стандартная установка пакетов программ.

Запускаем:

Нам предлагаю выбрать проект для SCADA или для контроллера. Для начала рассмотрим проект для контроллера:

Тут в принципе есть два языка программирования по стандарту МЭК — лестничные диаграммы, релейная схема (LD), либо графические блоки (FBD). Кому как удобно, кто как привык. Я выбираю FBD.

С левой стороны дерево проектов, посередине полотно, с правой стороны свойства и все необходимые элементы.

Чем-то очень напоминает вот это (оболочка CoDeSyS 3.5)

Или вот это (оболочка Owen Logic ПР110)

Делаем первый проект на FLProg

Ну что же, первый проект мы с вами уже настроили. Осталось добавить несколько элементов, скомпилировать, связаться с Arduino UNO, залить проект и радоваться.

Давайте попробуем просто помигать 13 светодиодом на плате, самое простое.

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

На самом деле в этой среде достаточно много возможностей. Тут можно подцепить дополнительные модули или контроллеры по Modbus — протоколу.

В правой части проекта можно добавлять различные триггеры, таймеры, счётчики. Можно прицепить датчики, двигатели, различные генераторы перетаскиванием элементов с помощью мыши. Настройки блоков достаточно простые.

Заметьте, я сейчас рекламой не занимаюсь. Я НЕ РЕКЛАМИРУЮ данную среду разработки. Деньги мне за неё не платили. И я не являюсь одним из разработчиков дистрибутива. Я пишу об FLProg потому, что продукт достаточно качественный и хороший.

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

Удачных вам проектов! До встречи в следующих статьях.

С уважением, Гридин Семён

rybinden.ru — Приложения для программирования ардуино

Из этой статьи вы узнаете как начать программировать платы ардуино, с помощью каких приложений это делается.

Установка на windows

Есть несколько способов программирования плат arduino из под windows.
Первый, наиболее распространенный, это официальная среда разработки, для ее использования необходимо
скачать и установить Arduino IDE.

Arduino IDE должна быть доступна с последними версиями скринридера NVDA, если это нет так, то чтобы сделать среду разработки ардуино доступной для работы с помощью скринридеров
нужно установить
java jdk и jre

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

настройка java jdk и jre

1. открыть свойства системы
2. перейти клавишей tab к «дополнительные параметры системы» нажать enter
3. клавишей Tab найти «Переменные среды» и нажать enter
4. выбрать «системные переменные» и нажать клавишу «стрелка вниз» и выбрать PATH
5. перейти к «изменить» и нажать enter
6. удалить любую информацию о пути к джаве и добавить новый путь к JDK путем редактирования path (например C:\Program Files\Java\jdk1.8.0_131\bin. после этого нажать OK для сохранения.
7. добавить две новые системные переменные JAVA_HOME, и JRE_HOME. например, C:\Program Files\Java\jre1.8.0_131\
8. нажать ok.
Для Включения доступность java выполните команду в терминале

%JRE_HOME%\bin\jabswitch -enable

также нужно скопировать нужные файлы из архива по инструкции.

Все готово. Если все сделано правильно перезапустите среду разработки arduino ide и скринридер должен прочесть шаблон скетча или последний открытый скетч, клавишами со стрелками можно осуществлять навигацию по скетчу.

Для загрузки скетча в плату можно использовать горячие клавиши control+u, для открытия монитора порта control+shift+m

Для просмотра ответа, поступившего с serial порта нужно нажать клавишу f6, повторное нажатие этой клавиши отображает скетч.

Если будет использоваться китайский аналог платы arduino, нужно скачать драйвер для китайских плат ардуино.

Другой способ программирования плат ардуино через командную строку с помощью arduino make, arduino-cli и platformio, об них подробнее ниже, так как эти способы чаще используются на linux.

установка на linux

Если вы предпочитаете использовать для разработки любую разновидность linux, можно установить arduino make и можно будет использовать свой любимый текстовый редактор и загружать скетчи через терминал.
1 Установка arduino-mk

sudo apt install arduino-mk

2 Создать папку для скетчей и библиотек

mkdir ~/sketchbook
cd ~/sketchbook
ln -s /usr/share/arduino/Arduino.mk
mkdir blink
cd blink
nano blink.ino или gedit blink.ino

откроется файл со скетчем, отредактировать его и сохранить.
3 Далее создать make файл

nano Makefile

его содержимое может быть примерно таким:

BOARD_TAG = uno
ARDUINO_PORT = /dev/ttyUSB0
ARDUINO_LIBS =
ARDUINO_DIR = /usr/share/arduino
include ../Arduino.mk

Прошивается ардуина командой:

make upload

Доступны команды:

make – компиляция без загрузки
make upload – компиляция и загрузка
make clean – очистка
make depends – обновить
make reset – сбросить ардуину через сериал порт через вывод DTR
make raw_upload – загрузить без первоначального сброса ардуины
make show_bards – список всех плат определенных в boards.txt

Программирование с помощью arduino-cli

установка

curl -fsSL https://raw.githubusercontent.com/arduino/arduino-cli/master/install.sh | sh
arduino-cli core update-index

подключить ардуину к компьютеру и посмотреть командой:

arduino-cli board list

покажет информацию о подключенной плате
если плата не подключена к компу, то выведется сообщение «не найдено плат».
добавляем платы ардуино:

arduino-cli core search arduino
arduino-cli core install arduino:avr
arduino-cli core install arduino:megaavr
arduino-cli core list

создание пустого шаблона скетча

arduino-cli sketch new MyFirstSketch

отредактировать скетч с помощью любого текстового редактора.
компеляция скетча

arduino-cli compile --fqbn arduino:avr:uno Arduino/MyFirstSketch

прошивка платы

arduino-cli upload -p /dev/ttyUSB0 --fqbn arduino:avr:uno Arduino/MyFirstSketch

Более продвинутый способ программирования с помощью platformio

с помощью этого инструмента можно программировать большое колличество микроконтроллеров.
установка pip install platformio
создаем папку проекта mkdir my-project
перейти в папку проекта cd my-project
создание проекта для платы arduino uno pio init --board uno
создаем файл, в котором будет храниться наш исходный код gedit src/main.cpp
прошиваем плату uno pio run -e uno -t upload
документация platformio
Заметка: Приведенные способы программирования не являются единственными, но они проверенны и озвучиваются с помощью скринридеров, nvda для windows и orca для ubuntu.

 

Программное обеспечение | Arduino

Arduino Web Editor

Начните кодирование онлайн и сохраните свои эскизы в облаке. Самая последняя версия IDE включает в себя все библиотеки, а также поддерживает новые платы Arduino.

КОД НАЧАЛО РАБОТЫ

Arduino IDE 1.8.15

Программное обеспечение Arduino с открытым исходным кодом (IDE) позволяет легко писать код и загружать его на плату. Это программное обеспечение можно использовать с любой платой Arduino.

Инструкции по установке см. На странице «Начало работы».

ИСХОДНЫЙ КОД

Активная разработка программного обеспечения Arduino ведется на GitHub. См. Инструкции по созданию кода. Архивы исходного кода последней версии доступны здесь. Архивы подписаны PGP, поэтому их можно проверить с помощью этого ключа gpg.

Arduino с Chromebook

Чтобы запрограммировать Arduino с Chromebook, вы можете использовать веб-редактор Arduino в Arduino Cloud. Настольная версия среды IDE недоступна в Chrome OS.


Экспериментальное программное обеспечение

Arduino IDE 2.0 beta (2.0.0-beta.7)

Новый основной выпуск Arduino IDE стал быстрее и мощнее! В дополнение к более современному редактору и более отзывчивому интерфейсу он имеет автозаполнение, навигацию по коду и даже живой отладчик.

Примечание. Это программное обеспечение все еще находится в статусе beta , что означает, что оно почти завершено, но могут возникнуть незначительные проблемы. Помогите нам протестировать его и поделитесь своим мнением на форуме!

Вы также можете найти дополнительную информацию о выпуске здесь.

ИСХОДНЫЙ КОД

Arduino IDE 2.0 имеет открытый исходный код, и ее исходный код размещен на GitHub.


Другие загрузки

ARDUINO YÚN LINUX OS

OpenWRT — Yún 1.5.3 Обновление образа

Загрузите последнюю стабильную ОС GNU / Linux для вашего Yún. Это делает ваш Yún более стабильным и многофункциональным.

Простая процедура установки (рекомендуется)

Следуйте инструкциям руководства Yún sysupgrade.

Расширенная процедура установки

Эта процедура рекомендуется только опытным пользователям, которые хотят полностью перепрограммировать Yún, включая его загрузчик U-Boot.Эти инструкции по перепрошивке базовых образов предназначены только для справки. Следование им приведет к аннулированию гарантии Yún.


Условия использования

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

Программное обеспечение Arduino предоставляется вам «как есть», и мы не даем никаких явных или подразумеваемых гарантий в отношении его функциональности, работоспособности или использования, включая, помимо прочего, любые подразумеваемые гарантии товарной пригодности, пригодности для конкретных цель или нарушение.Мы прямо отказываемся от какой-либо ответственности за любые прямые, косвенные, косвенные, случайные или особые убытки, включая, помимо прочего, упущенную выгоду, упущенную выгоду, убытки в результате прерывания бизнеса или потери данных, независимо от формы иска или правовой теории в ответственность за которые может быть возложена, даже если было сообщено о возможности или вероятности такого ущерба.

Представляем Arduino IDE 2.0 (бета)

Arduino IDE — это хорошо известное программное обеспечение, которое мы все используем для программирования наших плат.Его разработка началась в 2005 году на основе графического интерфейса проекта Processing и с тех пор не прекращалась. За эти годы бесчисленные часы разработки команды Arduino с помощью активного сообщества сделали Arduino IDE фактическим стандартом для прототипирования электроники. Благодаря расширяемой структуре, основанной на пакетах поддержки модульных плат, IDE поддерживает более 1000 официальных и неофициальных плат ; он переведен на 66 языков , упоминается более чем в 3 000 книгах и продолжает расти: за последний год его скачали более 39 миллионов раз .Больше чем когда либо.

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

Путь от простой IDE к продвинутой IDE

В то время как Arduino IDE предоставляет простой и понятный интерфейс, который идеально подходит для начинающих пользователей, более продвинутые пользователи часто сообщают, что возможности редактирования немного ограничены по сравнению с современными редакторами.Сюда входят такие функции, как отступ кода, сворачивание блоков, автоматическое закрытие скобок, поиск и замена регулярных выражений, переключение комментариев. В дополнение к этому, многие пользователи просили отладку в реальном времени , то есть возможность запускать код на подключенной плате и останавливать его на заданной строке для проверки содержимого переменных, памяти и регистров.

IDE 1.x разработана на Java, и ее монолитная кодовая база затрудняет реализацию таких функций. Java также становится устаревшей технологией для настольных приложений и постепенно вытесняется новыми операционными системами и магазинами приложений, что заставляет нас тратить время на решение проблем совместимости.

В 2018 году мы начали реорганизацию цепочки инструментов, объявив о важном новшестве: arduino-cli, инструмент командной строки Arduino , написанный на Golang, который раскрывает все основные функции IDE, предоставляя опытным пользователям гибкий инструмент, который они могут интегрироваться в выбранную ими профессиональную среду разработки. С тех пор мы ежедневно поддерживаем и улучшаем arduino-cli (попробуйте прямо сейчас, если у вас еще нет!).

В 2019 году мы объявили об альфа-версии новой IDE, построенной на основе arduino-cli и основанной на современном программном стеке (Theia и Electron) под кодовым названием «Arduino Pro IDE», и получили множество положительных отзывов. об этом.2020 год был напряженным годом разработки, и специальная команда разработчиков работала за кулисами, чтобы довести новую IDE от экспериментальной концепции до полнофункционального инструмента .

Пришло время: поприветствуйте Arduino IDE 2.0 (бета)

Мы рады сообщить, что с сегодняшнего дня бета-версия Arduino IDE 2.0 доступна для загрузки, а ее репозитории кода становятся открытыми . Он оснащен современным редактором и обеспечивает лучший общий пользовательский опыт благодаря адаптивному интерфейсу и более быстрому времени компиляции .Не бойтесь попробовать это сегодня: обновление будет беспроблемным, так как интерфейс будет выглядеть очень знакомым. Но давайте посмотрим, что вы найдете.

При наборе текста редактор предлагает автозаполнение переменных и функций в соответствии с включенными вами библиотеками:

При щелчке правой кнопкой мыши по переменной или функции контекстное меню предоставит ярлыки навигации для перехода к строке (и файлу), где они объявлены:

См. Эту страницу, чтобы узнать больше о новых инструментах редактирования.

Но в новой IDE есть еще одна важная функция: живой отладчик , который позволяет запускать код в интерактивном режиме на плате и проверять его выполнение без написания десятков операторов «Serial.println ()». Просто запустите панель отладки, установите точки останова, в которых вы хотите приостановить выполнение, и проверьте содержимое переменных. О, вы даже можете изменить содержимое переменных на лету и возобновить выполнение!

На сегодняшний день отладчик поддерживает все платы Arduino на базе платформ SAMD и Mbed (семейство MKR, Nano 33 IoT, Nano 33 BLE, Portenta, Zero).Сопровождающие ядра Arduino для сторонних плат могут добавить поддержку отладки, добавив соответствующие параметры конфигурации; готовится техническое руководство по этому поводу. Вам нужно будет подключить отладочный зонд, такой как Segger J-link, к контактам JTAG на плате, и вы будете готовы к работе.

Новая IDE основана на платформе Eclipse Theia, которая представляет собой проект с открытым исходным кодом, основанный на той же архитектуре, что и VS Code (протокол языкового сервера, расширения, отладчик). Интерфейс написан на TypeScript, а большая часть серверной части написана на Golang.

Попробуйте прямо сейчас!

Нам нужна ваша помощь, чтобы протестировать новую среду IDE. Мы хотим сделать его идеальным и без ошибок, поэтому не стесняйтесь загружать его сейчас и присоединяться к обсуждению на форуме! Готовы начать? Следуйте нашим инструкциям здесь.

Вы можете следить за любыми ответами на эту запись через канал RSS 2.0. Вы можете оставить отзыв или откликнуться со своего сайта.

альтернативных интерфейсов Arduino — learn.sparkfun.com

Обзор опций

Arduino — это круто! Это наша популярная образовательная платформа в области электроники и лучший выбор для быстрого создания прототипов, но она не для всех.Может быть, это загадочный язык, или IDE на основе Java, или, может быть, это просто бирюзовая граница окна — независимо от ваших рассуждений, если вы пытаетесь избежать IDE Arduino, вот несколько альтернатив, которыми мы хотели бы поделиться .

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

ArduBlock — расширение Arduino для визуального программирования

ArduBlock — это надстройка для графического программирования к стандартной среде разработки Arduino по умолчанию.Вместо запоминания загадочных функций, забвения точек с запятой и отладки кода ArduBlock позволяет вам создавать свою программу Arduino, перетаскивая блокирующие блоки.

ArduBlock — идеальный интерфейс, если вы только начинаете заниматься программированием, электроникой или Arduino. Ознакомьтесь с разделом ArduBlock этого руководства для ознакомления и краткого руководства по началу работы.

Minibloq — Автономное программное обеспечение для визуального программирования

В том же духе, что и ArduBlock, Minibloq — это среда графического программирования , в которой группы блоков накладываются друг на друга для создания вашей программы.Однако, в отличие от ArduBlock, Minibloq — это отдельная программа — установка Arduino не требуется.

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

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

… и выше

Это альтернативы, которые мы обсудим в этом руководстве, но есть много других, которые стоит проверить, в том числе:

  • Scratch for Arduino — Еще визуальное программирование ! Scratch for Arduino (S4A) — это рифф популярной среды программирования Scratch.Если вы опытный пользователь Scratch, это определенно стоит проверить!
  • Modkit — После успешной кампании на Kickstarter, Modkit уверенно движется к созданию еще одной отличной визуальной альтернативы Arduino. Посетите их веб-сайт и познакомьтесь с их визуальной средой на основе браузера .
  • Arduino IDE для Atmel Studio — Atmel Studio — это невероятно мощный инструмент для программирования и отладки микросхем AVR, подобных тем, что есть на Arduino.Если вы ищете более продвинутый подход к Arduino или чипам Atmel в целом, ознакомьтесь с этим расширением для Atmel Studio.

Это расширение может быть чрезвычайно мощным инструментом — в комплекте с реализацией точки останова и множеством функций, к которым вы можете привыкнуть из более продвинутых IDE.

ArduBlock

ArduBlock — это среда программирования, призванная сделать «физические вычисления с Arduino такими же простыми, как перетаскивание».«Вместо того, чтобы писать код, беспокоиться о синтаксисе и (неправильно) расставлять точки с запятой, ArduBlock позволяет визуально программировать с помощью скомпонованного списка блоков кода.

ArduBlock основан на простоте Arduino и представляет собой идеальный шлюз для начинающих к физическим вычислениям. Вместо того чтобы рвать волосы на отладку, вы можете тратить свое время на создание!

Установка ArduBlock

ArduBlock является чем-то вроде «надстройки» к Arduino, поэтому для него требуется, чтобы у вас была установлена ​​Arduino IDE.Однако преимущество этого в том, что Arduino многоплатформенный — ArduBlock работает в Windows, Mac или Linux . Кроме того, наличие уже существующей Arduino упрощает переход от визуального программирования к текстовому программированию, когда неизбежность приближается.

Установка ArduBlock может быть немного сложной — нет установщика, только файл Java, который нужно сохранить в очень определенном месте. Чтобы установить его, выполните следующие действия:

  1. Загрузите и установите Arduino (если вы еще этого не сделали) — Ardublock является расширением IDE Arduino по умолчанию, поэтому для его запуска вам потребуется установить Arduino на свой компьютер.Ознакомьтесь с нашим руководством по установке Arduino IDE, чтобы узнать, как это сделать.
  2. Загрузите ArduBlock — щелкните ссылку слева или перейдите на страницу ArduBlock Sourceforge, чтобы найти последнюю и лучшую версию.
  3. Определите местоположение вашей книги Arduino Sketchbook — это папка на вашем компьютере, в которой по умолчанию сохраняются ваши эскизы и библиотеки. Чтобы найти местоположение вашего блокнота, запустите Arduino, и откройте Настройки , перейдя в Файл> Настройки.Содержимое верхнего текстового поля определяет местоположение вашего альбома для рисования. Запомните это место и закройте Arduino.

  4. Создайте [альбом для рисования] / tools / ArduBlockTool / tool / — файл Ardublock, который вы загрузили ранее, должен находиться в очень определенном месте в вашем альбоме для рисования Arduino. Перейдите в свой альбом для рисования, затем создайте группу из трех каталогов: tools > ArduBlockTool > tool (будьте осторожны, каждая папка чувствительна к регистру ).
  5. Вставьте «ardublock-xxxxxxxx.jar» в / tool / — Вставьте загруженный вами файл Ardublock — файл JAR (Java ARchive) — в последнюю папку в созданном вами гнезде.
  6. Запустите Arduino — или перезапустите его, если он был открыт.
  7. Выберите плату и последовательный порт. — Как и при использовании Arduino, выберите плату и последовательный порт в меню «Инструменты».
  8. Откройте ArduBlock — запустите ArduBlock, щелкнув Tools > ArduBlock .Если вы не видите здесь записи для ArduBlock, проверьте еще раз, чтобы убедиться, что все ваши каталоги правильно набраны и заключены в регистр.

ArduBlock работает рука об руку с Arduino IDE — он полагается на то, что IDE открыта в фоновом режиме, поэтому не закрывает окно Arduino !

Использование ArduBlock

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

Для начала, для каждого скетча ArduBlock требуется программный блок , который вы можете найти в разделе «Управление». Блок Program определяет функции setup и loop , которые требуются каждой программе Arduino.

Оттуда вы можете перетащить больше блоков, привязав их либо к циклу , либо к разделам или , установив секций. Вот попробуйте сделать программу мигания .Блоки набора цифровых выводов , которые производят цифровой вывод (аналог функции Arduino digitalWrite ), находятся в разделе «Выводы». Блок delay миллисекунд , находящийся в разделе «Control», аналогичен функции delay Arduino.

Затем нажмите Загрузить в Arduino , чтобы отправить рисунок на плату Arduino. Вы можете ALT + TAB вернуться в окно Arduino, чтобы проверить статус загрузки кода.

После того, как вы успешно загрузили свой первый скетч, продолжайте экспериментировать и изучать содержимое других ящиков!

Советы и хитрости ArduBlock

Вы можете клонировать блоков или групп блоков, щелкнув правой кнопкой мыши и выбрав «Клонировать».Все, от блока, который вы щелкнули правой кнопкой мыши, до нижней части этой «группы» будет скопировано и вставлено в верхний левый угол окна. Это огромная экономия времени на для больших рисунков.

Вы можете временно удалить код из вашего скетча, перетащив его из всего блока «Программа». Все, что не связано с основным программным блоком, будет проигнорировано при компиляции вашего кода. Это отличный инструмент для отладки — вы можете удалить блок кода из выполнения программы, не удаляя его на самом деле, что очень похоже на комментирование кода.

Наконец, если вы снова взглянете на окно Arduino после загрузки чертежа ArduBlock, вы можете заметить кое-что другое. Чтобы создать ваш код, программа ArduBlock просто анализирует ваши блоки и выводит эквивалентный код Arduino в окно Arduino.

Это отличный инструмент обучения, если вы хотите перейти от графического программирования к текстовому.

Ресурсы ArduBlock

Цифровая песочница SparkFun

В наличии DEV-12651

Цифровая песочница (DS) — это обучающая платформа, охватывающая как программный, так и аппаратный мир.Он оснащен микро…

12

Миниблок

Minibloq — это среда программирования с визуальным управлением для Arduino и других физических вычислительных устройств. Вместо того, чтобы ломать голову над синтаксисом, типами переменных, ошибками компиляции и другими неприятностями кода, Minibloq позволяет создавать вашу программу, используя серию графических блоков.

Помимо нежного визуального введения в программирование, одной из самых крутых функций Minibloq является генератор кода в реальном времени . Когда вы добавляете блоки в чертеж Minibloq, в следующем окне будет сгенерирована эквивалентная строка кода. Это отличный инструмент, если вы хотите перейти от языков графического программирования к тексту.

Minibloq специализируется на робототехнике . Он включает поддержку популярных платформ робототехники, таких как Multiplo и наш RedBot Kit.

Начало работы с Minibloq

Перейдите на страницу загрузки Minibloq, чтобы получить последнюю версию. Имейте в виду, что, по крайней мере, на данный момент Minibloq (в основном) совместим только с Windows .

По умолчанию интерфейс разделен на три столбца — представление оборудования, редактор Minibloq и редактор кода. На главной панели инструментов вверху вы можете выбрать, какие столбцы вы хотите отобразить или скрыть.

Раздел оборудования позволяет вам выбрать вашу Arduino-совместимую плату среди опций, включая RedBoard, Arduino Uno, Arduino Leonardo, RedBot Kit и другие.

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

Наконец, справа есть вид «Сгенерированный код», который является самой мощной обучающей функцией Minibloq. Это огромный помощник в облегчении перехода от визуального программирования к программированию «кодирование».

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

Затем ознакомьтесь с некоторыми из включенных примеров, перейдя в Файл > Примеры . Среди множества примеров эскизов — коллекция специальных программ SparkFun Inventor’s Kit и RedBot Kit. Проверьте их!

Ресурсы Minibloq


Ищете подходящую Arduino?

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

Отведи меня туда!

Все, что вам нужно знать о коде Arduino

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

Плата Arduino подключается к компьютеру через USB, где она подключается к среде разработки Arduino (IDE). Пользователь записывает код Arduino в IDE, а затем загружает его в микроконтроллер, который выполняет код, взаимодействуя с входами и выходами, такими как датчики, двигатели и источники света.

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

Спланируйте свой следующий проект Arduino >>

Среда кодирования Arduino и основные инструменты

Какой язык представляет собой Arduino?

Код Arduino написан на C ++ с добавлением специальных методов и функций, о которых мы поговорим позже.C ++ — это язык программирования, понятный человеку. Когда вы создаете «эскиз» (имя, данное файлам кода Arduino), он обрабатывается и компилируется на машинный язык.

Arduino IDE

Интегрированная среда разработки Arduino (IDE) — это основная программа редактирования текста, используемая для программирования Arduino. Здесь вы будете набирать код, прежде чем загружать его на доску, которую хотите запрограммировать. Код Arduino обозначается как , эскизы .

Примечание. Важно использовать последнюю версию Arduino IDE.Время от времени проверяйте обновления здесь.

Пример кода Arduino

Как видите, IDE имеет минималистичный дизайн. В строке меню всего 5 заголовков, а также ряд кнопок под ними, которые позволяют вам проверять и загружать свои эскизы. По сути, IDE переводит и компилирует ваши наброски в код, понятный Arduino. Как только ваш код Arduino скомпилирован, он загружается в память платы.

Все, что нужно сделать пользователю, чтобы начать компилировать свой скетч, — это нажать кнопку (руководство по этому поводу можно найти ниже).

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

Последовательный монитор и последовательный плоттер

Последовательный монитор Arduino можно открыть, щелкнув значок увеличительного стекла в верхней правой части среды IDE или под инструментами.Последовательный монитор используется в основном для взаимодействия с платой Arduino с помощью компьютера и является отличным инструментом для мониторинга и отладки в реальном времени. Чтобы использовать монитор, вам нужно использовать класс Serial.

В коде, который вы загружаете с сайта circuito.io, есть тестовая секция, которая помогает вам тестировать каждый компонент с помощью последовательного монитора, как вы можете видеть на снимке экрана ниже:

Последовательный плоттер Arduino — еще один компонент Arduino IDE, который позволяет в реальном времени создавать график ваших последовательных данных.Последовательный плоттер значительно упрощает анализ данных с помощью визуального дисплея. Вы можете создавать графики, графики отрицательных значений и проводить анализ сигналов.

Отладка кода и оборудования Arduino

В отличие от других программных платформ, Arduino не имеет встроенного отладчика. Пользователи могут использовать стороннее программное обеспечение или использовать последовательный монитор для печати активных процессов Arduino для мониторинга и отладки.

Используя класс Serial, вы можете печатать на последовательном мониторе, отлаживать комментарии и значения переменных.На большинстве моделей Arduino будут использоваться последовательные контакты 0 и 1, подключенные к USB-порту.

Структура кода

Библиотеки

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

Чтобы импортировать новую библиотеку, вам нужно перейти в Sketch> Import Library

Кроме того, в верхней части вашего файла .ino вам нужно использовать «#include» для включения внешних библиотек. Вы также можете создавать собственные библиотеки для использования в изолированных эскизах.

Определения выводов

Чтобы использовать выводы Arduino, вам необходимо определить, какой вывод используется и его функции. Удобный способ определить используемые контакты:

‘#define pinName pinNumber’.

Функциональные возможности являются входными или выходными и определяются с помощью метода pinMode () в разделе настройки.

Объявления

Переменные

Всякий раз, когда вы используете Arduino, вам необходимо объявить глобальные переменные и экземпляры, которые будут использоваться позже. Вкратце, переменная позволяет вам присвоить имя и сохранить значение, которое будет использоваться в будущем. Например, вы можете сохранить данные, полученные от датчика, чтобы использовать их позже. Чтобы объявить переменную, вы просто определяете ее тип, имя и начальное значение.

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

Экземпляры

В программном обеспечении класс представляет собой набор функций и переменных, которые хранятся вместе в одном месте. Каждый класс имеет специальную функцию, известную как конструктор , которая используется для создания экземпляра класса. Чтобы использовать функции класса, нам нужно объявить для него экземпляр.

Setup ()

Каждый скетч Arduino должен иметь функцию настройки.Эта функция определяет начальное состояние Arduino при загрузке и запускается только один раз.

Здесь мы определим следующее:

  1. Функциональность контактов с использованием функции pinMode
  2. Начальное состояние контактов
  3. Инициализация классов
  4. Инициализация переменных
  5. Логика кода

Loop ()

Функция цикла также является обязательным для каждого скетча Arduino и запускается после завершения setup (). Это основная функция, и, как следует из названия, она запускается в цикле снова и снова.Цикл описывает основную логику вашей схемы.

Например:

Примечание. Использование термина «void» означает, что функция не возвращает никаких значений.

Как программировать Arduino

Основная логика кода Arduino представляет собой структуру «если-то» и может быть разделена на 4 блока:

Setup — обычно записывается в разделе настройки кода Arduino и выполняет вещи, которые нужно сделать только один раз, например, калибровка датчика.

Вход — в начале цикла прочитать входы.Эти значения будут использоваться в качестве условий («если»), таких как показания внешнего освещения от LDR с использованием analogRead ().

Manipulate Data — этот раздел используется для преобразования данных в более удобный вид или выполнения вычислений. Например, AnalogRead () дает значение 0-1023, которое может быть сопоставлено с диапазоном 0-255, который будет использоваться для ШИМ. (См. AnalogWrite ())

Выход — этот раздел определяет окончательный результат логика («затем») в соответствии с данными, рассчитанными на предыдущем шаге.Рассматривая наш пример LDR и PWM, включайте светодиод только тогда, когда уровень окружающего освещения опускается ниже определенного порога.

Библиотеки кода Arduino

Структура библиотеки

Библиотека — это папка, состоящая из файлов с файлами кода C ++ (.cpp) и файлов заголовков C ++ (.h).

Файл .h описывает структуру библиотеки и объявляет все ее переменные и функции.

Файл .cpp содержит реализацию функции.

Импорт библиотек

Первое, что вам нужно сделать, это найти библиотеку, которую вы хотите использовать, из множества библиотек, доступных в Интернете. После загрузки на свой компьютер вам просто нужно открыть Arduino IDE и щелкнуть Sketch> Include Library> Manage Libraries. Затем вы можете выбрать библиотеку, которую хотите импортировать в среду IDE. После завершения процесса библиотека будет доступна в меню эскиза.

В коде, предоставленном circuito.io, вместо добавления внешних библиотек, как упоминалось ранее, мы предоставляем им папку с прошивкой.В этом случае IDE знает, как их найти при использовании #include.

От программного обеспечения к оборудованию

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

Код → Скомпилировать → Загрузить → Выполнить

В основе Arduino лежит возможность компилировать и запускать код.

После написания кода в IDE вам необходимо загрузить его в Arduino.Нажатие кнопки «Загрузить» (значок со стрелкой вправо) скомпилирует код и загрузит его, если он прошел компиляцию. После завершения загрузки программа запустится автоматически.

Вы также можете сделать это шаг за шагом:

  1. Сначала скомпилируйте код. Для этого просто щелкните значок проверки (или щелкните эскиз> Проверить / Компилировать в строке меню.

Как видите, значок проверки находится в верхнем левом углу под тегом «Файл» в разделе меню.

Как только вы это сделаете, Arduino начнет компиляцию. По завершении вы получите сообщение о завершении, которое выглядит следующим образом:

Как видите, зеленая линия внизу страницы сообщает вам, что вы «закончили компиляцию». Если ваш код не запускается, вы получите уведомление в том же разделе, а проблемный код будет выделен для редактирования.

После того, как вы скомпилировали свой набросок, пора его загрузить.

  1. Выберите последовательный порт, к которому в настоящее время подключена ваша Arduino.Для этого нажмите в меню Инструменты> Последовательный порт, чтобы указать выбранный вами последовательный порт (как показано выше). Затем вы можете загрузить скомпилированный эскиз.
  2. Чтобы загрузить эскиз, щелкните значок загрузки рядом с галочкой. В качестве альтернативы вы можете перейти в меню и щелкнуть Файл> Загрузить. Ваши светодиоды Arduino будут мигать после передачи данных.

После завершения вы увидите сообщение о завершении, в котором сообщается, что Arduino завершила загрузку.

Настройка IDE

Для подключения платы Arduino к компьютеру вам понадобится USB-кабель.При использовании Arduino UNO USB передает данные программы прямо на вашу плату. USB-кабель используется для питания вашего Arduino. Вы также можете запустить Arduino от внешнего источника питания.

Перед загрузкой кода необходимо настроить некоторые параметры.

Выберите свою плату. Вам необходимо указать, какую плату Arduino вы собираетесь использовать. Сделайте это, щелкнув Инструменты> Доска> Ваша доска.

Выберите свой процессор — существуют определенные платы (например, Arduino pro-mini), для которых вам нужно указать, какая у вас модель процессора.В разделе инструменты> процессор> выберите имеющуюся у вас модель.

Выберите свой порт — чтобы выбрать порт, к которому подключена ваша плата, перейдите в Инструменты> Порт> COMX Arduino (это последовательный порт Arduino).

Как установить сторонние платы (например, NodeMCU)

Некоторые модели плат не предварительно установлены в Arduino IDE, поэтому вам необходимо установить их перед загрузкой кода.

Чтобы установить дополнительную плату, такую ​​как NodeMCU, вам необходимо:

  1. Нажмите «Инструменты»> «Платы»> «Менеджер плат»
  2. Найдите плату, которую хотите добавить, в строке поиска и нажмите «установить».

Некоторые платы нельзя найти через Board Manager. В этом случае вам нужно будет добавить их вручную. Для этого:

  1. Щелкните «Файлы»> «Настройки».
  2. . В поле «Диспетчер дополнительных плат» вставьте URL-адрес установочного пакета вашей платы. Например, для nodeMCU добавьте следующий URL-адрес: http://arduino.esp8266.com/stable/package_esp8266com_index.json
  3. Нажмите OK
  4. Перейдите в инструменты> Доски> Диспетчер плат
  5. Найдите плату, которую вы хотите добавить в строке поиска и нажмите «установить».

По завершении этого шага вы увидите установленные платы в списке плат под инструментами.

Примечание: процесс может незначительно отличаться для разных плат.

Arduino: чрезвычайно универсальная платформа

Arduino — это гораздо больше, чем просто микроконтроллер. Благодаря обширной среде IDE и широкому спектру аппаратных конфигураций Arduino действительно представляет собой разнообразную платформу. Разнообразие библиотек и интуитивно понятный дизайн делают его любимым как для новых пользователей, так и для опытных разработчиков.Существуют тысячи ресурсов сообщества, которые помогут вам начать работу с аппаратным и программным обеспечением.

По мере развития навыков вы можете столкнуться с проблемами, требующими отладки, что является слабым местом Arduino IDE. К счастью, есть несколько инструментов и методов для отладки оборудования и программного обеспечения Arduino. В следующей статье мы рассмотрим, как отлаживать Arduino (и как тестировать код Arduino), а также как использовать симуляторы и эмуляторы.

Программирование Arduino для детей: руководство для начинающих

Программирование

Arduino для детей — идеальный способ познакомить детей с совершенно новым миром электроники и технологий.Знакомство с технологиями не только дает вашим детям уверенность, помогая им развиваться, но и дает им возможность быть на шаг впереди других.

Сегодня нас окружают электронные устройства, такие как смартфоны, телевизоры, компьютеры и многое другое. В результате вы, вероятно, подумали, как познакомить своих детей с тем, с чем они могут не только играть, но и чему-то научиться. Комплекты Arduino — идеальное решение! Они интересны всем, кто интересуется технологиями.

Так что же такое Ардуино? Arduino — это платформа с открытым исходным кодом, которая представляет собой комбинацию аппаратного и программного обеспечения. Arduino легко доступен — даже для тех, кто не разбирается в электронике. Платы Arduino — это простой тип микроконтроллера. Они могут считывать входные данные с датчиков и превращать эти входные данные в выходные.

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

Ответы на общие вопросы о программировании Arduino для детей


В этой статье мы ответим на некоторые общие вопросы, связанные с отработкой схем. Arduino для детей кажется очень сложным. Но не волнуйтесь — мы здесь, чтобы помочь! Если вы действительно хотите знать, как работает электроника, Arduino — лучший микроконтроллер для начала.

Какое программирование использует Arduino?

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

Язык программирования Arduino — это модифицированная версия C / C ++ . Обычно мы программируем на C ++ с добавлением методов и функций. Программа, написанная на языке программирования Arduino, называется sketch и сохраняется с расширением .ino . Вы даже можете использовать Python для написания программы Arduino. Все эти языки являются текстовыми языками программирования.

Чтобы упростить обучение и повысить интерес студентов, у нас есть онлайн-симуляторов , где нам не нужно ничего покупать или загружать.

Подходит ли Arduino для новичков?

Да, Arduino подойдет новичкам. Есть много электронных плат. Зачем использовать Arduino для новичков? Что ж, есть несколько моментов, которые делают этот микроконтроллер уникальным:

  • Каждый раз, когда мы собираемся что-то покупать, мы всегда должны в первую очередь смотреть на стоимость. Arduino — это экономичный и легкодоступный .
  • Arduino легче изучить как язык программирования, поскольку это упрощенная версия языка программирования C ++.
  • Arduino является кроссплатформенным, что позволяет легко запускать его на любом устройстве по сравнению с другими микроконтроллерами, которые могут работать только в Windows.
  • Arduino имеет множество вариантов на выбор, которые вы можете легко выбрать в соответствии с вашими потребностями.

Изучите пошаговое руководство по настройке среды программирования Arduino

Вот как использовать физическую плату Arduino Uno. Arduino Uno — одна из нескольких плат для разработки. Он имеет 14 цифровых входных / выходных контактов, 6 аналоговых входных контактов, разъем питания, кнопку сброса, USB-соединение, разъем ICSP.

1. Загрузите и установите среду Arduino (IDE)

Если вы только что приобрели плату Arduino Uno, вам сначала нужно установить Arduino IDE (интегрированную среду разработки) на другой компьютер. Код вводится в IDE и отправляется в Arduino через USB-кабель.

Посетите arduino.cc, чтобы загрузить самую последнюю версию Arduino IDE для своего компьютера. Существуют разные версии для Mac, Windows и Linux.

  • На странице загрузки нажмите «Установщик» для самой простой установки, затем
  • Сохраните файл.exe-файл на ваш диск.
  • Откройте файл .exe.
  • Нажмите кнопку, чтобы принять лицензионное соглашение
  • Решите, какие компоненты нужно вставить, затем нажмите «Далее».
  • Выберите папку, в которую нужно поместить программу, затем нажмите «Установить».
  • Дождитесь завершения установки программы, затем нажмите «Закрыть».

2. Запустите Arduino IDE

После загрузки программного обеспечения Arduino IDE распакуйте папку. Для этого дважды щелкните ярлык Arduino на рабочем столе.Откроется среда IDE, и вы увидите редактор кода.

3. При необходимости установите драйверы.

Если вы использовали программу установки, она установит драйверы автоматически, как только вы подключите плату.

4. Подключите плату к компьютеру с помощью кабеля USB.

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

5. Выберите свою плату

Затем убедитесь, что программное обеспечение готово для вашей конкретной платы Arduino.Перейдите в меню компьютера «Инструменты» из строки меню. Выберите опцию «Board», и появится другое меню, в котором вы выберете свою модель Arduino из списка.


6. Выберите свой последовательный порт

Выберите последовательное устройство платы Arduino. Перейдите в Инструменты, а затем в меню последовательного порта. Вы можете увидеть COM3 или выше (COM1 и COM2 обычно зарезервированы для аппаратных последовательных портов). Чтобы узнать, к какому порту подключена ваша плата Arduino, отключите плату Arduino и снова откройте меню.Запись, которая исчезает, должна быть платой Arduino. Снова подключите плату и выберите этот последовательный порт.


7. Откройте пример мигания

Начнем с примера светодиодного мигания, который поставляется с Arduino IDE. Просто перейдите в Файл-> Примеры-> Основы-> Blink.

Вот несколько вещей, которые следует учитывать при написании кода:

  • Код чувствителен к регистру
  • Все операторы должны заканчиваться точкой с запятой
  • Комментарии следуют за // или начинаются с / * и заканчиваются * /
  • Void loop () и void setup () — две обязательные функции.Раздел настройки кода просто запускается один раз при первом включении или сбросе платы Arduino. После завершения настройки цикл повторяется снова и снова. Он продолжает работать до тех пор, пока питание на плате не останется.
  • Строка состояния показывает, что программа скомпилирована или загружена.
  • В области уведомлений программы отображаются ошибки в коде, если таковые имеются.

9. Загрузите программу

Теперь пора загрузить ваш первый скетч (код). Убедитесь, что Arduino подключен и горит зеленый свет — значит, выбраны правильная плата и порт.Выберите «Загрузить» в раскрывающемся меню «Эскиз».

Через несколько секунд вы увидите этот экран с сообщением Done uploading.

Вы сделали это!

Откройте для себя онлайн-курсы Arduino

В Create & Learn мы делаем упор на упрощение обучения с помощью структурированной схемы обучения и обратной связи. Если вам интересно узнать, как работает электроника, Arduino — лучший микроконтроллер для начала.

Попробуйте наш Мастер схем: Введение в курс Arduino, чтобы открыть для себя основы схем, использовать резисторы и познакомиться с законом Ома при создании серии интересных проектов и экспериментов.В этом курсе Arduino вы также кодируете Arduino для создания интеллектуальных устройств, которые распознают окружающую среду и реагируют соответствующим образом. Но не волнуйтесь, вам не нужно покупать физическую доску. Мы используем симулятор (хотя код будет работать на физическом устройстве, если оно у вас есть).

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

Стартовые наборы Arduino для детей

Доступно множество плат Arduino, и все они имеют одну общую черту: микроконтроллер.По сути, микроконтроллер — это очень маленький компьютер.

В Create & Learn мы используем симуляторы Arduino для изучения программирования Arduino, что экономит наше время и деньги . Если вы хотите приобрести физические комплекты для своих детей, некоторые варианты включают:

  1. Стартовый комплект Arduino : Этот стартовый комплект Arduino проведет вас через основы Arduino и электроники на практике. . Предварительный опыт не требуется.В этот комплект входит самая последняя плата управления Arduino UNO. В нем есть все необходимые компоненты, такие как плата управления, индикаторы, кнопки, переключатели, резисторы и многое другое.
  2. ELEGOO UNO Project Basic Starter Kit : Этот базовый стартовый комплект — самый дешевый и самый базовый комплект электронных компонентов для начинающих Arduino с новейшей платой разработки UNO R3 + USB-кабелем и всем основным составные части.
  3. ELEGOO UNO Project Super Starter Kit : Этот стартовый набор Super является наиболее экономичным набором на платформе Arduino для начинающих программировать.Он на 100% совместим с Arduino UNO R3, NANO, MEGA 2560 R3.

Программирование Arduino для детей — это весело!

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

Если вам интересно начать с Arduino для детей, присоединяйтесь к нам в Create & Learn for Circuit Wizard: введение в Arduino, где ваш ребенок узнает об основах схем, использует резисторы, создавая серию интересных проектов и экспериментов.Мы также запрограммируем Arduino, чтобы начать создавать некоторые умные устройства, которые будут определять окружающую среду и реагировать соответствующим образом. Чтобы вывести свои знания об электронике на следующий уровень, узнайте больше о Micro: Bit.

Далее узнайте все о робототехнике и кодировании.

Автор: Апурва Растоги, инструктор Create & Learn, проработавший инструктором по программированию более 6 лет. Апурва имеет степень бакалавра математики и степень магистра компьютерных приложений.

Запрограммируйте свой Arduino как профессионал с помощью Eclipse C / C ++ IDE

Я давно занимаюсь разработкой инструментов. Все началось чуть более 20 лет назад, когда я работал в Nortel и принес необычный инструмент моделирования под названием ObjecTime Developer, который помог нам построить систему OA&M для нового компонента их знаменитого коммутатора телефонной станции. Я так хорошо провел время, что вскоре после этого присоединился к ObjecTime и никогда не оглядывался назад.

За прошедшие с тех пор 20 лет я создал инструменты для разработчиков встраиваемых систем, начиная с Developer, который в конечном итоге превратился в Rational Rose RealTime.В конце концов, я немного разочаровался в инструментах моделирования и перешел в среду IDE, работая над Eclipse CDT. Мне действительно повезло, что я попал в эти проекты, и я очень горжусь тем, чего мы достигли с ними.

Но одна вещь все время была в моей голове. Я практически не занимался разработкой встраиваемых систем со времен Nortel. Я создавал инструменты для разработчиков встраиваемых систем и толком не знал, каково это быть ими. Примерно в то время повальное увлечение Arduino начало набирать обороты, и я нашел свой путь с моей первой Arduino Uno.Было очень весело работать с датчиками и светодиодами и создавать простые небольшие проекты Интернета вещей. Это был такой отличный познавательный опыт.

Став разработчиком Arduino, я не мог не разочароваться в Arduino IDE. Я помню, как задавался вопросом, что это за комбинация клавиш помощника по содержанию, просто чтобы узнать, у него нет помощника по содержанию. Какие? Это была одна из первых функций, которые мы добавили в CDT после того, как у нас появился синтаксический анализатор C ++. Это заставило меня задуматься. Насколько сложно было бы расширить CDT для программирования Arduino? Это заняло некоторое время, но в октябре прошлого года я, наконец, дошел до того момента, когда был готов сделать его доступным для сообщества.В этой статье описывается IDE Arduino C ++ и то, как она использует возможности Eclipse C / C ++ IDE.

Почему C ++?

Прежде всего следует отметить, что IDE Arduino C ++ — это именно C ++. Он не поддерживает эскизы INO, которые поддерживает официальная среда разработки Arduino. В этих эскизах используется «Wiring», который является «языком программирования», основанным на более ранней работе под названием «Processing». Wiring — это, по сути, библиотека C ++ и небольшое подмножество языка C ++. Единственное отличие состоит в том, что вам не нужно включать файлы заголовков системы, т.е.е. Arduino.h, и вам не нужно пересылать объявления о своих функциях.

Я вообще-то думаю, что это позор. Это так близко к обучению новых разработчиков и любителей программировать на C ++. Все, что им нужно изучить, — это эти две концепции, и они разработчики на C ++. Это упущенная возможность, которую IDE Arduino C ++ пытается исправить.

Начало работы

IDE Arduino C ++ доступна на Eclipse Marketplace. Для начала пользователям необходимо загрузить Eclipse C ++ IDE со страницы загрузок Eclipse.C ++ IDE можно установить с помощью нового установщика Eclipse или загрузить пакет C ++ напрямую. После настройки клиент Marketplace можно использовать для поиска и установки IDE Arduino C ++. На рынке есть и другие IDE Arduino, поэтому поищите логотип CDT, чтобы найти ту, о которой я пишу здесь.

После установки подключаемых модулей вам необходимо установить «Платформу». Платформа Arduino — это, по сути, комплект разработки программного обеспечения (SDK), который включает основные библиотеки и набор инструментов, используемых для создания приложений для набора плат.Создатели Arduino IDE сделали очень интересную вещь и имеют общедоступные метаданные, которые описывают SDK и предоставляют достаточно информации для загрузки всего, что вам нужно. Eclipse Arduino C ++ IDE использует это и представляет эту информацию в диспетчере загрузок Arduino.

Список URL-адресов файлов package.json, содержащих эту информацию, поддерживается на страницах настроек Arduino. Эти файлы метаданных предоставляются поставщиками плат, а неофициальный список можно найти на вики-странице Arduino.

Существует эквивалент для библиотек, хотя в этом случае поставщики IDE Arduino поддерживают полный список, а IDE Arduino C ++ ссылается на него напрямую. Сюда входят библиотеки для различных периферийных устройств, таких как NeoPixels или Wifi-чипы, а также библиотеки для многоразовых функций, таких как протокол MQTT.

После того, как вы установили набор платформ и все необходимые библиотеки, вы готовы приступить к созданию приложений Arduino.

Панель запуска Eclipse

Первый шаг — сообщить Eclipse о плате, с которой вы хотите работать.Это приведет к запуску процессов сборки и запуска ваших проектов. Чтобы упростить этот процесс, мы будем использовать новую панель запуска Eclipse.

Панель запуска была создана моей командой здесь, в QNX, и внесена в Eclipse для использования в других проектах сообщества. Основная цель — упростить процесс запуска за счет минимизации необходимости для пользователей открывать диалоговые окна конфигурации запуска. Если подключаемые модули настроены правильно, а подключаемый модуль Arduino C ++ IDE делает это, вы сможете выбрать проект, который хотите запустить, и цель, в которой вы хотите его запустить, и нажать кнопку «Запуск».

Он также позволяет установить режим запуска, но, поскольку Arduino не поддерживает отладку (пока), у нас доступен только Run.

Новые цели могут быть созданы с помощью элемента «Новая цель запуска…» в селекторе «Цель запуска» (третий раскрывающийся список) или с помощью действия «Новое соединение» в представлении «Подключения». Выберите Arduino в качестве типа подключения, затем выберите последовательный порт, к которому подключена ваша плата, и тип платы для вашей платы. Для сложных плат, требующих специальных программистов, вы также можете выбрать это.

После создания платы вы можете приступить к созданию проекта Arduino. Вы можете получить доступ к мастеру для создания из меню верхнего уровня «Файл», «Новый проект Arduino» или «Новый проект C / C ++» и выбрать Arduino C ++ Sketch в качестве шаблона. Это создаст минимальный проект Arduino, который имеет функцию настройки и функцию цикла. Добавьте код Blinky и нажмите кнопку Launch (средняя) на панели запуска, чтобы запустить ваш скетч.

Монитор последовательного порта

Как и при обычном программировании Arduino, вы можете запрограммировать последовательный порт для печати сообщений обратно в IDE.К сожалению, это все еще основной способ отладки программ Arduino. Для просмотра сообщений мы подключили последовательный порт к Eclipse Console View. Чтобы открыть его, найдите свою доску в представлении Connections (возможно, сначала вам потребуется открыть это представление). Пункт меню «Открыть командную оболочку» в соединении создаст новую консоль для отображения вывода с этой платы.

Получение дополнительной помощи

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

Форум CDT — лучшее место, чтобы задать вопросы, хотя я получил вопросы отовсюду, в том числе на странице YouTube и в разделе MarketPlace.

https://www.eclipse.org/forums/index.php?t=thread&frm_id=80

Будут ошибки, так как у меня не так много досок, поэтому я надеюсь, что сообщество сообщит о проблемах, чтобы я мог их исправить. Вы можете помочь, сообщив об ошибках здесь:

https: // ошибки.eclipse.org/bugs/enter_bug.cgi?product=CDT

Направления будущего

IDE Arduino C ++ — это довольно полная IDE. Я использую его для создания демонстраций для конференций Eclipse, и мне нравится, что я могу использовать всю мощь Eclipse C / C ++ IDE для этих хобби-проектов. Но есть еще пара вещей, которые необходимо сделать.

Во-первых, я не уверен, что мне действительно нравится, что Serial Monitor находится в режиме консоли. Это был своего рода эксперимент. Для Oxygen, следующего выпуска Eclipse, я подключу Serial Monitor к Eclipse Terminal View, что обеспечит более стандартный рабочий процесс.

Самая востребованная функция, которую я использовал, — это поддержка разработки библиотек Arduino. Существует огромная коллекция, и постоянно создается еще больше. Было бы здорово иметь IDE, поддерживающую работу с ними.

IDE Arduino C ++ для Eclipse была моей большой страстью, когда я погрузился в мир электроники для любителей, взяв с собой свою Eclipse IDE. Я надеюсь, что другие сочтут его таким же полезным, как и я, и что сообщество Arduino сможет извлечь выгоду из лучших в своем классе инструментов, как и профессионалы.

Об авторах

Содержание курса программирования Arduino

Введение и требования
Обзор курса с требованиями к аппаратному и программному обеспечению.

Часть 1: Структура и последовательность действий Arduino Sketch
Объясняет структуру программы Arduino и то, как выполняются операторы программы. Демонстрирует простую программу «Hello World».

Часть 2: Основной цикл Arduino Sketch и функции вызова
Как работает основной цикл Arduino и что означает вызов функции.

Часть 3: Переменные
Введение в переменные Arduino, показывающее использование целочисленных (int) и переменных с плавающей запятой (float).

Часть 4: Арифметические операторы
Сложение, вычитание, умножение, деление и остаток на Arduino.

Часть 5: Операторы отношения
Сравнение значений в Arduino.

Часть 6: Оператор приращения и комментарии
Как работает оператор приращения Arduino. Использование комментариев в скетчах Arduino.

Часть 7: Arduino for Loop
Как работает Arduino for loop.Используйте цикл for Arduino для выполнения кода заданное количество раз.

Часть 8: Arduino while Loop
Как использовать Arduino while и do-while loop.

Часть 9: Оператор if в Arduino.
Использование оператора if в Arduino. Как получить ввод с клавиатуры в Arduino из окна последовательного монитора.

Часть 10: Принятие решений с помощью if-else
Конструкция Arduino if-else. Включение и выключение светодиода с помощью окна Serial Monitor.

Часть 11: Решения с помощью конструкций if-else-if
Arduino if-else-if и if-else-if-else.Управляйте частотой мигания светодиода с помощью конструкций if-else-if.

Часть 12: Логические операторы
Логические операторы OR, AND и NOT, используемые в эскизах Arduino для управления светодиодом из окна Serial Monitor.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *