Универсальный внешний накопитель для всех iOS-устройств, совместим с PC/Mac, Android
Header Banner
8 800 100 5771 | +7 495 540 4266
c 9:00 до 24:00 пн-пт | c 10:00 до 18:00 сб
0 Comments

Содержание

Среда разработки Arduino | Аппаратная платформа Arduino

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

Скачать

Последнюю версию можно найти по этой ссылке
http://www.arduino.cc/en/Main/Software

Полезные ссылки:

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

Verify/Compile
Проверка программного кода на ошибки, компиляция.

Stop
Остановка мониторинга последовательной шины(Serial monitor) или затемнение других кнопок.

New
Создание нового скетча.

Open
Открытие меню доступа ко всем скетчам в блокноте. Открывается нажатием в текущем окне.

Примечание: из-за наличия ошибки в Java данное меню не может прокручиваться; при необходимости открыть скетч из этого списка проследуйте в меню File | Sketchbook.

Save
Сохранение скетча.

Upload to I/O Board
Компилирует программный код и загружает его в устройство Arduino. Описание загрузки приведено ниже.

Serial Monitor
Открытие мониторинга последовательной шины (Serial monitor).

Дополнительные команды сгруппированы в пять меню: File, Edit, Sketch, Tools, Help. Доступность меню определяется работой, выполняемой в данный момент.

Edit

  • Copy for Discourse
    Копирует в буфер обмена подходящий для размещения на форуме код скетча с выделением синтаксиса.
  • Copy as HTML
    Копирует код скетча в буфер обмена как HTML код, для размещения на веб-страницах.

Sketch

  • Verify/Compile

    Проверка скетча на ошибки.
  • Import Library
    Добавляет библиотеку в текущий скетч, вставляя директиву #include в код скетча. Подробная информация в описании библиотек ниже (Libraries).
  • Show Sketch Folder
    Открывает папку, содержащую файл скетча, на рабочем столе.
  • Add File...
    Добавляет файл в скетч (файл будет скопирован из текущего места расположения). Новый файл появляется в новой закладке в окне скетча. Файл может быть удален из скетча при помощи меню закладок.

Tools

  • Auto Format
    Данная опция оптимизирует код, например, выстраивает в одну линию по вертикали открывающую и закрывающую скобки и помещает между ними утверждение.
  • Board
    Выбор используемой платформы. Список с описанием платформ приводится ниже.
  • Serial Port
    Меню содержит список последовательных устройств передачи данных (реальных и виртуальных) на компьютере. Список обновляется автоматически каждый раз при открытии меню Tools.
  • Burn Bootloader
    Пункты данного меню позволяют записать Загрузчик (Bootloader) в микроконтроллер на платформе Arduino. Данное действие не требуется в текущей работе с Arduino, но пригодится, если имеется новый ATmega (без загрузчика). Перед записью рекомендуется проверить правильность выбора платформы из меню. При использовании AVR ISP необходимо выбрать соответствующий программатору порт из меню Serial Port.
Блокнот (Sketchbook)

Средой Arduino используется принцип блокнота: стандартное место для хранения программ (скетчей). Скетчи из блокнота открываются через меню File > Sketchbook или кнопкой Open на панели инструментов. При первом запуске программы Arduino автоматически создается директория для блокнота. Расположение блокнота меняется через диалоговое окно Preferences.

Закладки, Файлы и Компиляция

Позволяют работать с несколькими файлами скетчей (каждый открывается в отдельной закладке). Файлы кода могут быть стандартными Arduino (без расширения), файлами С (расширение *.с), файлами С++ (*.срр) или головными файлами (.h).

Загрузка скетча в Arduino

Перед загрузкой скетча требуется задать необходимые параметры в меню Tools > Board

и Tools > Serial Port. Платформы описываются далее по тексту. В ОС Mac последовательный порт может обозначаться как dev/tty.usbserial-1B1 (для платы USB) или /dev/tty.USA19QW1b1P1.1 (для платы последовательной шины, подключенной через адаптер Keyspan USB-to-Serial). В ОС Windows порты могут обозначаться как COM1 или COM2 (для платы последовательной шины) или COM4, COM5, COM7 и выше (для платы USB). Определение порта USB производится в поле Последовательной шины USB Диспетчера устройств Windows. В ОС Linux порты могут обозначаться как /dev/ttyUSB0, /dev/ttyUSB1.

После выбора порта и платформы необходимо нажать кнопку загрузки на панели инструментов или выбрать пункт меню File > Upload to I/O Board. Современные платформы Arduino перезагружаются автоматически перед загрузкой. На старых платформах необходимо нажать кнопку перезагрузки. На большинстве плат во время процесса будут мигать светодиоды RX и TX. Среда разработки Arduino выведет сообщение об окончании загрузки или об ошибках.

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

Библиотеки

Библиотеки добавляют дополнительную функциональность скетчам, например, при работе с аппаратной частью или при обработке данных. Для использования библиотеки необходимо выбрать меню Sketch > Import Library. Одна или несколько директив #include будут размещены в начале кода скетча с последующей компиляцией библиотек и вместе со скетчем. Загрузка библиотек требует дополнительного места в памяти Arduino. Неиспользуемые библиотеки можно удалить из скетча убрав директиву #include.

На Arduino.cc имеется список библиотек. Некоторые библиотеки включены в среду разработки Arduino. Другие могут быть загружены с различных ресурсов. Для установки скачанных библиотек необходимо создать директорию «libraries» в папке блокнота и затем распаковать архив. Например, для установки библиотеки DateTime ее файлы должны находится в подпапке

/libraries/DateTime папки блокнота. 

Смотрите данную инструкцию для написания собственной библиотеки.  

Аппаратные средства других разработчиков

Поддерживаемые аппаратные средства других производителей добавляются в соответствующую подпапку папки блокнота. Устанавливаемые платформы могут включать собственные характеристики (в меню платформы), корневые библиотеки, загрузчик(Bootloader) и характеристики программатора. Для установки требуется распаковать архив в созданную папку.  (Запрещено использовать наименование папки "arduino", т.к. могут быть перезаписаны встроенные данные платформы Arduino.) Для деинсталляции данных удаляется соответствующая директория.

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

Мониторинг последовательной шины (Serial Monitor)

Отображает данные посылаемые в платформу Arduino (плата USB или плата последовательной шины). Для отправки данных необходимо ввести текст и нажать кнопку Send или Enter. Затем выбирается скорость передачи из выпадающего списка, соответствующая значению

