На чем пишут программы для ардуино

Содержание

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

Когда мы начинаем разработку проекта Arduino, мы обычно используем IDE Arduino. В любом случае, есть несколько альтернатив Arduino IDE, которые мы должны рассмотреть, если нас не устраивает стандартная IDE. Как мы знаем, Arduino является одной из самых популярных плат для прототипирования (с несколькими альтернативами), когда приходит время разрабатывать проект IoT или когда мы создаем проект DIY. Обычно мы склонны использовать редактор Arduino не только с платами Arduino (такими как Uno, семейство MKR и т. д.), но, добавляя расширения, мы используем его с альтернативными платами, такими как ESP32, ESP8266, Wemos и т. д.

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

Программирование Ардуино с нуля. Arduino для начинающих.

  • Это легко использовать
  • он поддерживает все платы Arduino
  • он имеет встроенный менеджер библиотек, простой в использовании

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

Кроме того, он имеет открытый исходный код и работает на нескольких ОС, таких как Windows, Mac OS X и Linux.

В любом случае, если вы не чувствуете себя комфортно с Arduino IDE, есть несколько альтернатив, которые вы можете использовать при разработке своего проекта Arduino. В Arduino IDE отсутствуют некоторые функции, которые могут вас беспокоить, особенно если вы привыкли к IDE, такой как Eclipse, Visual Studio или IntelliJ, и это лишь некоторые из них. Одна отсутствующая функция в Arduino IDE, которая меня очень беспокоит, — это автозаполнение. Это способ предсказать остальные команды, чтобы вам не приходилось писать их все. Есть и другие функции, которые мне нравятся в IDE, такие как отображение параметров функций, подсказки, связанные с синтаксической ошибкой, и так далее.

Список альтернатив Arduino IDE

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

ПлатформаIO

PlatformIO — одна из самых известных альтернатив Arduino IDE. Это интегрированная среда разработки для IoT. Он поддерживает не только платы Arduino, но и многие другие платы, такие как Raspberry, ESP32, ESP8266 и многие другие. IDE поддерживает все функции, которые вы ожидаете, такие как завершение кода и так далее. Это не только IDE, но и поддержка CLI (интерфейс командной строки).

Читайте также:
Какими программами владеет бухгалтер

Более того, PlatformIO поддерживает мультипроекты, темы, управление библиотеками. Интерфейс очень привлекательный и простой в использовании, и он сильно отличается от стандартной среды разработки Arduino. Он с открытым исходным кодом, и вы можете скачать исходный код с Github. Он требует Python и работает на нескольких ОС.

Эта среда разработки Arduino IDE имеет две разные версии: одна построена поверх Atom, а другая — в виде плагина кода Visual Studio. Если вы хотите получить больше информации и узнать, как использовать PlatfomIO, вы можете обратиться к этой статье.

Код Visual Studio

Visual Studio Code — очень интересный инструмент от Microsoft. Это совершенно бесплатно, и есть несколько версий для Linux, Windows и OSX. Он предлагает набор высокоуровневых функций кода, очень полезных и простых в использовании. Интересно то, что VSCode имеет торговую площадку, где можно загрузить новые расширения, добавляющие новые функции в эту альтернативу IDE.

Одним из таких расширений является PlatformIO, которое можно загрузить непосредственно в VSCode. У вас будут все возможности PlatformIO, описанные выше, в совершенно новой среде IDE.

Затмение Ардуино IDE

Это плагин для Eclipse. Мы все знаем Eclipse и IDE. Если вы программировали на Java, у вас наверняка была возможность протестировать и оценить возможности Eclipse IDE. Это почти стандарт в IDE. Eclipse — очень универсальная среда, поддерживающая несколько языков программирования, от Jave до C/C++ и так далее.

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

Это плагин для Eclipse IDE, который помогает разрабатывать приложения для Arduino. Вы можете загрузить плагин прямо из Eclipse Marketplace. Конечно, сначала необходимо установить Eclipse C++ IDE. После того, как этот плагин будет установлен в Eclipse IDE, вам нужно выбрать платформу или, другими словами, SDK, который включает в себя все библиотеки, необходимые для создания приложения.

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

