Arduino – бесплатная среда разработки. С помощью которой можно автоматизировать несложные задачи, в области электроники использовать разные датчики, освещения, температуры окружающей среды, программировать различные аппаратные модули и сенсоры, такие как светодиоды, датчики движения, звука, и многие другие.
Благодаря этому, вы можете создавать интересные и креативные проекты, начиная от простых светодиодных мигалок до сложных систем автоматизации. За счет своей простоты Arduino стал очень популярной во всем мире.
Многим начинающим электронщикам и робототехникам она стала по душе. Ее популярность вызвана дешевизной и простотой.
В интернете сейчас очень много разных проектов на ее основе.
Официально она зарегистрирована в Италии двумя энтузиастами.
Все наработки в открытом доступе. Что не может нас не радовать.
Преимущества использования Arduino:
- Простота обучения:
Синтаксис Arduino является достаточно простым для изучения, даже для новичков. Это позволяет быстро освоить основные концепции программирования и начать реализацию своих идей.
- Большое сообщество:
Arduino имеет огромное сообщество разработчиков и энтузиастов, готовых помочь и поделиться опытом. Это означает, что вы всегда можете найти ответы на свои вопросы и найти вдохновение для своих проектов.
- Обширная библиотека:
Arduino поставляется со встроенной библиотекой функций, которая упрощает программирование различных модулей и сенсоров. Это облегчает работу с аппаратными компонентами и снижает необходимость в написании кода с нуля.
Arduino -плата на которой есть своя память и процессор, на каждой плате есть загрузчик, программатор, с помощь него мы записываем код.
Скетч нашей программы, пишем в среде разработки Arduino IDE.
Вот так она выглядит: Arduino IDE
Платы бывает разного типа на них встроен микроконтроллер (МК).
В МК предварительно установлен загрузчик (англ. bootloader).
Используя, загрузчик мы можем загружать свою программу без дополнительного оборудования.
Просто подключаем шнур USB к плате и заливаем наш код и все готово. Есть платы без встроенного загрузчика, но мы пока их не рассматриваем.
Микроконтроллеры есть следующих типов:
Обычно в линейке устройств Arduino в применяются МК Atmel AVR. Такие МК можно найти на указанных распространённых платах:
- ATmega2560 (16 МГц, 256 Kb Flash, 8 Kb RAM, 54 порта, из них до 15 с ШИМ и 16 АЦП). Платы Mega.
- ATmega32U4 (16 МГц, 32 Kb Flash, 2,5 Kb RAM, 20 портов, из них до 7 с ШИМ и 12 АЦП). Платы Leonardo, Micro, Yun.
- ATmega328 (16 МГц, 32 Kb Flash, 2 Kb RAM, 14 портов, из них до 6 с ШИМ и 8 АЦП). Платы UnoR3, Mini, NanoR2, Pro, Pro mini, различные варианты плат uno и nano, такие как Wifi Uno и nano + nrf42l01
- ATtiny85 (20 Мгц, 8 Kb Flash, 512 b RAM, 6 портов, из них 4 ШИМ и 4 аналоговых). Платы Digispark также часто применяются вне плат.
- ATmega168 (16 Мгц, 16 Kb Flash, 1 Kb RAM, порты и распиновка аналогично ATmega328) Платы Uno R1, Uno R2, Pro mini, NanoR1.
Все оригинальные платы стоят очень дорого, но нам в этом поможет поднебесная. Там намного дешевле, да и разницы особо нет все работает проверено годами разработок.
Так как же это работает?
- Сначала нам нужно написать код программы. Его можно записать в блокноте или в среде разработки. (Картинка выше Arduino IDE).
- Скомпилировать прошивку в среде разработки.
- После закачать прошивку в микроконтроллер.
Кажется, что это очень сложно, но на самом деле – сложнее описать весь процесс чем сделать наглядно самому. Я уверяю, в выше сказанном нет не чего сложного.
Все эти действия вы сделаете в компиляторе Arduino IDE. В нем все есть.
В следующем уроке будет подробнее описание его функций и библиотек, которые мы так часто будем использовать для своих проектов и наглядно рассмотрим, как все работает.
Какой язык программирование используется?
Arduino C базируется на языке программирования C++, но имеет упрощенный синтаксис, что делает его доступным для начинающих разработчиков.
Он был специально разработан для использования с платформой Arduino, которая состоит из МК и среды программирования.
Arduino C — это мощный язык программирования, который позволяет вам создавать творческие проекты в сфере электроники.
Принцип работы Arduino C основан на написании программ для управления вводом и выводом (I/O) микроконтроллера. Пользователь может создавать программы на Arduino C, чтобы контролировать различные электронные компоненты, такие как светодиоды, датчики, моторы и многое другое.
Arduino C предоставляет удобные функции и библиотеки, которые упрощают взаимодействие с аппаратной частью Arduino.
Основные принципы работы Arduino C включают в себя:
- Инициализация:
В начале программы инициализируются пины микроконтроллера, которые будут использоваться для ввода и вывода сигналов.
Это позволяет определить, какие контакты будут использоваться для подключения к электронным компонентам.
- Чтение ввода:
С помощью функций Arduino C можно читать состояние входных сигналов с датчиков или других источников данных. Например, можно считывать информацию с кнопок или датчиков света.
- Управление выводом:
Arduino C предоставляет функции для управления выходными сигналами, такими как включение/выключение светодиодов или управление скоростью моторов.
С помощью этих функций можно установить необходимые значения для работы с электронными компонентами.
- Логика программы:
Язык Arduino C позволяет создавать логику программы с помощью условных операторов (if, else) и циклов (for, while).
Таким образом, можно определять условия выполнения определенных действий или циклически повторять операции. В следующих уроках подробнее.
- Взаимодействие с библиотеками:
Arduino C имеет богатую библиотеку функций, которые облегчают программирование и расширяют возможности платформы.
Библиотеки содержат заранее написанный код, который можно использовать для различных проектов.
Принцип работы Arduino C основан на написании программного кода, который задает конкретные действия для микроконтроллера.
Этот код загружается на Arduino, где микроконтроллер выполняет программу, управляя подключенными электронными компонентами.
- Программы, написанные программистом Arduino, называются наброски или скетчи (от англ. sketch) и сохраняются в файлах с расширением *.ino. Эти файлы перед компиляцией обрабатываются препроцессором Ардуино. Также существует возможность создавать и подключать к проекту стандартные файлы C++.
- Программист должен написать две обязательные для Arduino функции setup() и loop(). Первая вызывается однократно при старте, вторая выполняется в бесконечном цикле.
- В текст своей программы (скетча) программист не обязан вставлять заголовочные файлы используемых стандартных библиотек. Эти заголовочные файлы добавит препроцессор Arduino в соответствии с конфигурацией проекта. Однако пользовательские библиотеки нужно указывать.
- Менеджер проекта Arduino IDE имеет нестандартный механизм добавления библиотек. Библиотеки в виде исходных текстов на стандартном C++ добавляются в специальную папку в рабочем каталоге IDE. При этом название библиотеки добавляется в список библиотек в меню IDE. Программист отмечает нужные библиотеки, и они вносятся в список компиляции.
- Arduino IDE не предлагает никаких настроек компилятора и минимизирует другие настройки, что упрощает начало работы для новичков и уменьшает риск возникновения проблем; но присутствуют директивы препроцессора, такие как #define, #include и много других.
Так выглядит полный текст простейшей программы (скетча) мигания светодиодом, подключенным к 13-му выводу (пину) контроллера Arduino, с периодом 2 секунды (полпериода, то есть 1 секунду светодиод горит, полпериода — не горит).
Он доступен в среде разработке в Скетч> примеры> стандартные> Blink.
void setup() {
pinMode(13, OUTPUT); // Назначение пина 13 в качестве выходного
}
void loop() {
digitalWrite(13, HIGH); // Установка пина 13 в состояние "1", светодиод загорается
delay(1000); // Задержка на 1000 миллисекунд
digitalWrite(13, LOW); // Установка пина 13 в состояние "0", светодиод гаснет
delay(1000);
}
Все используемые в этом примере функции являются библиотечными.
В комплекте Arduino IDE имеется множество встроенных примеров программ.
Для программирования Arduino вам понадобятся следующие шаги:
Установите Arduino IDE:
Перейдите на официальный веб-сайт Arduino (https://www.arduino.cc) и загрузите Arduino IDE, совместимый с вашей операционной системой.
Установка драйверов и среды разработки Arduino IDE
Подключите Arduino к компьютеру с помощью USB-кабеля.
Выберите правильную плату:
Откройте Arduino IDE и выберите правильную плату в меню «Инструменты»-> «Плата». Например, если у вас есть Arduino Uno, выберите «Arduino Uno».
Выберите порт:
Выберите правильный порт для Arduino в меню «Инструменты»-> «Порт».
Если не уверены, какой порт выбрать, проверьте меню «Порты» в системных настройках вашего компьютера.
Начните писать код:
Теперь вы готовы писать код для Arduino. Используйте Arduino IDE для написания программ на языке C/C++.
Загрузите код на Arduino:
После завершения написания кода вы можете загрузить его на Arduino, нажав кнопку «Загрузить«, или используя сочетание клавиш Ctrl+U.
Проверьте результат:
После загрузки кода Arduino начнет выполнять инструкции.
Можете проверить результат подключив соответствующие датчики, модули или исполнительные механизмы к вашей плате Arduino.