Wiring (программное обеспечение)
Wiring — открытая платформа для прототипирования электронных устройств, включающая язык программирования, интегрированную среду разработки (IDE) и одноплатный микроконтроллер. Разработка началась в 2003 году Hernando Barragán.
Бараган начал проект в Interaction Design Institute Ivrea. В настоящее время проект развивается на факультете архитектуры и дизайна Universidad de Los Andes в Боготе, Колумбия.
Wiring основан на проекте Processing, инициированном Casey Reas и Benjamin Fry, бывшими участниками группы эстетики и вычислений MIT Media Lab.
Сообщество проекта объединяет экспертов, разработчиков среднего уровня и новичков со всего мира, которые обмениваются идеями, знаниями и опытом. Wiring облегчает создание программного обеспечения для управления устройствами, подключёнными к электронной плате, и разработки различных интерактивных устройств. Концепция работы предполагает написание нескольких строк кода, подключение электронных компонентов к оборудованию Wiring и наблюдение, например, за тем, как датчик движения включает свет при приближении человека. Затем можно дописать дополнительные строки, добавить другие датчики и наблюдать изменения в поведении устройства. Такой подход называется быстрым прототипированием (sketching with hardware): позволяет быстро исследовать идеи, выбирать наиболее интересные, дорабатывать и создавать прототипы в итерационном процессе.
Общие сведения
| Wiring | |
|---|---|
| Тип | Программный фреймворк, интегрированная среда разработки |
| Разработчики | Hernando Barragán, Brett Hagman, Alexander Brevig |
| Написана на | C++ и Си |
| Первый выпуск | 2003[1] |
| Последняя версия | 1.0 (0101) (28 октября 2014) |
| Репозиторий | github.com/WiringProject… |
| Лицензия | LGPL или GPL |
| Сайт | wiring.org.co |
Программное обеспечение
IDE Wiring — это кроссплатформенное программное обеспечение, написанное на Java, и основано на IDE, разработанной для языка программирования Processing. Среда ориентирована на знакомство художников и дизайнеров с программированием и прототипированием электроники. В составе среды — редактор кода с подсветкой синтаксиса, выделением скобок, автоматическим форматированием, а также возможностью компиляции и загрузки программ на плату одним нажатием.
В состав IDE включена библиотека на C/C++, называемая «Wiring», которая облегчает выполнение типовых операций ввода-вывода. Программы для Wiring пишутся на C++. Минимальная программа содержит всего две функции:
- setup(): запускается один раз при старте программы и может использоваться для инициализации среды.
- loop(): вызывается многократно до выключения или сброса платы.
Обычно первой программой для микроконтроллера является мигание светодиодом. В среде Wiring пользователь может написать код подобного вида:
int ledPin = WLED; // имя для встроенного светодиода
void setup () {
pinMode(ledPin, OUTPUT); // настроить контакт на выход
}
void loop () {
digitalWrite(ledPin, HIGH); // включить светодиод
delay (1000); // подождать одну секунду (1000 мс)
digitalWrite(ledPin, LOW); // выключить светодиод
delay (1000); // подождать одну секунду
}
При нажатии кнопки «Загрузить на оборудование Wiring» IDE сохраняет копию кода с добавлением стандартного заголовочного файла в начале, а также добавляет простую функцию main.
IDE использует GNU toolchain и AVR Libc для компиляции программ, а для загрузки на плату применяется avrdude.
Открытое оборудование и программное обеспечение
Схемы Wiring распространяются по лицензии Creative Commons Attribution Share-Alike 2.5 и доступны на официальном сайте. Любой желающий может получить файлы разводки и производства оборудования. Исходные коды IDE и аппаратной библиотеки также доступны на условиях GPLv2.
Актуальное состояние
Проект Wiring, послуживший основой для создания Arduino, по состоянию на апрель 2026 года находится в состоянии минимальной активности. Хотя официальный сайт остается доступным и содержит документацию, проект практически полностью вытеснен экосистемой Arduino.
- Официальный сайт и IDE. Ресурс wiring.org.co по-прежнему функционирует как архив и учебная площадка. Последние значимые обновления интегрированной среды разработки (Wiring IDE) датируются прошлым десятилетием[2].
- Язык Wiring. Сам синтаксис и программный каркас (framework) продолжают жить в качестве стандарта де-факто для программирования микроконтроллеров. Он используется в Arduino IDE, PlatformIO и множестве других сред как базовая библиотека функций (таких как
digitalWrite(),analogRead()и др.)[3]. - Разработка. Активная разработка новых версий самого ПО Wiring фактически прекращена. Большинство разработчиков и сообщество перешли на Arduino из-за более доступного железа и обширной базы библиотек[4].
Примечания
- ↑ About \ Wiring
- ↑ Hernando Barragn. Wiring (англ.). wiring.org.co. Дата обращения: 22 апреля 2026.
- ↑ Arduino IDE, Wiring, Processing, Firmata relationships? Arduino Forum. Дата обращения: 22 апреля 2026.
- ↑ Arduino vs. Processing vs. Wiring? Reddit.
Литература
- Reas, Casey. Processing: A Programming Handbook for Visual Designers and Artists / Casey Reas, Ben Fry, John Maeda. — 1-е. — The MIT Press, 30 сентября 2007. — P. 736. — ISBN 978-0-262-18262-1.
- Igoe, Tom. Making Things Talk: Practical Methods for Connecting Physical Objects. — 1-е. — O'Reilly Media, 28 сентября 2007. — P. 432. — ISBN 978-0-596-51051-0.
- Noble, Joshua. Programming Interactivity: A Designer's Guide to Processing, Arduino, and openFramework. — 1-е. — O'Reilly Media, 15 июля 2009. — P. 768. — ISBN 978-0-596-15414-1.