Programino IDE для Arduino

Programino Arduino IDE — это альтернатива Arduino IDE с несколькими функциями. Эту IDE Arduino можно использовать с платами Arduino/Genuino или совместимыми микроконтроллерами. Programino поддерживает язык C/C++, в любом случае он добавляет поддержку других языков, таких как HTML, Javascript и так далее.

Он полностью совместим с Arduino и имеет следующие основные функции:

  • Подсветка синтаксиса
  • Проводник функций
  • Код конкуренции
  • Сворачивание кода
  • Средство просмотра оборудования

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

Слобер

Sloeber — это IDE с открытым исходным кодом для программирования Arduino. Он основан на Eclipse. Он имеет несколько интересных особенностей:

  • Контекстно-зависимая окраска
  • Поддержка нескольких проектов
  • Несколько конфигураций

Более того, Sloeber поддерживает несколько макетных плат.

встроитьXcode

Это бесплатная среда разработки Arduino, разработанная для Mac OS X. Эта среда разработки поддерживает подсветку синтаксиса, нумерацию строк и т. д. Это шаблон для XCode 5 и XCode 6. Эта IDE упрощает разработку эскиза Arduino с помощью интеллектуальной среды, которая помогает вам во время разработки. Эту IDE можно использовать с несколькими макетными платами, такими как Arduino, ESP32, ESP8266, Adafruit и платами на базе Atmel и Cortex. Вы можете обратиться к его веб-сайту, чтобы получить больше информации. embedXcode имеет разные версии и лицензии. Существует бесплатная версия, которая поддерживает основные функции, а если вы хотите разблокировать все ее функции, вам следует рассмотреть вариант embedXcode+, для которого требуется лицензия.

Ктехлаб

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

шифровальщик

Codebender — это облачная среда разработки для Arduino. Он работает онлайн, и вам не нужно устанавливать приложение локально. Это веб-среда разработки Arduino IDE, которая предоставляет все функции, которые вы ожидаете от IDE. Он использует облачный компилятор для преобразования исходного кода и загрузки его в Arduino. Это платформа с открытым исходным кодом, и ее код доступен на Github.

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

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

Визуальная студия + Визуальный микро

Это плагин для Microsoft Visual Studio. Эта Arduino IDE полностью совместима с Arduino. Эта IDE помогает вам легко и быстро писать код Arduino с подсветкой синтаксиса, подсказками об ошибках кода и так далее. Он поддерживает несколько плат Arduino, поэтому вы можете выбрать свою плату для написания кода.

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

Зевс IDE

Zeus IDE — редактор, поддерживающий несколько языков программирования: C#, Lua, Go и так далее. Эта IDE поддерживает несколько функций:

  • Автозавершение кода C/C++
  • Подсветка синтаксиса
  • Умный код с отступами

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

Студия Атмел

Это профессиональная платформа. Эта интегрированная платформа поддерживает микроконтроллеры SAM и AVR. Используя Atmel studio, вы можете кодировать, отлаживать и загружать свое приложение. Это комплексное решение, которое не ограничивается Arduino и предоставляет все возможности для простой разработки вашего приложения.

ArduinoDroid

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

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

Это полнофункциональная IDE. Вы можете скачать его с Google Play.

Плагин Netbeans для Arduino

Это еще один интересный плагин. Этот плагин работает с Netbeans, поэтому при разработке эскиза Arduino у вас есть все возможности Netbeans. Он работает с Arduino Uno R3, Arduino Mega 2560 и Arduino Duemilanove. Если вы хотите попробовать, вы можете скачать плагин.

Катя

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

Читайте также:
Функциональные характеристики программы это

CLion + плагин

CLion — это IDE для разработки приложений на C/C++. Это мощный инструмент, предлагающий интересные функции, такие как навигация по коду, поддержка редактирования кода, например генерация методов, и так далее. Встроенная отладка помогает находить ошибки и анализировать код «на лету». Он поддерживает расширение плагина. Один из этих плагинов помогает нам разработать приложение для Arduino.

