Программы, написанные для Arduino, называются скетчами.Эти скетчи создаются в текстовом редакторе, который имеет возможность вырезания/вставки и поиска/замены текста. Поле сообщений выводит информацию во время сохранения, экспорта и при ошибках. Консоль показывает текстовый вывод среды Arduino, включая полные сообщения об ошибках и прочую информацию. Панель кнопок позволяет проверять и выгружать программы, создавать, открывать и сохранять скетчи, а также открыть монитор последовательного порта:
Verify/Compile. Проверить код на ошибки.
Stop. Останавливает монитор последовательного порта или снимает фокус с других кнопок.
New. Создаёт новый скетч.
Open. Показывает список всех скетчей. При щелчке на выбранном скетче он будет открыт.
Примечание: из-за ошибки в Java это меню невозможно прокрутить; если вам надо открыть файл в списке, которого не видно, используйте пункт меню File | Sketchbook.
Save. Сохраняет ваш скетч.
Upload to I/O Board. Компилирует ваш код и выгружает его в плату Arduino. Подробнее - см. раздел "Выгрузка" ниже.
Serial Monitor. Открывает монитор последовательного порта.
Другие команды вы можете найти в пяти пунктах меню: File, Edit, Sketch, Tools, Help. Эти меню являются контекстно-зависимыми, что означает что они зависят от того, что вы делаете в настоящий момент.
Edit (Редактирование)
- Copy for Discourse (Копировать для обсуждения)
Копирует код вашего скетча в буфер обмена в форме, подходящей для размещения текста на форуме, с цветовой подсветкой синтаксиса. - Copy as HTML (Копировать как HTML)
Копирует код скетча в буфер как HTML-код, что удобно для размещения его текста на веб-странице.
Sketch (Скетч)
- Verify/Compile (Проверить/скомпилировать)
Проверяет скетч на ошибки. - Import Library (Импортировать библиотеку)
Добавляет библиотеку в ваш скетч, используя директиву #include в нём. Подробнее читаем об этом в разделе "Библиотеки". - Show Sketch Folder (Показать папку скетчей(
Открывает папку скетчей в проводнике. - Add File... (Добавить файл)
Добавляет файл к скетчу (он будет скопировал из текущего места). Новый файл появится в новой закладке окна скетчей. Файл может быть удалён из числа скетчей, используя меню закладок.
Tools (Инструменты)
- Auto Format (Автоформат)
Форматирует код: упорядочивает отступы так, чтобы открывающие и закрывающие фигурные скобки была выровнены, а также выравнивает выражения. - Board (Плата)
Выбор используемой в настоящий момент платы. - Serial Port (Последовательный порт)
Выбор используемого в настоящий момент последовательного порта из списке всех портов (реальных и виртуальных) для вашего компьютера. Список автоматически обновляется каждый раз, когда вы открываете верхний уровень меню. - Burn Bootloader (Записать загрузчик)
Это меню позволяет записать загрузчик в микроконтроллер на плате Arduino. В обычных условиях это не требуется, но полезно в том случае, если вы приобрели новый чип ATmega (который обычно поставляется без загрузчика).Удостоверьтесь, что вы выбрали верный тип платы из меню "Boards" перед записью загрузчика. При использовании AVR ISP вам понадобится выбрать соответствующий программатору порт из меню Serial Port.
Sketchbook(Альбом скетчей)
Среда Arduinoпредставляет собой концепцию альбома скетчей: стандартное место для хранения ваших прорамм-скетчей. Скетчи в альбоме могут быть открыты через меню File > Sketchbook или кнопкой Open на панели инструментов. При первом запуске ПО Arduino оно автоматически создаст папку для ваших скетчей. Вы можете просматривать или изменять место расположения альбома в диалоге "Preferences".
Tabs, Multiple Files, Compilation (Закладки, файлы, компилирование)
Позволяет управлять более скетчами из больше чем одного файла (каждый из которых расположен на своей закладке). Это могут быть файлы кода Arduino (без расширения), файлы на языке C files (расширение ".c"), на языке C++ files (расширение ".cpp"), или файлы заголовков (с расширением ".h").
Uploading (Выгрузка)
Перед выгрузкой вашего скетча вам требуется выбрать соответствующий пункт меню в разделе Tools > Board and Tools > Serial Port menus. Эти платы описаны ниже. Для компьютеров Mac последовательный порт будет описан примерно как /dev/tty.usbserial-1B1 (для платы USB), или /dev/tty.USA19QW1b1P1.1 (для платы с последовательным портом, подключённым к адаптеру USB-to-Serial). В Windows, это, возможно, COM1 или COM2 (для плат с последовательным портом) или COM4, COM5, COM7 или выше (для USB-плат) - чтобы определиться точно, загляните в Диспетчер устройств - USB serial device. Для Linux порты должны выглядеть как /dev/ttyUSB0, /dev/ttyUSB1 и т.п.
После того как вы выбрали правильный последовательный порт и плату, нажмите кнопку "upload" в панели инструментов или выберите пункт " Upload to I/O Board" в меню "File" (для программы Arduino версии 0.22) или "Скетч -> Загрузка" (для версий 1.00 и старше).
Современные платы Arduino производят автоматический перезапуск (сброс) и начинают загрузку. С более старыми платами, у которых нет функции автоматического перезапуска, вам потребуется нажать "reset" на плате перед началом выгрузки. На большинстве плат во время загрузки вы увидите мигающие светодиоды RX и TX. После окончания загрузки среда Arduino покажет сообщение об успешном завершении, или об ошибке.
При выгрузке скетча вы используете загрузчик, который уже есть в Arduino - это маленькая программа, которая загружена в микроконтроллер. Она позволяет загружать в этот-же микроконтроллер код без применения программатора. Загрузчик активен несколько секунд после перезапуска платы, затем он запускает на выполнение скетч, который последний раз был загружен в микроконтроллер. Загрузчик мигает светодиодом на плате (вывод 13) после запуска (например, после сброса).
Librarires (Библиотеки)
Библиотеки предоставляют вам дополнительные возможности при использовании скетчей, например, работу с различными устройствами или с данными. Для использовании библиотеки в скетче, выберите пункт меню "Sketch > Import Library". После этого в начало скетча будет вставлено одно или несколько выражений #include; библиотеки будет скомпилирована с вашим скетчем. Поскольку библиотеки выгружаются на плату вместе с вашим скетчем, они увеличивают используемое пространство памяти микроконтроллера. Если библиотеки в вашем скетче больше не используется, просто удалите из него выражение #include.
Существует множество готовых библиотек. Некоторые из них уже включены в среду Arduino, другие могу быть загружены из различных источников. Чтобы установить библиотеки сторонних производителей, создайте папку "libraries" в папке вашего альбома скетчей, затем распакуйте в ней библиотеку. Например, чтобы установить библиотеку DateTime, её следует распаковать в папку /libraries/DateTime в вашей папки скетчей.
Third-Party Hardware (Другие платы)
В папке "hardware" вашей папки скетчей может быть добавлена поддержка других плат. Установленные платформы могут включить определения плат (которые появятся в меню "Board"), библиотеки ядра, загрузчики и определения программаторов. Для установки создайте папку "hardware", а затем распакуйте платформу стороннего производителя в собственную подпапку. Для удаления просто удалите эту папку.
Более подробно о создании пакетов для плат других производителей смотрите страницу Google Code.
Serial Monitor (Монитор передачи данных)
Показывает данные, отправленные плате Arduino (с USB или с последовательным портом). Чтобы отправить данные плате, введите текст и нажмите кнопку "send" или "Enter" на клавиатуре. Выберите скорость передачи символов из выпадающего меню, которая будет передана функции Serial.begin в вашем скетче. Заметим, что для Mac или Linux плата Arduino выполнит сброс (перезапустит скетч с начала) при запуске монитора.
Preferences (Настройки)
Некоторые настройки могут быть установлены в этом диалоге (находится в меню "Arduino" в Mac или в меню "File" для Windows и Linux). Остальные настройки могут быть указаны в файле настроек, место расположения которого указано в этом диалоге.
Boards (Платы)
Выбор платы выполняет две функции: параметры (такие, как скорость процессора и скорость передачи данных), используемых при компилировании скетча; а также файл и биты установки, используемые при команде Burn Bootloader (Записать загрузчик). Некоторые платы отличаются только в последнем, так-что даже если у вас выгрузка проходит успешно, всё-таки проверьте установку этого пункта меню перед записью загрузчика в плату.
- Arduino Duemilanove or Nano с ATmega328
ATmega328 работает на частоте 16МГц с автоматическим перезапуском (сбросом). Также используется для 16 МГц- (5В)- версий плат Arduino Pro или Pro Mini с ATmega328. - Arduino Diecimila, Duemilanove, or Nano w/ ATmega168
ATmega168 работает на 16МГц с автоматическим сбросом. Компилирование и выгрузка схожи с Arduino NG или более старыми платами с ATmega168, но загрузчик имеет меньший период задержки (и мигает светодиодом на 13-й ножке только один раз после сброса). Также используется для 16 МГц- (5В)- версий Arduino Pro и Pro Mini с ATmega168. - Arduino Mega
- ATmega1280 работает на 16МГц с автоматическим сбросом.
- Arduino Mini
Сходна с Arduino NG или боле старыми с ATmega168 (например, ATmega168, работающая на 16 МГц без автосброса). - Arduino BT
ATmega168 на 16 МГц. Загрузчик содержит код для запуска встроенного на плате модуля bluetooth. - LilyPad Arduino w/ ATmega328
ATmega328 на 8 MHz (3.3В) с автосбросом. Сходна с Arduino Pro или Pro Mini (3.3В, 8 МГц) с ATmega328. - LilyPad Arduino w/ ATmega168
ATmega168 на 8 МГц. Компилирование и загрузка сходны с Arduino Pro или Pro Mini (8 МГц) с ATmega168. Однако, записанный загрузчик имеет большее время ожидания (и мигает светодиодом на 13-м выводе трижды), так как оригинальная версия LilyPad не поддерживала автосброс. Они также не имеют внешнего кварца, так-что команда записи загрузчика конфигурирует биты установки микроконтроллера ATmega168на работу от внутреннего тактового генератора на 8 МГц.
Если у вас старая версия LilyPad (с 6-контактным разъёмом для программирования), вам следует выбрать Arduino Pro или Pro Mini (8 МГц) с ATmega168 перед записью загрузчика. - Arduino Pro or Pro Mini (3.3or, 8 MHz) w/ ATmega328
ATmega328, работающая на 8 МГц (3.3В) с автосбросом. Сходна с LilyPad Arduino с ATmega328. - Arduino Pro or Pro Mini (3.3V, 8 MHz) w/ ATmega168
ATmega168 на 8 МГц (3.3В) с автосбросом - Arduino NG or older w/ ATmega168
ATmega168 на 16 МГц без автосброса. Компилирование и выгрузка сходны с Arduino Diecimila или Duemilanove с ATmega168, но загрузчик имеет меньший период ожидания (и мигает светодиодом на выводе 13 три раза после сброса). - Arduino NG or older w/ ATmega8
ATmega8 на частоте 16 МГц без автосброса.