Serial.begin в скетче. На ОС Mac или Linux платформа Arduino будет перезагружена (скетч начнется сначала) при подключении мониторинга последовательной шины.

Имеется возможность обмена информацией с платформой через программы Processing, Flash, MaxMSP и т.д. (см. подробности на странице описаний интерфейсов).

Настройки

Некоторые настройки изменяются в окне Preferences (меню Arduino в ОС Mac или File в ОС Windows и Linux). Остальные настройки находятся в файле, месторасположение которого указано в окне Preferences.

Платформы

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

  • Arduino Duemilanove или Nano с ATmega328
    Тактовая частота ATmega328 16 МГц с возможностью автоматической перезагрузки. Используется для версий Arduino Pro или Pro Mini с ATmega328 на частоте 16 МГц (5 В).
  • Arduino Diecimila, Duemilanove, или Nano с ATmega168
    Тактовая частота ATmega168 16 МГц с возможностью автоматической перезагрузки. Компиляция и загрузка соответствует Arduino NG или старым версиям с ATmega168, но загрузка Bootloader имеет короткий таймаут (при перезагрузке светодиод пина 13 мигает один раз). Используется для версий Arduino Pro и Pro Mini с ATmega168 на частоте 16 МГц (5 В). 
  • Arduino Mega
    Тактовая частота ATmega1280 16 МГц с возможностью автоматической перезагрузки.
  • Arduino Mini
    Соответствует Arduino NG или старым версиям с ATmega168 (напр.: тактовая частота ATmega168 16 МГц без возможности автоматической перезагрузки).
  • Arduino BT
    Тактовая частота ATmega168 16 МГц. Загрузка Bootloader происходит совместно с кодами для инициализации модуля Bluetooth.
  • LilyPad Arduino с ATmega328
    Тактовая частота ATmega328 8 МГц (3.3 В) с возможность автоматической перезагрузки. Соответствует Arduino Pro или Pro Mini (3.3 В, 8 МГц) с ATmega328.
  • LilyPad Arduino с ATmega168
    Тактовая частота ATmega168 8 МГц.

    Компиляция и загрузка соответствует Arduino Pro или Pro Mini (8 МГц) с ATmega168.

    Загруженный Bootloader имеет длинный таймаут (при перезагрузке светодиод пина 13 мигает три раза), т.к. оригинальные версии LilyPad не поддерживают автоматическую перезагрузку. Также не поддерживаются внешние часы и, следовательно, Bootloader конфигурирует загрузку внутренних 8 МГц часов в ATmega168.

    При наличии поздних версий LilyPad (с 6-контакным программным вводом) перед загрузкой Bootloader требуется выбрать Arduino Pro или Pro Mini (8 MHz) с ATmega168.

  • Arduino Pro или Pro Mini (3.3 В, 8 МГц) с ATmega328
    Тактовая частота ATmega328 8 МГц (3.3 В) с возможность автоматической перезагрузки. Соответствует LilyPad Arduino с ATmega328.
  • Arduino Pro или Pro Mini (3.3 В, 8 МГц) с ATmega168
    Тактовая частота ATmega168 8 МГц (3.3 В) с возможность автоматической перезагрузки.
  • Arduino NG или предыдущие версии с ATmega168

    Тактовая частота ATmega168 16 МГц без возможности автоматической перезагрузки. Компиляция и загрузка соответствует Arduino Diecimila или Duemilanove с ATmega168, но загрузка Bootloader имеет длинный таймаут (при перезагрузке светодиод пина 13 мигает три раза).
  • Arduino NG или предыдущие версии с ATmega8
    Тактовая частота ATmega8 16 МГц без возможности автоматической перезагрузки.

 

Разбираемся с Arduino IDE | AlexGyver Technologies

Работа с Arduino IDE


Рассмотрим основную программу, с которой будем работать – Arduino IDE. IDE расшифровывается как интегрированная среда разработки, и в нашем случае представляет собой блокнот, в котором мы пишем код, препроцессор и компилятор, которые проверяют и компилируют код, и инструменты для загрузки, которые загружают код выбранным способом. IDE написана на java, поэтому не удивляйтесь её долгому запуску, большому объему занимаемой оперативки и медленной работе. Несмотря на огромный опыт работы с ардуино я до сих пор продолжаю писать код в Arduino IDE, потому что я к ней привык. Помимо перечисленных проблем стандартная IDE выделяется на фоне “взрослых” сред разработки отсутствием дерева/файловой структуры проекта (что не нужно для простых проектов), отсутствием рефакторинга, отсутствием автоматического дополнения кода (хотя его обещают вот-вот добавить и уже есть beta) и очень медленной компиляцией кода. Этих недостатков лишены аналоги Arduino IDE, о них поговорим в конце урока. Помимо отсутствия озвученных недостатков там есть некоторые полезные фишки, например все define-ы файла с кодом отображаются в отдельном блоке и с ними очень удобно работать.

Интерфейс


Сначала рассмотрим общий вид программы, т.е. как она выглядит после запуска. В самом центре – блокнот, то самое место, где пишется код. По умолчанию уже написаны два стандартных блока, setup и loop. К ним вернёмся в разделе уроков программирования. Всё остальное можно увидеть на скриншоте ниже.

  • Проверить – компиляция (сборка, проверка на ошибки…) кода без его загрузки в плату. То есть код можно написать и проверить на ошибки даже не подключая плату к компьютеру
  • Загрузить – компиляция и загрузка прошивки в плату
  • Создать/открыть/сохранить – тут всё понятно
  • Монитор порта – кнопка открывает монитор последовательного пора для общения с платой
  • Меню вкладок – работа с вкладками, о них поговорим ниже
  • Текущее состояние – тут выводится краткая информация о последнем действии: загрузка завершена, ошибка загрузки, автоформатирование завершено и т.д.
  • Лог работы – тут выводится лог компиляции и вообще все системные сообщения, отчёты об ошибках и размере скомпилированного кода
  • Конфигурация оборудования – выводится название выбранной платы, версии микроконтроллера и номер выбранного COM порта
Arduino IDE

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

Вкладка “Файл”


  • Новый
  • Открыть
  • Открыть недавние
  • Папка со скетчами – список скетчей, которые сохранены туда, куда программа предлагает их сохранять по умолчанию (Документы/Arduino)
  • Примеры – список установленных библиотек с подсписком примеров к каждой. Весьма полезная штука
  • Закрыть
  • Сохранить
  • Сохранить как…
  • Настройки страницы (для печати)
  • Печать
  • Настройки
  • Выход

Далее сразу рассмотрим окно настроек:

Окно настроек


Настройки Arduino IDE

Куча интересных настроек на свой вкус. Из них отмечу

  • Размещение папки скетчей – куда по умолчанию сохраняются скетчи
  • Показать подробный вывод – показывает подробный лог при компиляции и загрузке, нужно при поиске багов и непонятных глюков/ошибок
  • Использовать внешний редактор – запрещает редактирование кода из Arduino IDE, чтобы редактировать его в других редакторах, например Notepad++. Редактируем там, а загружаем через IDE. Зачем это? Писать код в том же Notepad++ гораздо удобнее и приятнее, чем в Arduino IDE. К сожалению.
  • Дополнительные ссылки для менеджера плат – сюда вставляются ссылки на пакеты для работы с другими платами, например такими основанными на ESP8266 или ATtiny85.

Вкладка “Правка”


Во вкладке Правка ничего такого особенного нет, всё как в других программах

Вкладка “Скетч”


Вкладка “Скетч”
  • Проверить/компилировать – то же, что кнопка галочка
  • Загрузка – то же, что кнопка загрузка
  • Загрузить через программатор – загрузить скетч напрямую в МК, минуя загрузчик
  • Экспорт бинарного файла – сохраняет скомпилированный файл, который и загружается в МК. Бинарный файл хорош тем, что содержащийся в нём код практически невозможно не то что отредактировать, но даже прочитать как вменяемый код. Именно в таком виде обычно поставляются прошивки для цифровой техники, чтобы никто не видел исходник =)
  • Показать папку скетча
  • Подключить библиотеку – подключает в код библиотеку, с директивой include, всё как нужно
    • Управлять библиотеками… – открывает менеджер библиотек, из которого можно установить библиотеки из официального списка
    • Добавить .zip библиотеку – не рекомендую так делать, потом не найдёте, куда она установилась
  • Добавить файл… – подключает в код внешний файл

Вкладка “Инструменты”


Вкладка “Инструменты”
  • АвтоФорматирование – выравнивает код по табуляции. Крайне важная фишка, используйте её и комбинацию Ctrl+T как можно чаще
  • Архивировать скетч – сохраняет скетч как .zip архив
  • Исправить кодировку и перезагрузить – полезная штука, когда скачал чей-то код из интернета, а там поехала кодировка
  • Управлять библиотеками… – открывает менеджер библиотек, из которого можно установить библиотеки из официального списка 
  • Монитор порта
  • Плоттер по последовательному соединению – встроенный построитель графиков по идущим в порт данным
  • Плата – выбор платы, куда хотим загрузить прошивку
  • Процессор – выбор процессора, который стоит на плате. Обычно он один на выбор, но иногда есть варианты
  • Порт – COM порт, к которому подключена плата. Это всегда порт, отличный от COM1 (системный порт)
  • Программатор – выбор программатора для загрузки кода через программатор
  • Записать загрузчик – прошивает загрузчик, соответствующий выбранной плате и процессору в микроконтроллер при помощи программатора (который ISP)

Меню вкладок


Меню вкладок

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

  • Вкладки относятся к одному и тому же проекту, к файлам, находящимся с ним в одной папке
  • Вкладки просто разбивают общий код на части, то есть в одной вкладке фигурная скобка { может открыться, а в следующей – закрыться }. При компиляции все вкладки просто объединяются в один текст по порядку слева направо (с левой вкладки до правой). Также это означает, что вкладки должны содержать код, относящийся только к этому проекту, и сделать в одной вкладке void loop() и в другой – нельзя, так как loop() может быть только один
  • Вкладки автоматически располагаются в алфавитном порядке, поэтому создаваемая вкладка может оказаться между другими уже существующими. Это означает, что разбивать блоки кода по разным вкладкам (как во втором пункте, { на одной вкладке, } на другой вкладке) – крайне не рекомендуется.
  • Также не забываем, что переменная должна быть объявлена до своего вызова, то есть вкладка с объявлением переменной должна быть левее вкладки, где переменная вызывается. Создавая новую вкладку нужно сразу думать, где она появится с таким именем и не будет ли из за этого проблем. Также название вкладок можно начинать с цифр и таким образом точно контролировать их порядок. Во избежание проблем с переменными, все глобальные переменные лучше объявлять в самой первой вкладке.
  • Вкладки сохраняются в папке с проектом и имеют расширение .ino, при запуске любой вкладки откроется весь проект со всеми вкладками.
  • Помимо “родных” .ino файлов Arduino IDE автоматически подцепляет файлы с расширениями .h (заголовочный файл), .cpp (файл реализации) и .pde (старый формат файлов Arduino IDE). Эти файлы точно так же появляются в виде вкладок, но например заголовочный файл .h не участвует в компиляци до тех пор, пока не будет вручную подключен к проекту при помощи команды include. То есть он висит как вкладка, его можно редактировать, но без подключения он так и останется просто отдельным текстом. В таких файлах обычно содержатся классы или просто отдельные массивы данных.

Аналоги Arduino IDE


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

  • Notepad++ + Arduino IDE – вполне работоспособная связка – прогерский блокнот “на максималках”, в котором ОЧЕНЬ удобно писать код, и Arduino IDE, в которой удобно выбирать железо и загружать прошивку
  • PlatformIO – очень мощная взрослая среда разработки, подробнее можно почитать даже в статье у меня на сайте. Автор – не я. Лично мне платформио не понравилась. Да, есть автодополнение кода и всякие удобные фишки, но конфигурировать проект приходится вручную (в 2019 году не сделать пару кнопок для того же выбора порта – разработчики – АУ!!!), также есть проблемы с библиотеками.
  • Programino IDE – вот эта среда мне довольно таки понравилась, есть автодополнение и другие удобные фичи. Единственный минус – она платная, но на всё платное можно нагуглить кряк =) Подробнее на официальном сайте
  • MariaMole – интересная среда, которая вроде как больше не развивается. Количество “плюшек” примерно равно количеству “багов” и недоделок, по крайней мере так было в 2017 году. Подробнее
  • B4R – среда, позволяющая программировать Арудино на языке Basic. Кому интересно – вот официальный сайт
  • Visual Studio Micro – очень мощный и взрослый инструмент, являющийся плагином к Microsoft Visual Studio. Подробнее читать здесь
  • XOD – очень интересная среда разработки, в которой программа составляется из нод (node) – блоков. Полностью другая концепция программирования, посмотрите обязательно. Официальный сайт
  • Atmel Studio – официальная среда для программирования микроконтроллеров AVR. Никаких детских ардуиновских функций – только работа напрямую с МК, только хардкор! Подробнее можно почитать на сайте амперки

Важные страницы


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

Наверх
  • Рейтинги
  • Обзоры
    • Смартфоны и планшеты
    • Компьютеры и ноутбуки
    • Комплектующие
    • Периферия
    • Фото и видео
    • Аксессуары
    • ТВ и аудио
    • Техника для дома
    • Программы и приложения
  • Новости
  • Советы
    • Покупка
    • Эксплуатация
    • Ремонт
  • Подборки
    • Смартфоны и планшеты
    • Компьютеры
    • Аксессуары
    • ТВ и аудио
    • Фото и видео
    • Программы и приложения
    • Техника для дома
  • Гейминг
    • Игры
    • Железо
Альтернативная среда программирования для Arduino — FLProg / Блог компании FLProg / Хабр
Добрый день.
Хочу представить Вам очередной проект на ниве программирования распространенных плат Arduino.
Сначала немного истории. С самого момента появления контроллеров развитие принципов работы с ними идет по пути роста абстракции. Первый этап представлял программирование непосредственно в машинных кодах. Программирование было сложным, долгим и требовало очень специфичного склада ума. Поэтому программистов было очень мало.



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

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

Проект FLProg предлагает новый уровень абстракции с довольно смелым заявлением — «Что бы программировать микроконтроллеры, да и компьютеры не обязательно знать языки программирования».
Заявление может показаться слишком смелым, но это возможно и уже доказано в смежной с компьютерами области. Это область программирования промышленных систем автоматизированного управления. Практически с самого начала производители промышленных контроллеров пошли по этому пути. Сейчас стандартом для сред программирования у основных производителей являются языки FBD и LAD. Собственно говоря, как таковыми языками они не являются. Это скорее графические среды для рисования принципиальных иди логических схем.

Такой подход оказался очень удобным для легкого вхождения в разработку систем АСУ инженеров электриков и электронщиков. Разрабатывая проекты установок, они могли легко привязать работу этих установок к алгоритмам работы контроллера. В обслуживании этих установок на объекте так же лучше когда существующий обслуживающий персонал может легко проверить работу системы АСУ, найти проблему. И при этом нет необходимости вызывать по каждому пустяку программиста из «Центра». И это подход себя оправдал. На сегодняшний день почти все системы промышленной автоматики созданы с помощью таких средств разработки.

Такая среда разработки есть у Siemens, ABB, Schneider, да и практически у всех производителей. Но существует и проблема. Все они привязаны к своим контроллерам. А цены на эти контроллеры очень тяжело назвать демократичными.

И вот появились платы Arduino. Дешёвые, с большим набором периферии и шилдов расширений. С интерфейсами совместимыми с дисплеями, датчиками, и другими устройствами. С возможностью прямого подключения к компьютеру, подключению к сети Ehernet и WiFI.

Эти платы идеально подходят для самодельщиков и кулибиных, на которых наша страна всегда была, есть и будет богата. Но, как всегда есть но. Программируются эти платы на языке C. Для большинства этих умнейших людей, с очень прямыми руками, растущими из положенного места, это китайская азбука. Они могут придумать нарисовать, собрать отладить и запустить сложнейшие схемы, но IF, FOR, Case, Void и т.п. это не для них. Конечно, можно почитать инструкции в интернете, поиграться какое — то время, помигать светодиодом с помощью примера. Но для более серьезного применения необходимо детальное изучение языка. А зачем им это? Они не собираются быть профессиональными программистами. У них другой путь. Они что то придумали. Да это проще и красивее собрать с помощью микроконтроллера, но становится для этого программистом, потратив месяцы на изучение языка? Нет, конечно. Собирают по старинке, попроще конечно, но в своей области.

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

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

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

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

Среда разработки для Arduino

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

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

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

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

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

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

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

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

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

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

Ардуино для начинающих

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

Arduino – это электронные платы, к которым можно подсоединять различные датчики, двигатели, экраны и много других электронных компонентов. Плата Ардуино будет управлять этими компонентами с помощью программы, который вы в нее загрузите. Самые популярные платы для начинающих – это Arduino Uno, Arduino Mega, Arduino Nano и Arduino Leonardo. Кроме этого есть множество  других вариантов, подходящих для конкретных случаев.

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

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

Arduino для детей

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

Arduino – это целый мир, в котором можно почувствовать себя волшебником. Лучший инструмент для приобщения детей к технологиям и вдохновленного инженерного творчества! Для обучения детей электронике вы можете использовать как отдельные контроллеры Arduino Uno, Mega или Nano, а также наборы и конструкторы ардуино российских и китайских производителей. Обучение детей программированию Ардуино возможно с использованием среды программирования Arduino IDE или же в визуальных средах ArduBlock, S4A, mBlock, основанных на Scratch.

Как программируют Arduino

Arduino — это про­грам­ми­ру­е­мый мик­ро­кон­трол­лер, кото­рый мож­но исполь­зо­вать в робо­то­тех­ни­ке, умном доме и вооб­ще запро­грам­ми­ро­вать его как угод­но: что­бы он кор­мил кота, поли­вал рас­те­ния, пре­ду­пре­ждал вас о при­бли­же­нии вра­гов или откры­вал две­ри с помо­щью маг­нит­но­го клю­ча. У нас есть под­бор­ка 10 инте­рес­ных вещей, кото­рые мож­но сде­лать на этой плат­фор­ме. Теперь вре­мя разо­брать­ся, как про­грам­ми­сты с ней рабо­та­ют.

Язык Arduino

Если опыт­ный про­грам­мист посмот­рит на код для Arduino, он ска­жет, что это код на C++. Это неда­ле­ко от исти­ны: основ­ная логи­ка Арду­и­но реа­ли­зо­ва­на на C++, а свер­ху на неё надет фрейм­ворк Wiring, кото­рый отве­ча­ет за обще­ние с желе­зом.

На это есть несколь­ко при­чин:

  1. У С++ сла­ва «слиш­ком слож­но­го язы­ка». Arduino пози­ци­о­ни­ру­ет­ся как мик­ро­кон­трол­ле­ры и робо­то­тех­ни­ка для начи­на­ю­щих, а начи­на­ю­щим ино­гда труд­но объ­яс­нить, что С++ не такой уж слож­ный для стар­та. Про­ще сде­лать фрейм­ворк и назвать его отдель­ным язы­ком.
  2. В чистом С++ нет удоб­ных команд для AVR-контроллеров, поэто­му нужен был инстру­мент, кото­рый возь­мёт на себя все слож­ные функ­ции, а на выхо­де даст про­грам­ми­сту часто исполь­зу­е­мые коман­ды.
  3. Раз­ра­бот­чи­ки дали про­грам­ми­стам про­сто писать нуж­ные им про­грам­мы, а все слу­жеб­ные коман­ды, необ­хо­ди­мые для пра­виль­но­го оформ­ле­ния кода на С++, взя­ла на себя спе­ци­аль­ная сре­да раз­ра­бот­ки.

Сре­да раз­ра­бот­ки (IDE) Arduino.

Подготовка и бесконечность

В любой про­грам­ме для Arduino есть две прин­ци­пи­аль­ные части: под­го­то­ви­тель­ная часть и основ­ной цикл.

В под­го­то­ви­тель­ной части вы гово­ри­те желе­зу, чего от вас ожи­дать: какие пор­ты настро­ить на вход, какие на выход, что у вас как назы­ва­ет­ся. Напри­мер, если у вас дат­чик под­клю­чён ко вхо­ду 10, а лам­поч­ка к выхо­ду 3, то вы може­те обо­звать эти вхо­ды и выхо­ды как вам удоб­но, а даль­ше в коде обра­щать­ся не к деся­то­му вхо­ду и тре­тье­му выхо­ду, а по-человечески: к дат­чи­ку или лам­поч­ке. Вся часть с под­го­тов­кой выпол­ня­ет­ся один раз при стар­те кон­трол­ле­ра. Кон­трол­лер всё запо­ми­на­ет и пере­хо­дит в основ­ной цикл.

Основ­ной цикл — это то, что про­ис­хо­дит в функ­ции loop(). Арду­и­но берёт отту­да коман­ды и выпол­ня­ет их под­ряд. Как толь­ко коман­ды закон­чи­лись, он воз­вра­ща­ет­ся в нача­ло цик­ла и повто­ря­ет всё. И так до бес­ко­неч­но­сти.

В основ­ном цик­ле мы опи­сы­ва­ем все полез­ные вещи, кото­рые дол­жен делать кон­трол­лер: счи­ты­вать дан­ные, мигать лам­па­ми, включать-выключать мото­ры, кор­мить кота и т. д.

Что можно и чего нельзя

Арду­и­но рабо­та­ет на одно­ядер­ном и не шиб­ко шуст­ром про­цес­со­ре. Его так­то­вая часто­та — 16 мега­герц, то есть 16 мил­ли­о­нов про­цес­сор­ных опе­ра­ций в секун­ду. Это не очень быст­ро, плюс ядро толь­ко одно, и оно испол­ня­ет одну коман­ду за дру­гой.

Вот какие огра­ни­че­ния это на нас накла­ды­ва­ет.

Нет насто­я­щей мно­го­за­дач­но­сти. Мож­но симу­ли­ро­вать мно­го­за­дач­ность с помо­щью при­ё­ма Protothreading, но это ско­рее костыль. Нель­зя, напри­мер, ска­зать: «Когда нажмёт­ся такая-то кноп­ка — сде­лай так». Вме­сто это­го при­дёт­ся в основ­ном цик­ле писать про­вер­ку: «А эта кноп­ка нажа­та? Если да, то...»

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

Ана­ло­гич­но с сетью: без допол­ни­тель­ных плат и биб­лио­тек Арду­и­но не может ни с чем общать­ся (кро­ме как включать-выключать элек­три­че­ство на сво­их выхо­дах).

Полег­че со слож­ной мате­ма­ти­кой: если вам нуж­но что-то слож­ное типа три­го­но­мет­ри­че­ских функ­ций, будь­те гото­вы к тому, что Арду­и­но будет счи­тать их доволь­но мед­лен­но. Для вас это одна строч­ка кода, а для Арду­и­но это тыся­чи опе­ра­ций под капо­том. Поща­ди­те.

Отчё­ты? Ошиб­ки? Толь­ко при ком­пи­ля­ции. У Арду­и­но нет встро­ен­ных средств сооб­щить вам, что ему нехо­ро­шо. Если он завис, он не пока­жет окно ошиб­ки: во-первых, у него нет гра­фи­че­ско­го интер­фей­са, во-вторых — экра­на. Если хоти­те систе­му оши­бок или отчёт­ность, пиши­те её 🙂

Если серьёз­но, то перед зали­вом про­грам­мы на кон­трол­лер ком­пи­ля­тор про­ве­рит код и най­дёт в нём опе­чат­ки или про­бле­мы с типа­ми дан­ных. Но на этом всё: если у вас слу­чай­но полу­чи­лась бес­ко­неч­ная пет­ля в коде или при каких-то обсто­я­тель­ствах вы пове­си­те про­цес­сор деле­ни­ем на ноль — жми­те пере­за­груз­ку и исправ­ляй­те код.

И всё же

Арду­и­но — это кайф: вы с помо­щью кода може­те управ­лять физи­че­ским миром, мото­ра­ми, лам­па­ми и элек­тро­де­та­ля­ми. Мож­но создать умную розет­ку; мож­но собрать умный замок для сей­фа; мож­но сде­лать детек­тор влаж­но­сти поч­вы, кото­рый будет вклю­чать авто­ма­ти­че­ский полив. И всё это — на доволь­но понят­ном, чита­е­мом и ком­пакт­ном язы­ке C++, на кото­рый свер­ху ещё наде­та удоб­ная биб­лио­те­ка для желе­за. Пре­крас­ный спо­соб про­ве­сти выход­ные.

Какие ещё языки используют для Arduino

Но чу! Под Arduino мож­но писать и на дру­гих язы­ках!

С. Как и С++, Си лег­ко мож­но исполь­зо­вать для про­грам­ми­ро­ва­ния мик­ро­кон­трол­ле­ров Arduino. Толь­ко если С++ не тре­бу­ет ника­ких допол­ни­тель­ных про­грамм, то для С вам пона­до­бит­ся WinAVR, что­бы пра­виль­но пере­ве­сти код в язык, понят­ный кон­трол­ле­рам AVR.

Python. Было бы стран­но, если бы тако­му уни­вер­саль­но­му язы­ку не нашлось при­ме­не­ния в робо­то­тех­ни­ке. Берё­те биб­лио­те­ки PySerial и vPython, при­кру­чи­ва­е­те их к Python и гото­во!

Java. Прин­цип такой же, как в Python: берё­те биб­лио­те­ки для рабо­ты с пор­та­ми и кон­трол­ле­ра­ми и мож­но начи­нать про­грам­ми­ро­вать.

HTML. Это, конеч­но, совсем экзо­ти­ка, но есть про­ек­ты, кото­рые застав­ля­ют HTML-код рабо­тать на Arduino.

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

Arduino - Окружающая среда

Arduino Software (IDE)

Интегрированная среда разработки Arduino - или Arduino Software (IDE) - содержит текстовый редактор для написания кода, область сообщений, текстовую консоль, панель инструментов с кнопками для общих функций и ряд меню. Он подключается к оборудованию Arduino и Genuino для загрузки программ и связи с ними.

Написание эскизов

Программы, написанные с использованием Arduino Software (IDE), называются эскизами .Эти эскизы пишутся в текстовом редакторе и сохраняются с расширением файла .ino. Редактор имеет функции для вырезания / вставки и для поиска / замены текста. Область сообщений дает обратную связь при сохранении и экспорте, а также отображает ошибки. Консоль отображает текст, выводимый программным обеспечением Arduino (IDE), включая полные сообщения об ошибках и другую информацию. В правом нижнем углу окна отображаются настроенная плата и последовательный порт. Кнопки панели инструментов позволяют проверять и загружать программы, создавать, открывать и сохранять эскизы, а также открывать последовательный монитор.

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

Verify
Проверяет ваш код на наличие ошибок при его компиляции.

Загрузить
Компилирует ваш код и загружает его на настроенную плату.Смотрите загрузку ниже для деталей.

Примечание. Если вы используете на своей плате внешний программатор, вы можете удерживать клавишу «Shift» на вашем компьютере, когда используете этот значок. Текст изменится на «Загрузить с помощью программатора»

Новый
Создает новый эскиз.

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

Примечание: из-за ошибки в Java это меню не прокручивается; если вам нужно открыть эскиз в конце списка, используйте файл | Вместо Sketchbook меню.

Сохранить
Сохраняет ваш эскиз.

Serial Monitor
Открывает последовательный монитор.

Дополнительные команды находятся в пяти меню: File , Edit , Sketch , Tools , Help .Меню являются контекстно-зависимыми, что означает, что доступны только те элементы, которые относятся к выполняемой в данный момент работе.

Файл
  • Новый
    Создает новый экземпляр редактора с минимальной структурой эскиза, которая уже существует.
  • Открыть
    Позволяет загрузить файл эскиза, просматривая диски и папки компьютера.
  • Открыть последние
    Предоставляет краткий список самых последних эскизов, готовых к открытию.
  • Sketchbook
    Показывает текущие эскизы в структуре папок Sketchbook; щелчок по любому имени открывает соответствующий эскиз в новом экземпляре редактора.
  • Примеры
    В этом пункте меню отображается любой пример, предоставленный программным обеспечением Arduino (IDE) или библиотекой. Все примеры структурированы в виде дерева, что позволяет легко получить доступ к теме или библиотеке.
  • Закрыть
    Закрывает экземпляр программного обеспечения Arduino, из которого оно щелкнуло.
  • Сохранить
    Сохраняет эскиз с текущим именем. Если файл не был назван ранее, имя будет предоставлено в окне «Сохранить как ...».
  • Сохранить как ...
    Позволяет сохранить текущий эскиз под другим именем.
  • Page Setup
    Показывает окно Page Setup для печати.
  • Печать
    Отправляет текущий эскиз на принтер в соответствии с настройками, заданными в Параметры страницы.
  • Предпочтения
    Открывает окно Предпочтения, где можно настроить некоторые параметры среды IDE в качестве языка интерфейса IDE.
  • Выход
    Закрывает все окна IDE. Те же эскизы, которые открываются при выборе Quit, будут автоматически открываться при следующем запуске IDE.
Редактировать
  • Undo / Redo
    Возвращает к одному или нескольким шагам, которые вы сделали во время редактирования; когда вы вернетесь назад, вы можете идти вперед с Redo.
  • Cut
    Удаляет выделенный текст из редактора и помещает его в буфер обмена.
  • Копировать
    Дублирует выделенный текст в редакторе и помещает его в буфер обмена.
  • Copy for Forum
    Копирует код вашего эскиза в буфер обмена в форме, подходящей для публикации на форуме, с окраской синтаксиса.
  • Скопировать в формате HTML
    Копирует код своего эскиза в буфер обмена в виде HTML, который подходит для встраивания в веб-страницы.
  • Вставить
    Помещает содержимое буфера обмена в положение курсора в редакторе.
  • Выбрать все
    Выделение и выделение всего содержимого редактора.
.

Arduino - Введение

Что такое Arduino?

Arduino - это электронная платформа с открытым исходным кодом, основанная на простом в использовании аппаратном и программном обеспечении. Платы Arduino могут считывать входные данные - свет на сенсоре, палец на кнопке или сообщение в Твиттере - и превращать его в выходной сигнал - активировать мотор, включать светодиод и публиковать что-то в Интернете. Вы можете сказать своей плате, что делать, отправив набор инструкций микроконтроллеру на плате. Для этого вы используете язык программирования Arduino (на основе Wiring) и программное обеспечение Arduino (IDE) на основе Processing.

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

Arduino родился в Ivrea Interaction Design Institute как простой инструмент для быстрого создания прототипов, предназначенный для студентов, не имеющих опыта в электронике и программировании.Как только оно охватило более широкое сообщество, плата Arduino начала меняться, чтобы адаптироваться к новым потребностям и задачам, дифференцируя свое предложение от простых 8-разрядных плат до продуктов для приложений IoT, носимых, 3D-печати и встроенных сред. Все платы Arduino имеют полностью открытый исходный код, позволяя пользователям создавать их самостоятельно и в конечном итоге адаптировать их к своим конкретным потребностям. Программное обеспечение также с открытым исходным кодом, и оно растет благодаря вкладу пользователей во всем мире.

Почему Ардуино?

Благодаря простому и доступному пользовательскому интерфейсу Arduino используется в тысячах различных проектов и приложений.Программное обеспечение Arduino простое в использовании для начинающих, но достаточно гибкое для опытных пользователей. Он работает на Mac, Windows и Linux. Преподаватели и студенты используют его для создания недорогих научных инструментов, для доказательства принципов химии и физики или для начала программирования и робототехники. Дизайнеры и архитекторы создают интерактивные прототипы, музыканты и художники используют их для инсталляций и экспериментов с новыми музыкальными инструментами. Создатели, конечно же, используют его для создания многих проектов, представленных на Maker Faire, например.Arduino является ключевым инструментом для изучения новых вещей. Любой - дети, любители, художники, программисты - могут начать мастерить, просто следуя пошаговым инструкциям набора или поделиться идеями в Интернете с другими членами сообщества Arduino.

Существует множество других микроконтроллеров и платформ микроконтроллеров, доступных для физических вычислений. Parallax Basic Stamp, Netmedia BX-24, Phidgets, Handyboard MIT и многие другие предлагают аналогичную функциональность. Все эти инструменты берут беспорядочные детали программирования микроконтроллера и упаковывают его в простой в использовании пакет.Arduino также упрощает процесс работы с микроконтроллерами, но предлагает учителям, студентам и любителям некоторые преимущества перед другими системами:

  • Недорогой - Платы Arduino относительно недороги по сравнению с другими платформами микроконтроллеров. Самая дешевая версия модуля Arduino может быть собрана вручную, и даже предварительно собранные модули Arduino стоят менее 50 долларов.
  • Кроссплатформенный - Программное обеспечение Arduino (IDE) работает в операционных системах Windows, Macintosh OSX и Linux.Большинство микроконтроллерных систем ограничены Windows.
  • Простая и понятная среда программирования - Программное обеспечение Arduino (IDE) простое в использовании для начинающих, но достаточно гибкое, чтобы его могли использовать и опытные пользователи. Для учителей он удобно основан на среде программирования Processing, поэтому учащиеся, обучающиеся программированию в этой среде, будут знакомы с работой Arduino IDE.
  • Открытое и расширяемое программное обеспечение - Программное обеспечение Arduino публикуется в виде инструментов с открытым исходным кодом, доступных для расширения опытными программистами.Язык может быть расширен с помощью библиотек C ++, и люди, желающие понять технические детали, могут перейти от Arduino к языку программирования AVR C, на котором он основан. Точно так же вы можете добавить код AVR-C непосредственно в ваши программы Arduino, если хотите.
  • Открытое исходное и расширяемое оборудование - Планы плат Arduino публикуются под лицензией Creative Commons, поэтому опытные конструкторы схем могут создать собственную версию модуля, расширяя его и улучшая его.Даже относительно неопытные пользователи могут создать макетную версию модуля, чтобы понять, как он работает, и сэкономить деньги.

Как использовать Arduino?

См. Руководство по началу работы. Если вы ищете вдохновение, вы можете найти множество учебных пособий по Arduino Project Hub.

Текст руководства по началу работы с Arduino лицензирован под Лицензия Creative Commons Attribution-ShareAlike 3.0. Образцы кода в руководстве публикуются в открытом доступе.

,

Arduino - Howto

Arduino Howto

Эта страница устарела. Вместо этого вы должны увидеть Windows Howto или Mac OS X howto (оба в руководстве Arduino).

Это шаги, которые вы должны выполнить, чтобы начать работу:

  1. Получить доску Arduino
  2. Загрузить среду Arduino
  3. Установите драйверы USB
  4. Подключите плату
  5. Загрузить программу

1 | Получить доску Arduino

Плата ввода / вывода Arduino представляет собой простую схему с процессором ATmega8 от Atmel.Плата состоит из печатной платы (PCB) и электронных компонентов.

Есть несколько способов получить плату Arduino:

  • купить готовую доску . Посмотрите, как можно купить плату или просто плату.
  • построй свою собственную доску . Если вы хотите, вы можете создать свою собственную печатную плату, просто загрузив файлы CAD со страницы «Оборудование». Извлеките файл .brd и отправьте его производителю печатной платы. Имейте в виду, что изготовление одной печатной платы будет очень дорогим.Лучше собираться вместе с другими людьми и зарабатывать по 20 или 30 за раз. Поскольку вы получаете полные файлы САПР, вы можете создать свою собственную версию Arduino. если вы вносите изменения или исправляете ошибки, пришлите нам свои изменения!
    • покупка запчастей . купить детали в любом магазине электроники. В частности, серийная версия была разработана для использования самых основных частей, которые можно найти в любой точке мира. Версия USB, с другой стороны, требует некоторых дополнительных навыков пайки из-за чипа FTDI, который является частью smd.Вот список деталей для серийной платы.
    • собрать плату . Мы собрали пошаговое руководство о том, как собрать плату Arduino. Новички: никогда не паяли раньше? боитесь разбить тысячи плат перед тем, как правильно припаять? не бойтесь 🙂 научитесь овладевать искусством пайки.
    • программный загрузчик . Чтобы среда разработки могла программировать микросхему, она должна быть запрограммирована с помощью фрагмента кода, называемого загрузчиком .Смотрите страницу загрузчика о том, как программировать его на своем чипе.

2 | Загрузите среду Arduino

Для программирования платы Arduino вам необходима среда Arduino.

Скачать Arduino : Со страницы программного обеспечения.

Linux note : Для получения справки по запуску Arduino IDE в Debian см. FAQ («Как запустить Arduino IDE в Linux?»).

Mac OS X примечание: После загрузки IDE запустите macosx_setup.команда . Он исправляет права доступа к нескольким файлам для использования с последовательным портом и запрашивает ваш пароль. Вам может потребоваться перезагрузка после запуска этого скрипта.

Для получения дополнительной информации см. Руководство по среде Arduino.

3 | Установите драйверы USB

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

В Windows вам нужно будет разархивировать FTDI USB-драйверы.почтовый индекс Затем, когда вы подключаете плату Arduino, укажите мастер Windows Add Hardware на каталог FTDI USB Drivers .

На Mac смонтируйте образ диска FTDIUSBSerialDriver_v2_1_6.dmg (на машинах PPC) или FTDIUSBSerialDriver_v2_2_6_Intel.dmg (на машинах Intel) и запустите включенный FTDIUSBSerialDriver.pkg .

Последнюю версию драйверов можно найти на сайте FTDI.

4 | Подключите плату

Если вы используете плату с последовательным интерфейсом, питайте плату от внешнего источника питания (от 6 до 25 вольт постоянного тока, с положительной жилой разъема).Подключите плату к последовательному порту на вашем компьютере.

На платах USB источник питания выбирается с помощью перемычки между USB и разъемами питания. Для питания платы от порта USB (подходит для управления устройствами с низким энергопотреблением, такими как светодиоды), установите перемычку на два контакта, ближайших к разъему USB. Для питания платы от внешнего источника питания (необходимого для двигателей и других сильноточных устройств) установите перемычку на два контакта, ближайших к штепсельной вилке. В любом случае, подключите плату к порту USB на вашем компьютере.В Windows откроется мастер установки нового оборудования; скажите, что вы хотите указать местоположение для поиска драйверов и указать папку, содержащую драйверы USB, которые вы распаковали на предыдущем шаге.

Индикатор питания должен гореть.

5 | Загрузить программу

Откройте пример эскиза светодиодного мигания: Файл> Sketchbook> Примеры> led_blink.

Вот как выглядит код примера светодиодного мигания.

Выберите последовательное устройство платы Arduino в меню Инструменты | Меню последовательного порта.В Windows это должно быть COM1 или COM2 для последовательной платы Arduino или COM3 , COM4 или COM5 для платы USB. На Mac это должно быть что-то вроде /dev/cu.usbserial-1B1 для платы USB, или что-то вроде /dev/cu.USA19QW1b1P1.1 при использовании адаптера Keyspan с последовательной платой (другой USB- последовательные адаптеры используют разные имена).

Нажмите кнопку сброса на плате, затем нажмите кнопку Загрузить в IDE.Подождите несколько секунд. В случае успеха появится сообщение «Закончена загрузка». появится в строке состояния.

Если плата Arduino не отображается в Инструменты | Сери

.

Arduino - Библиотеки

Справочник Язык | Библиотеки | Сравнение изменения

Библиотеки

Среда Arduino может быть расширена за счет использования библиотек, как и большинство платформ программирования. Библиотеки предоставляют дополнительную функциональность для использования в эскизах, например, работа с оборудованием или манипулирование данными. Чтобы использовать библиотеку в эскизе, выберите ее из « Эскиз»> «Импортировать библиотеку ».
Ряд библиотек поставляется с IDE, но вы также можете загрузить или создать свою собственную.Посмотрите эти инструкции для деталей об установке библиотек. Также есть учебник по написанию ваших собственных библиотек. См. Руководство по стилю API для получения информации о создании хорошего API в стиле Arduino для вашей библиотеки.

Стандартные библиотеки

  • EEPROM - чтение и запись в «постоянное» хранилище
  • Ethernet - для подключения к Интернету с использованием Arduino Ethernet Shield, Arduino Ethernet Shield 2 и Arduino Leonardo ETH
  • Firmata - для связи с приложениями на компьютере по стандартному последовательному протоколу.
  • GSM - для подключения к сети GSM / GRPS со щитом GSM.
  • LiquidCrystal - для управления жидкокристаллическими дисплеями (ЖК-дисплеями)
  • SD - для чтения и записи SD-карт
  • Servo - для управления серводвигателями
  • SPI - для связи с устройствами, использующими шину последовательного периферийного интерфейса (SPI)
  • SoftwareSerial - для последовательной связи на любых цифровых выводах. Версия 1.0 и позже Arduino включают библиотеку NewSoftSerial Микала Харта как SoftwareSerial.
  • Stepper - для управления шаговыми двигателями
  • TFT - для рисования текста, изображений и фигур на экране Arduino TFT
  • WiFi - для подключения к интернету с помощью Arduino WiFi Shield
  • Wire - двухпроводной интерфейс (TWI / I2C) для отправки и получения данных через сеть устройств или датчиков.

Библиотеки Matrix и Sprite больше не являются частью основного дистрибутива.

101 только библиотеки

  • CurieBLE - Взаимодействие со смартфонами и планшетами с Bluetooth Low Energy (BLE).
  • CurieIMU - Управление бортовым акселерометром и гироскопом.
  • CurieTimerOne - Позволяет использовать функции таймера.
  • CurieTime - Позволяет контролировать и использовать внутренние RTC (часы реального времени)

Должны только библиотеки

  • Аудио - Воспроизведение аудиофайлов с SD-карты.

библиотеки Due, Zero и MKR1000

  • USBHost - общение с периферийными устройствами USB, такими как мыши и клавиатуры.
  • Планировщик - Управление несколькими неблокирующими задачами.

Ноль и все библиотеки MKR на базе SAMD21

  • AudioFrequencyMeter - сэмплируйте аудиосигнал и верните его частоту
  • AudioZero - воспроизведение аудио файлов с SD-карты
  • RTC - часы реального времени для планирования событий
  • ArduinoSound - простой способ воспроизведения и анализа аудиоданных
  • I2S - Чтобы использовать протокол I2S на SAMD21

WiFi 101 и MKR1000 Библиотека

  • WiFi101 - библиотека для использования только с Wifi shield 101
  • WiFi101OTA - беспроводные обновления на MKR1000

MKR WiFi 1010, MKR VIDOR 4000, Arduino NANO 33 IoT и Arduino UNO WiFi Rev.2

  • WiFi NINA - библиотека для использования модуля WiFi Nina вышеперечисленных плат.

Arduino Nano 33 BLE, Nano 33 BLE Sense, NANO 33 IoT, Uno WiFi Rev 2, MKR WiFi 1010.

  • ArduinoBLE - библиотека для использования функций BLE вышеперечисленных плат.

Arduino Nano 33 IoT и UNO WiFi Rev. 2

  • ArduinoLSM6DS3 - библиотека для использования 6-осевого IMU LSM6DS3, доступная в Arduino Nano 33 IoT и Arduino UNO WiFi Rev. 2.

Arduino Nano 33 BLE и BLE Sense

  • ArduinoLSM9DS1 - библиотека для использования 9-осевого IMU LSM9DS1, доступная на Arduino Nano 33 BLE и Arduino Nano 33 BLE Sense.

Arduino Nano 33 BLE Sense

  • PDM - библиотека для использования цифрового микрофона MP34DT05, наша библиотека PDM может использоваться также с нашей библиотекой ArduinoSound.
  • ArduinoAPDS9960 - библиотека для использования датчика жеста APDS9960; он чувствует жест, цвет, освещение и близость окружения.
  • ArduinoLPS22HB - библиотека для использования барометра и датчика температуры LPS22; это ультракомпактный датчик, который функционирует как цифровой выходной барометр.
.

Отправить ответ

avatar
  Подписаться  
Уведомление о