Это очень интересный инструмент.

Ардуино Про IDE

Arduino Pro IDE — следующая среда разработки Arduino. Это расширенная версия стандартной IDE, которая предлагает гораздо больше функций, что делает ее намного лучше, чем «стандартная» версия. Он поддерживает механизм расширения плагинов. Это современная среда разработки для Arduino с поддержкой отладки. Более того, эта альтернатива Arduino IDE предназначена для управления большими проектами.

Интересной особенностью является поддержка C, Python и Javascript. Эта IDE все еще находится в бета-версии, и вы можете загрузить и использовать ее, если хотите попробовать.

Резюме

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

Если вам понравилась эта статья, посетите SwA для получения дополнительных руководств и статей об IoT или подпишитесь на меня в Twitter.

Источник: digitrain.ru

Урок №1. Экосистема Ардуино

Вы решили попробовать свои силы с ардуино или пока просто присматриваетесь к этой платформе? Тогда Вы пришли на нужную страницу!

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

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

Экосистема Ардуино

Конечно, главное в экосистеме Ардуино – это, конечно же, сама плата Ардуино. Она может выглядеть по-разному.

Но сюда же входят:

  • Среда программирования – Arduino IDE
  • Базовая программная библиотека Ардуино
  • Внешние программные библиотеки
  • Шилды – платы расширения
  • Различные модули и компоненты

Коротко обо всем по порядку…

Плата Ардуино

  • Легенда гласит, что название платы происходит от местечка в Италии, где, считается, и зародилась первая версия платы в 2003-2005 году.

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

Микроконтроллер

Многие ошибочно называют плату ардуино микроконтроллером. Ядром платы Ардуино действительно является микроконтроллер – Atmega. На него-то и записывается программа. А все остальное на плате – это т.н. обвязка микроконтроллера, упрощающая работу с ним и дающая быстрый старт в разработке нового устройства, точнее, его прототипа.

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

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

Какую же плату купить?

Как я говорил ранее, на сегодняшний день существуют десятки модификаций Ардуино:

  • С интегрированными сенсорами и кнопками
  • С дополнительной памятью и портами ввода-вывода, для больших проектов
  • С поддержкой Ethernet и WiFi
    (Что актуально в проектах «Интернет вещей»,)
  • Есть платы со встроенным GSM
  • плата, предлагаемая для сборки 3D-принтеров и сложных роботов
  • для обработки видео и распознавания звука
  • для проектов c применением Android
  • Есть специальная плата для отладки проектов. Ее используют продвинутые мейкеры. Ведь отладка сложных проектов Ардуино – весьма непростой процесс.
  • Наконец, есть миниатюрные версии, для создания носимых устройств, например умной одежды.

Для изучения Ардуино подойдет любая из этих плат. Но я рекомендую начать с платы начального уровня – UNO или Nano.

Если вы новичок в Ардуино, приобретайте именно их. А недостающую функциональность… после компенсируете дополнительными модулями.

Uno или Nano?

Пожалуй, главное отличие между эими платами– это размер.

Я лично предпочитаю Nano, потому что эта плата, как минимум:

  • компактнее, что важно при сборке конечного продукта,
  • может быть размещена прямо на макетной плате, и у вас будет на порядок меньше лапши из проводов,
  • кроме того Nano имеет гораздо более распространённый разъем питания – mini-usb,
  • а также клоны Nano существенно дешевле своего большого брата.

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

К преимуществам UNO можно отнести:

  • наличие шилдов (недешевое удовольствие, откровенно говоря)
  • простота ремонта,
  • возможность замены микроконтроллера, который рассчитан, хоть и на значительное, но все-таки ограничеенное число прошивок.

Однако на практике, данные преимущества в нашей время мало актуальны. Клоны UNO R3, как правило, имеют припаенный микроконтроллер, а их стоимость такова, что ремонт имеет сомнительную эономическую целесообразность.

Arduino IDE

Теперь о программировании Ардуино.

Arduino IDE – это инструмент, в котором вы (пишите программу для Ардуино, загружаете на плату (т.е. «прошиваете» контроллер на плате) и отлаживаете программу.

«IDE» расшифровывается как «Integrated Development Environment» – Интегрированная среда разработки. Но я ее буду называть и не по-английски, и не по-русски, а просто ИДЕ.

С помощью этой среды вы также взаимодействуете с платой через последовательный порт: получаете отладочную информацию и даже можете управлять платой.

Альтернативные IDE

Справедливости ради, надо отметить, что Arduino IDE – далеко не единственная среда программирования Ардуино, и уж точно далеко не самая лучшая.

Надо сказать, программу для Ардуино можно писать практически в любом текстовом редакторе, хоть в Nodepad++, хоть VIM – гиковском редакторе программистов.

Правда, вам потребуется настроить скрипты прошивки, в чем новичкам разобраться будет совсем непросто.

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

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

Скачать ее можно с официального сайта https://www.arduino.cc/

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

Скетч

Программа для Ардуино называется «скетч», что переводится с английского как «эскиз», «набросок».

Этим как бы подчеркивается, что все что вы делаете с Ардуино – это создаете прототип будущего изделия … в итеративной форме, подвергая свою программу по кругу испытанию и доработке, пока не получите готовую версию устройства.

Язык программирования для Ардуино – это Си, точнее С++. Поэтому знание C++ приветствуются для прохождения данного курса, хоть и не обязательно, поскольку мы будет постигать основы этого языка по ходу данного курса.

Пример скетчка Вы можете видеть ниже:

// инициализация платы и компонентов void setup() < // инициализировать пин 13 на вывод: pinMode(13, OUTPUT); >// главный цикл программы void loop() < digitalWrite(13, HIGH); // зажечь LED delay(1000); // задержка в 1 сек. digitalWrite(13, LOW); // погасить LED delay(1000); // задержка в 1 сек. >

Читайте также:
Как удалить программу amd catalyst control center

Кстати, а вы знакомы с программированием? Пожалуйста, напишите в комментариях умеете ли вы уже программировать и на каких языках.

Базовая библиотека

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

Например, если нужно получить значение с аналогового входа №1, вы вызываете функцию analogRead(1), а если вам надо подать 5V на цифровой вывод №7, надо вызывать функцию digitalWrite(7, HIGH).

Внешние библиотеки

Вместе с Arduino IDE поставляется набор библиотек. Часть из них разработана проектом Ардуино, но их относительно немного. .Другие разработаны контрибьюторами и одобрены Ардуино.

Но главный кладезь библиотек Ардуино – это конечно, Интернет…

И, пожалуй, большинство контрибьюторов ведут свои проекты на github – популярном ресурсе для хранения проектов с открытым кодом.

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

Двери в сообщество всегда открыты.

Шилды

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

Такие компоненты называется Shields – шилды.

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

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

А если надо подключить много USB-устройств, вам поможет шилд “USB Host”.

Если требуется собрать небольшую схему из радиоэлементов, вы можете разместить ее прямо на плате Ардуино, используя «PROTO SHIELD».

На рынке представлено множество шилдов – как от Ардуино, так и других производителей.

Шилды легко вставляются в плату, а также друг в друга, и в итоге может получиться целый «пирог» из шилдов.

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

Компоненты и модули

В любом проекте обязательно потребуются компоненты и модули.

Это маленькие кирпичики устройства, которые вставляются в макетную плату и подключаются к Ардуино с помощью проводов-перемычек.

К таким устройствам относятся:

  • обычные радиоэлементы, такие как резисторы, кондекнсаторы, диоды и т.п.,
  • различные датчики: освещенности, температуры, движения, влажности, цвета, вибраций и т.д.

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

  • Многие сложные задачи решаются с помощью микросхем

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

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

•Шаговые моторы, сервоприводы, соленоиды

и многие другие компоненты. Всех не перечислить.

Заключение

На этом всё для первого урока.

Теперь Вы знаете что такое Ардуино, какие платы бывают и из чего состоит «экосистема» Ардуино.

На следующем занятии мы перейдем от слов к делу, и напишем нашу первую программу, традиционно называемую «Hello World!» (т.е. «Привет, Мир!»).

Обязательно пройдите тест к этому уроку!

Видео-версия урока

Processing. Урок 12. Ардуино

Используем язык программирования Processing

Привет! Можно ли связать приложение в компьютере и схему на основе Ардуино? Конечно, можно. Для этого даже существует специальный язык программирования Processing. Хотя данные между компьютером и платой передаются через последовательный порт, так что вы можете использовать любой язык поддерживающий работы через com порт.

В этом уроке нам понадобятся класс и функции для работы с com портом. Для этого у нас уже были уроки. Посмотрите их если уже забыли или пропустили.

С помощью языка программирования Processing мы сможем создать приложение для windows, osx или linux и считывать данные с последовательного порта.

Для того, чтобы выполнить этот урок нам понадобиться.

  • Ардуино UNO
  • Макетная плата
  • Перемычки
  • Потенциометр
  • Кабель USB

Processing

Это открытый язык программирования, основанный на Java. Программа на Processing называется скетч так же как и в Ардуино. Ну и язык программирования Ардуино основан на Processing. Так что даже среда разработки выглядит одинаково.

Скачаем среду разработки на официальном сайте. http://processing.org

Устанавливать ее не нужно, можно сразу запустить.

Интерфейс Processing ide

Схема и программа Ардуино

Наша цель сегодня собрать схему на Ардуино. Передать данные от потенциометра. И считать данные в программе на компьютере.

Соберем простую схему с двумя потенциометрами. Подключим их к портам А0 и А1.

Принципиальная схема подключения потенциометров

А на плату Ардуино загрузим простой скетч. Который считает данные из портов А0 и А1 и запишет их в последовательный порт.

const int POT0=0; const int POT1=1; int val0; int val1; void setup() < Serial.begin(9600); >void loop()

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

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

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

Processing программа

Теперь осталось написать программу для считывания данных из com порта и их обработки. Откроем IDE processing и напишем простую программу.

Подключим класс для работы с последовательным портом и создадим объект port.

import processing.serial.*; Serial port;

Объявим все необходимые переменные.

float dataFloat = 0; int dataInt = 0; String strData; String[] listData = ;

В функции setup() создадим окно программы размером 255 на 255 пикселей.

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

void setup() < // Размер окна size(255, 255); port = new Serial(this, «COM5», 9600); // Инициализация // последовательного порта port.bufferUntil(‘n’);// Символ конца строки >

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

Чтобы разделить их по разным переменным, преобразуем float в string и разделим ее на элементы массива.

void serialEvent(Serial port) < dataFloat = float(port.readStringUntil(‘n’)); // Получить переменную dataInt = int(dataFloat); strData = str(dataFloat); listData = split(strData, ‘.’); println( listData[0] ); println( listData[1] ); >

Теперь осталось перерисовать окно программы. Для этого есть функция draw(). Она работает как цикл loop() в Ардуино. Постоянно выполняет код внутри функции.

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

void draw()

Полный текст программы

// код программы Processing import processing.serial.*; Serial port; float dataFloat = 0; int dataInt = 0; String strData; String[] listData = ; void setup() < // Размер окна size(255, 255); port = new Serial(this, «COM5», 9600); // Инициализация // последовательного порта port.bufferUntil(‘n’);// Символ конца строки >void draw() < background(0, 0, dataFloat); stroke(255); line(float(listData[0]), float(listData[1]), mouseX, mouseY); >// Перерисовать окно void serialEvent(Serial port) < dataFloat = float(port.readStringUntil(‘n’)); // Получить переменную dataInt = int(dataFloat); strData = str(dataFloat); listData = split(strData, ‘.’); println( listData[0] ); println( listData[1] ); >

В целом программа напоминает программу на Ардуино. Языки программирования очень похожи друг на друга.

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

Заключение

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru