Скачать arduino ide бесплатно и на русском
Содержание:
- Классика жанра: мигающий светодиод
- Разновидности драйверов
- BT Voice Control for Arduino
- Из чего состоит программа
- Программирование
- Работа с данными, фильтры
- Бесплатные учебники по Ардуино на русском
- Arduino Web Editor и Платформа Создателей
- Arduino Bluetooth Control
- С чего начать работу с Ардуино
- IoT Wi-Fi контроллер
- Программирование Arduino
- Подключение вашей платы Arduino к компьютеру
- Вкладка “Инструменты”
- Что можно изменить
- С чего начать изучать Ардуино с нуля
- Установка драйвера
Классика жанра: мигающий светодиод
Давайте теперь дополним нашу программу так, чтобы происходило хоть что-то.
На Arduino, к 13-му пину подключён светодиод. Им можно управлять, чем мы и займёмся.
void setup() { pinMode(13, OUTPUT); } void loop() { digitalWrite(13, HIGH); delay(100); digitalWrite(13, LOW); delay(900); }
Скомпилируйте, загрузите программу. Вы увидите, что каждую секунду светодиод на плате
помигивает. Разберёмся почему этот код приводит к ежесекундному миганию.
В наши ранее пустые функции мы добавили несколько выражений. Они были размещены между
фигурными скобками функций и . В появилось одно выражение, а в
сразу 4.
Каждое выражение — это приказ процессору сделать нечто. Выражения в рамках одного
блока исполняются одно за другим, строго по порядку без всяких пауз и переключений.
То есть, если мы говорим об одном конкретном блоке кода, его можно читать сверху вниз,
чтобы понять что делается.
Теперь давайте поймём в каком порядке исполняются сами блоки, т.е. функции и .
Не задумывайтесь пока что значат конкретные выражения, просто понаблюдайте за порядком.
- Как только Arduino включается, перепрошивается или нажимается кнопка , «нечто» вызывает функцию . То есть заставляет исполняться выражения в ней.
- Как только работа завершается, сразу же «нечто» вызывает функцию .
- Как только работа завершается, сразу же «нечто» вызывает функцию ещё раз и так до бесконечности.
Если пронумеровать выражения по порядку, как они исполняются, получится:
void setup() { pinMode(13, OUTPUT); ❶ } void loop() { digitalWrite(13, HIGH); ❷ ❻ ❿ delay(100); ❸ ❼ … digitalWrite(13, LOW); ❹ ❽ delay(900); ❺ ❾ }
Ещё раз напомним, что не стоит пытаться воспринимать всю программу, читая сверху вниз.
Сверху вниз читается только содержимое блоков. Мы вообще можем поменять порядок объявлений
и .
void loop() { digitalWrite(13, HIGH); ❷ ❻ ❿ delay(100); ❸ ❼ … digitalWrite(13, LOW); ❹ ❽ delay(900); ❺ ❾ } void setup() { pinMode(13, OUTPUT); ❶ }
Результат от этого не изменится ни на йоту: после компиляции вы получите абсолютно эквивалентный
бинарный файл.
Разновидности драйверов
Существует несколько разновидностей драйвера для Ардуино двигателя и других проектов на этом микроконтроллере. Рассмотрим несколько представителей такого программного обеспечения, доступных для этого микропроцессора.
Тип 1
Драйвер для расширенной версии Ардуино Уно — Arduino mega 2560 драйвер. У Arduino Uno и Mega 2560 может возникнуть проблема с подключением к Mac через USB-концентратор. Если в меню «Инструменты → Последовательный порт» ничего не отображается, попробуйте подключить плату непосредственно к компьютеру и перезапустить Arduino IDE.
Тип 2
Avrisp mkii driver – требуется для создания программатора. Когда вы устанавливаете IDE Arduino, устанавливается USB-драйвер, так что вы можете использовать программатор Atmel AVRISP mk II в качестве альтернативы использования серийного загрузчика Arduino. Кроме того, если вам нужно фактически запрограммировать AVR MCU с самим кодом загрузчика (требуется, если у вас есть пустой микропроцессор Mega328, у которого не было предустановленной прошивки загрузчика), вы можете сделать это из IDE Arduino, используя Tools / Burn Bootloader.
После указания AVRISP mk II в качестве программного обеспечения с использованием функции Tools / Programmer. Однако, когда вы устанавливаете Studio 6.1 / 6.2, установка Atmel будет загружать собственный USB-драйвер, который работает с ID Studio.x. У вас есть возможность не устанавливать драйвер Jungo во время процесса установки Studio, но вы не можете использовать Atmel AVRISP mk II или Atmel JTAGICE3 без этого драйвера.
Когда вы устанавливаете подключаемый модуль Visual Micro для Studio 6.x, скорее всего, вы будете использовать последовательный загрузчик Arduino, поскольку возможности программирования и отладки Visual Micro основаны на последовательной связи USB между ПК и микроконтроллером. Однако если вы решите, что хотите использовать Atmel AVRISP mk II из среды Visual Micro / Studio 6.x, вы обнаружите, что она не работает. Появится сообщение об ошибке, что AVRdude (программное обеспечение для программирования, используемое IDE Ардуино), не может «видеть» программатора AVRISP mk II. Это происходит потому, что Studio6.x использует USB-драйвер Jungo, а не Visual.
Тип 3
Для конструирования шагового двигателя понадобится Arduino l298n driver. Это двойной драйвер двигателя H-Bridge, который позволяет одновременно управлять скоростью и направлением двух двигателей постоянного тока. Модуль может приводить в действие двигатели постоянного тока с напряжением от 5 до 35 В с пиковым током до 2А. Давайте подробнее рассмотрим распиновку модуля L298N и объясним, как это работает.
Модуль имеет две винтовые клеммные части для двигателей A и B и еще одну винтовую клеммную колодку для заземляющего контакта, VCC для двигателя и вывод 5 В, который может быть либо входом, либо выходом. Это зависит от напряжения, используемого на двигателях VCC. Модуль имеет встроенный 5V-регулятор, который либо включен, либо отключен с помощью перемычки.
Если напряжение питания двигателя до 12 В, мы можем включить регулятор 5V, а вывод 5V можно использовать в качестве выхода, например, для питания платы Ардуино. Но если напряжение двигателя больше 12 В, мы должны отключить перемычку, поскольку эти напряжения могут повредить встроенный регулятор 5 В.
В этом случае вывод 5V будет использоваться в качестве входного сигнала, так как мы должны подключить его к источнику питания 5 В, чтобы IC работал правильно. Здесь можно отметить, что эта ИС уменьшает падение напряжения примерно на 2 В. Так, например, если мы используем источник питания 12 В, напряжение на клеммах двигателей будет составлять около 10 В, а это означает, что мы не сможем получить максимальную скорость от нашего 12-вольтового двигателя постоянного тока.
BT Voice Control for Arduino
С помощью этого приложения можно отправлять и получать данные с таких устройств, как ультразвуковой датчик, подключенный к Arduino через Bluetooth. Для подключения устройства Arduino к мобильному телефону через Bluetooth был использован модуль HC-05. После подключения ультразвуковой датчик будет передавать расстояние до ближайшего объекта, и это будет отображаться на мобильном телефоне в этом приложении.
Arduino был запрограммирован на список распознаваемых команд, таких как «Вперед», «Назад», «Влево», «Вправо» и «Стоп»
Важно знать, что ультразвуковой датчик отправляет расстояние до ближайшего объекта в Arduino, а затем отправляет его в приложение с помощью модуля Bluetooth HC-05
Рейтинг на Google Play: 4.4 из 5
Количество скачиваний: более 10.000
Из чего состоит программа
Для начала стоит понять, что программу нельзя читать и писать как книгу:
от корки до корки, сверху вниз, строку за строкой. Любая программа состоит
из отдельных блоков. Начало блока кода в C/C++ обозначается левой фигурной
скобкой , его конец — правой фигурной скобкой .
Блоки бывают разных видов и какой из них когда будет исполняться зависит от внешних
условий. В примере минимальной программы вы можете видеть 2 блока. В этом
примере блоки называются определением функции. Функция — это просто
блок кода с заданным именем, которым кто-то затем может пользоваться из-вне.
В данном случае у нас 2 функции с именами и . Их присутствие обязательно
в любой программе на C++ для Arduino. Они могут ничего и не делать, как в нашем случае,
но должны быть написаны. Иначе на стадии компиляции вы получите ошибку.
Программирование
Код. Ничего лишнего
Ардуино программируется на языке программирования C/C++ с соответствующим ему синтаксисом. Встроенный сборщик, препроцессор и компилятор (avr-gcc или Win-AVR) прощают большое количество ошибок и делает многое за пользователя автоматически, мы даже об этом не знаем и не задумываемся. Базовые функции для управления выводами и интерфейсами микроконтроллера, математика и некоторые другие функции/макросы взяты из открытого фреймворка для работы с микроконтроллерами под названием Wiring. Именно из него состоит базовый набор инструментов Ардуино. В связи с этим сами разработчики Ардуино называют язык “упрощённым c++”, и даже дали ему отдельное название – Arduino Wiring.
Тут следует отделить мух от котлет: “из коробки” в Arduino IDE нам доступна огромная куча различных функций и инструментов:
- Все возможности языка C++, которые предоставляет компилятор: типы данных, операторы и вообще весь необъятный синтаксис. Мы программируем на том же C++, на котором можно программировать в любом другом месте.
- “Ядро” Ардуино – библиотека Arduino.h, которая автоматически подключается в код. В ней содержатся функции для управления пинами, интерфейсами, а также имеется набор всяких полезных функций и инструментов. А ещё оно отвечает за инициализацию и настройку периферии микроконтроллера при запуске. В ядре кстати лежат стандартные библиотеки для Serial, Wire, SPI и EEPROM.
- В папке с программой лежит набор стандартных библиотек: для LCD дисплея, шаговика, сервопривода и некоторых других железок.
- С компилятором идёт набор низкоуровневых библиотек для AVR (сон, progmem, watchdog и многие другие).
- Компилятор позволяет работать с микроконтроллером “напрямую” при помощи регистров и чтения даташита до утра.
- Также мы можем писать на ассемблере, взяв под контроль каждый такт работы МК.
Если вы научитесь свободно прогать на Ардуино и вдруг перейдете к разработке программ на том же C++ в более взрослых средах разработки, вы будете неприятно удивлены большим количеством дополнительного кода, который придется писать руками. И наоборот, если умеющий в плюсы (си-плюс-плюсы) человек посмотрит на типичный ардуино-код, он скажет “да как это вообще работает то?”. Компилятор в Arduino IDE настроен на максимальную всеядность и прощение ошибок, потому что это обучающая платформа.
Сейчас вернёмся к такому понятию, как библиотека. Жизнь рядового ардуинщика неразрывно связана с библиотеками, потому что огромное комьюнити за годы своего существования сделало огромное количество этих самых библиотек на все случаи жизни и для всех продающихся датчиков и модулей. Библиотека это набор файлов, в которых содержится дополнительный код, которым мы можем пользоваться просто ознакомившись с документацией или посмотрев примеры. Такой подход называется “черным ящиком”, мы можем даже не догадываться, какой ужас и кошмар (в плане сложности кода) содержится в библиотеке, но с лёгкостью пользоваться возможностями, который этот код даёт. Купили модуль – нашли библиотеку – открыли пример – всё, результат достигнут…
Работа с данными, фильтры
- FFT – быстрое преобразование Фурье (раскладывание звука в спектр)
- fix_FFT – говорят пофикшенная библиотека FFT
- FHT – быстрое преобразование Хартли (как Фурье, только ещё быстрее)
- GyverFilters – несколько очень эффективных фильтров данных (бегущее среднее, медиана, упрощённый одномерный Калман, AB фильтр
- TinyEKF – быстрый облегчённый вариант фильтра Калмана
- filtering-library – несколько фильтров данных
- Gaussian – фильтр Гаусса
- aJson – работа с данными в формате JSON. Есть ещё Arduino JSON библиотека, и парсер потока JSON данных
- PID – самая известная библиотека ПИД регулятора. Для неё есть дополнение – автонастройка (автотюн) параметров регулятора
- GyverPID – моя версия PID регулятора, на мой взгляд более компактная и удобная в использовании
- GyverRelay – библиотека релейного регулятора с гистерезисом и обратной связью по производной
- CryptoSuite – несколько примеров шифрования данных известными шифрами
- AESlib – библиотека для работы с AES шифрованием
- LinkedList – работа с типом данных “связанный список”, читайте на Хабре
- FixedPointsArduino – работа с типом данных “с фиксированной точкой” (десятичные дроби, но быстрее вычисляются)
Бесплатные учебники по Ардуино на русском
Выполнив первые уроки, а большинство знакомство с микроконтроллером начинает с самого простого задания — подключения светодиода к плате, вы поймете, что сделать какое-то устройство или проект на Ардуино своими руками довольно просто. Суть микроконтроллеров в том, что они рассчитаны на любителей, у которых нет больших знаний в программирование и они даже полные чайники в электротехнике.
Книги и учебники по Ардуино для начинающих
Быстрый старт с набором Arduino (PDF)
Книга содержит полезную информацию для ознакомления с Arduino и практические эксперименты с иллюстрациями. Авторы пособия подробно рассказали, как установить программное обеспечение на компьютер и изложили 14 простых проектов, где для работы необходимо минимум первоначальных электронных компонентов.
Учебник содержит уже 33 урока по программированию Ардуино с использованием различных модулей и датчиков. Российские авторы изложили в своем учебнике практические уроки с цветными иллюстрациями и подробными комментариями, все скетчи из книги можно скачать из Интернета по ссылкам, указанным в уроках.
Учебник переведен на русский и содержит подробные уроки для программирования микроконтроллера от известного автора. К плюсам данной книги можно отнести ссылки на информационный сайт, а также наличие видео уроков от Джереми Блума на YouTube (они тоже переведены на русский язык и озвучены).
Arduino и Raspberry Pi в проектах IoT (PDF)
Книга рассчитана на опытных пользователей и содержит уроки по Ардуино для создания проектов с использованием Intemet of Things (Интернета вещей). Показана организация доступа к сети Интернет, отправка и получение данных с использованием IoT сервисов
Уделено внимание обмену данными с помощью GPRS/GSM Shield.
Книги с интересными проектами на Ардуино
25 крутых проектов с Arduino (PDF) Книга содержит описание и руководство по сборке 25 крутых проектов на Ардуино. Марк Геддес написал руководство, где подробно расписано начало программирования в среде Arduino IDE, правила сборки электрических схем на макетной плате, даны инструкции с примерами интересных проектов для начинающих с нуля. |
|
Проекты с использованием Arduino (PDF) Учебник с наиболее глубоким изучением языка программирования Arduino, каждая команда разобрана автором в отдельном разделе с примером скетча. В учебнике есть раздел с обзором различных плат Arduino и подробно рассмотрено подключение радио модулей для создания проектов на дистанционном управлении. |
|
77 проектов для Arduino (PDF) Книга «77 проектов для Arduino» автор Петин В.А. подойдет как, для начинающих программистов, так и для тех, кто хорошо освоил Ардуино и хочет сделать самостоятельно интересные проекты на микроконтроллере. Начните сборку проектов на Ардуино с подборкой литературы от лучших авторов на нашем сайте. |
Скачать книги можно, как на компьютер, так и на телефон. Так как язык Arduino основан на языке программирования C++, то на мобильном устройстве можно начать изучать основы, а на компьютер скачать учебник по Ардуино на русском бесплатно и без регистрации. Первым делом рекомендуем вам прочитать, что такое Ардуино и что с ним можно сделать, особенно если вы еще не работали с этими платами.
Arduino Web Editor и Платформа Создателей
Веб-редактор Arduino позволяет писать код и загружать эскизы на любую официальную плату Arduino с помощью веб-браузера (Chrome, Firefox, Safari и Edge). Мы рекомендуем вам использовать Google Chrome.
Эта IDE (интегрированная среда разработки) является частью Arduino Create, онлайн-платформы, которая позволяет разработчикам писать код, получать доступ к учебным пособиям, настраивать платы и обмениваться проектами. Официальное видео от создателей линейки этих плат:
Созданный для обеспечения непрерывного рабочего процесса, Arduino Create соединяет все этапы разработки — от вдохновения до внедрения. Это означает, что теперь у вас есть возможность управлять всеми аспектами вашего проекта прямо в одной панели.
Arduino Web Editor размещается в Интернете, поэтому приложение всегда в курсе новейших функций и поддерживает новые платы.
Эта среда разработки позволяет вам писать код и сохранять его в облаке, всегда резервируя его и делая доступным с любого устройства. Она автоматически распознает любую плату Arduino (Genuino), подключенную к вашему ПК, и настраивается соответствующим образом.
Аккаунт Arduino — это все, что вам нужно для начала работы.
Arduino Bluetooth Control
Приложение ABC – это простое приложение, которое предназначено для того, чтобы контролировать контакты Arduino, и иметь доступ основным функциям управления. Arduino Bluetooth Control используется для управления и/или мониторинга контактов Arduino через Bluetooth. Приложение является автономным, и вся инициализация выполняется из Arduino
Важно понимать, что приложение предназначено именно для контактов ардуино, а не для управления
Работа приложения осуществляется при помощи нескольких инструментов:
- Metrics – этот инструмент осуществляет передачу данных с устройства ардуино, которые передают сигнал на телефон о сбоях или об изменениях значений. После того как кнопка сигнализации срабатывает, на телефон поступает уведомление о приостановки работы. Также есть функция встряхивания, при помощи которой отправлять данные путем встряхивания телефона.
- Кнопки со стрелками – здесь работа осуществляется кнопками, которые полностью регулируют отправку данных на плату.
- Терминал – стандартный терминал, получающий и отправляющий данные на плату с отметками времени.
- Кнопки – в горизонтальной ориентации доступно 6 полностью функционированных кнопок для отправки данных на системную плату ардуино.
- Accelometer – используются команды при помощи жестов. Ваш смартфон может стать рулем для управления вашим роботом.
- Голосовое управление – если вы когда-либо хотели пообщаться с роботами, то этот инструмент для вас. При помощи голосовой связи можно создавать собственные команды и использовать их для управления ардуино.
Рейтинг на Google Play: 4.2 из 5
Количество скачиваний: более 50.000
С чего начать работу с Ардуино
Если вы делаете первые шаги в мире Ардуино, то советуем вам заранее приготовиться к двойному потоку знаний. Во-первых, вам придется разобраться с тем, что такое контроллер Arduino, какие устройства можно к нему подключить и как это сделать. Потребуется разобраться с основами электроники. Во-вторых, придется научиться навыкам программирования в Arduino. Для профессиональной работы нужны знания C++, для начинающих доступны многочисленные графические среды с блочным программированием. Например, mBlock или ArduBlock. При отсутствии реальной платы можно воспользоваться одним из эмуляторов ардуино.
Все это потребует и времени, и знаний, но результатом станет удивительное ощущение восторга от сделанных своими руками умных устройств
Счастья от того, что вы стали почти волшебником, приближаясь шаг за шагом к вершинам технического мастерства. Крайне важно, чтобы теория сочеталась с практикой и вы как можно быстрее переходили от чтения статей к созданию реальных устройств
IoT Wi-Fi контроллер
Интерфейс этого приложения показывает все операции ввода и вывода на Ардуино. Переключение GPIO и показания АЦП управляют гаджетом в реальном времени.
Добавить WI-Fi к устройствам возможно с помощью IoT контроллера. Он имеет 8-битный микроконтроллер и IMU (Inertial Measurement Unit). Соединение защищено однокристальным крипто-ускорителем ECC 608.
Уникальный интерфейс IoT Wifi Controller отображает контакты в реальном времени с подробной информацией, благодаря уровню GPIO. Показатели ADC также можно подключать к плате с помощью телефона (Айфона) или маршрутизатора.
Не реализованные функции:
- расширенная подсветка анаграмм;
- автозаполнение;
- руководства для объединения других приложений.
Базы Uno R3 и FTDI в данное время поддерживают рабочее состояние платы Arduino. В процессе находится разработка Mega, Due и Nano. Используемые в обучении платы Arduino — USB кабель OTG не влетит в копеечку. Стоимость до 2 долларов.
Программа «умный дом» работает при помощи платформы Arduino. В данном случае используется данный андроид и сама платформа. Для работы совместили домашние и веб серверы. Результат превзошел ожидания. Теперь при помощи мобильного устройства можно управлять системой целого дома: включать и выключать свет, электрические приборы, закрывать двери, окна и другое.
В статье рассмотрены 10 обзорных приложений — для платы «Ардуино». В процессе работы и изучения не возникнет проблем с программированием Windows и в других. Затруднения решаются подключением к пинам. Те в свою очередь аппаратно запрограммированы UART. Далее используются традиционные библиотеки.
Программирование Arduino
Теперь, когда необходимая нам схема собрана, мы можем начать программирование платы Arduino UNO. Полный текст программы будет приведен в конце статьи, в этом разделе будет дано объяснение некоторых участков кода этой программы.
В каждой программе для Arduino должны обязательно присутствовать две функции – это функции void setup () и void loop (), иногда их называют «абсолютным минимумом», необходимым для написания программы. Все операции, которые мы запишем внутри void setup (), исполнятся только один раз, а операции, которые мы запишем внутри void loop () – будут исполняться снова и снова. Пример этих функций показан в коде ниже – именно в таком виде они создаются когда вы выбираете пункт меню File -> New.
Arduino
void setup() {
// put your setup code here, to run once:
}
void loop() {
// put your main code here, to run repeatedly:
}
1 |
voidsetup(){ // put your setup code here, to run once: } voidloop(){ // put your main code here, to run repeatedly: } |
Начнем писать программу в функции setup (). Обычно в этой функции объявляются названия пинов (контактов). В нашей программе нам необходимо объявить всего два контакта: контакт 2 в качестве входного контакта и контакт 3 в качестве выходного контакта. Это можно сделать с помощью следующих строчек кода:
Arduino
pinMode(2,INPUT);
pinMode (3,OUTPUT);
1 |
pinMode(2,INPUT); pinMode(3,OUTPUT); |
Но здесь необходимо внести небольшое изменение в программу – нам желательно чтобы контакт 2, который мы объявили в качестве входного контакта, никогда не был бы в «плавающем» состоянии. Это означает что входной контакт должен быть всегда подсоединен либо к +5 В, либо к земле. А в нашем случае при нажатии кнопки он будет подсоединен к земле, а при отжатой кнопке он будет находиться в плавающем состоянии. Чтобы исключить это нам необходимо задействовать внутренний подтягивающий резистор, который находится внутри микроконтроллера ATmega 328 (то есть снаружи мы этот резистор не видим). Для его задействования необходимо написать соответствующую строчку кода в программе.
С помощью этой строчки кода контакт 2 будет подключаться через подтягивающий резистор к напряжению +5 В всегда когда он не подсоединен к земле. То есть мы должны в одной из написанных нами строчек кода изменить слово INPUT на слово INPUT_PULLUP как показано ниже.
Arduino
pinMode(2,INPUT_PULLUP);
1 | pinMode(2,INPUT_PULLUP); |
Теперь, когда мы закончили с функцией setup (), перейдем к функции loop (). В этой функции мы должны проверять не подсоединен ли контакт 2 к земле (то есть на его входе низкий уровень – LOW) и если он подсоединен в земле, то мы должны зажечь светодиод при помощи подачи на контакт 3 высокого уровня (HIGH). А если контакт 2 не подсоединен к земле (то есть кнопка не нажата), то мы должны держать светодиод в выключенном состоянии при помощи подачи на контакт 3 низкого уровня (LOW). В программе это будет выглядеть следующим образом:
Arduino
if (digitalRead(2) == LOW)
{
digitalWrite(3,HIGH);
}
else
{
digitalWrite(3,LOW);
}
1 |
if(digitalRead(2)==LOW) { digitalWrite(3,HIGH); } else { digitalWrite(3,LOW); } |
В этих строчках кода оператор digitalRead() используется для проверки статуса (состояния) входного контакта. Если контакт подсоединен к земле, то оператор digitalRead() возвратит значение LOW, а если оператор подсоединен к +5 В, то оператор возвратит значение HIGH.
Аналогично, оператор digitalWrite() используется для установки состояния выходного контакта. Если мы установим контакт в состояние HIGH, то на его выходе будет напряжение +5 В, а если мы установим контакт в LOW, то на его выходе будет 0 В.
Таким образом в нашей программе когда мы нажимаем кнопку на контакт 2 будет подана земля и, соответственно, на контакт 3 мы подаем высокий уровень +5 В (HIGH) чтобы зажечь светодиод. Если условие не выполняется – то есть на контакт 2 не подана земля, то мы на контакт 3 подаем низкий уровень 0 В (LOW) чтобы выключить светодиод.
На этом наша программа закончена, теперь загрузим код программы на нашу плату Arduino таким же образом как ранее мы загружали код программы мигания светодиодом.
Подключение вашей платы Arduino к компьютеру
После того как вы установили Arduino IDE на свой компьютер следующим логичным шагом будет подключение платы Arduino UNO к компьютеру. Чтобы сделать это просто используйте кабель для программирования (синего цвета) и соедините его с платой Arduino и USB портом вашего компьютера.
Синий кабель для программирования может выполнять следующие три функции:
- Он запитывает плату Arduino UNO, то есть чтобы обеспечить выполнение программ на ней необходимо просто запитать ее с помощью USB кабеля.
- Через него программируется микроконтроллер ATmega328, находящийся на плате Arduino UNO. То есть код программы пересылается из компьютера в микроконтроллер именно по этому кабелю.
- Он может функционировать в качестве кабеля для последовательной связи, то есть с его помощью можно передавать данные с Arduino UNO в компьютер – это полезно для целей отладки программы.
После того как вы подадите питание на плату Arduino UNO на ней загорится маленький светодиод – это свидетельствует о том, что на плату подано питание. Также вы можете заметить как мигает другой светодиод – это результат работы программы по управлению миганием светодиода, которая по умолчанию загружена в вашу плату ее производителем.
Поскольку вы подключаете плату Arduino в первый раз к компьютеру необходимо некоторое время чтобы драйвера для нее успешно установились. Чтобы проверить правильно ли все установилось и определилось откройте «Диспетчер устройств (Device manager)» на вашем компьютере.
В диспетчере устройств откройте опцию «Порты» “Ports (COM & LPT)”, кликните на ней и посмотрите правильно ли отображается там ваша плата.
При этом стоит отметить, что не стоит обращать внимание на то, какой номер порта отобразился у вашей платы Arduino – он может, к примеру, выглядеть как CCH450 или что то подобное. Этот номер порта просто определяется производителем платы и больше ни на что не влияет
Если вы не можете в диспетчере устройств найти опцию “Ports (COM & LPT)”, то это означает, что ваша плата не корректно определилась компьютером. В большинстве случает это означает проблему с драйверами – по какой то причине они автоматически не установились для вашей платы. В этом случае вы должны будете вручную установить необходимые драйверы.
В некоторых случаях в указанной опции диспетчера устройств может отобразиться два COM порта для вашей платы и вы не будете знать какой из них правильный. В этой ситуации отключите и снова подключите плату Arduino к компьютеру – какой из COM портов при этом будет появляться и исчезать, значит тот и правильный порт.
Следует помнить о том, что номер COM порта будет изменяться при каждом новом подключении вашей платы к компьютеру – не пугайтесь, в этом нет ничего страшного.
Вкладка “Инструменты”
Вкладка “Инструменты”
- АвтоФорматирование – выравнивает код по табуляции. Крайне важная фишка, используйте её и комбинацию Ctrl+T как можно чаще
- Архивировать скетч – сохраняет скетч как .zip архив
- Исправить кодировку и перезагрузить – полезная штука, когда скачал чей-то код из интернета, а там поехала кодировка
- Управлять библиотеками… – открывает менеджер библиотек, из которого можно установить библиотеки из официального списка
- Монитор порта
- Плоттер по последовательному соединению – встроенный построитель графиков по идущим в порт данным
- Плата – выбор платы, куда хотим загрузить прошивку
- Процессор – выбор процессора, который стоит на плате. Обычно он один на выбор, но иногда есть варианты
- Порт – COM порт, к которому подключена плата. Это всегда порт, отличный от COM1 (системный порт)
- Программатор – выбор программатора для загрузки кода через программатор
- Записать загрузчик – прошивает загрузчик, соответствующий выбранной плате и процессору в микроконтроллер при помощи программатора (который ISP)
Что можно изменить
Давайте пользуясь только полученными знаниями сделаем несколько вариаций программы, чтобы лучше понять
принцип.
Вы можете подключить внешний светодиод или другое устройство, которым нужно «мигать» на другой пин.
Например, на 5-й. Как в этом случае должна измениться программа? Мы должны всюду, где обращались к 13-му
пину заменить номер на 5-й:
void setup() { pinMode(5, OUTPUT); } void loop() { digitalWrite(5, HIGH); delay(100); digitalWrite(5, LOW); delay(900); }
Компилируйте, загружайте, проверяйте.
Что нужно сделать, чтобы светодиод мигал 2 раза в секунду? Уменьшить время сна так, чтобы в сумме получилось
500 мс:
void setup() { pinMode(5, OUTPUT); } void loop() { digitalWrite(5, HIGH); delay(50); digitalWrite(5, LOW); delay(450); }
Как сделать так, чтобы светодиод при каждом «подмигивании» мерцал дважды? Нужно поджигать его дважды с небольшой
паузой между включениями:
void setup() { pinMode(5, OUTPUT); } void loop() { digitalWrite(5, HIGH); delay(50); digitalWrite(5, LOW); delay(50); digitalWrite(5, HIGH); delay(50); digitalWrite(5, LOW); delay(350); }
Как сделать так, чтобы в устройстве были 2 светодиода, которые мигали бы каждую секунду поочерёдно? Нужно
общаться с двумя пинами и работать в то с одним, то с другим:
void setup() { pinMode(5, OUTPUT); pinMode(6, OUTPUT); } void loop() { digitalWrite(5, HIGH); delay(100); digitalWrite(5, LOW); delay(900); digitalWrite(6, HIGH); delay(100); digitalWrite(6, LOW); delay(900); }
Как сделать так, чтобы в устройстве были 2 светодиода, которые переключались бы на манер железнодорожного светофора:
горел бы то один то другой? Нужно просто не выключать горящий светодиод тут же, а дожидаться момента переключения:
void setup() { pinMode(5, OUTPUT); pinMode(6, OUTPUT); } void loop() { digitalWrite(5, HIGH); digitalWrite(6, LOW); delay(1000); digitalWrite(5, LOW); digitalWrite(6, HIGH); delay(1000); }
Можете проверить другие идеи самостоятельно. Как видите, всё просто!
С чего начать изучать Ардуино с нуля
Что такое Ардуино, как им пользоваться
Книга или учебник по Arduino на русском — это лишь теория и без практики здесь не обойтись. До того, как вы приступите к программированию микроконтроллера необходимо получить базовые знания по схемотехнике. Следует изучить основные радиоэлементы, их назначение, принцип работы, условные обозначения, как собирать электрические схемы. Для этого поможет следующая информация на нашем сайте:
- Основные законы электричества
- Радиоэлементы с фото и названиями
- Как собирать схемы на макетной плате
- Характеристики контроллеров Arduino
Для того чтобы программировать микроконтроллер Arduino следует установить на компьютере необходимое программное обеспечение, а также иметь всегда под рукой справочники по языку Arduino и описание ошибок в программе (скетче) для микроконтроллеров (они всегда будут появляться первое время)
Для этого обратите внимание на следующую очень полезную информацию на нашем сайте:
- Установка Arduino на Windows
- Установка библиотек в Arduino
- Язык программирования Arduino
- Ошибки при компиляции Arduino
Установка драйвера
Загрузите программное обеспечение Ардуино и распакуйте все файлы в папку c:\ program. В итоге у вас будет каталог, похожий на arduino-0021.
Затем подключите плату к компьютеру с помощью USB-кабеля и подождите, пока Windows обнаружит новое устройство.
Windows не сможет обнаружить устройство, поскольку оно не знает, где хранятся драйверы. Вы получите ошибку, аналогичную той, которая указана справа.
Выберите опцию – установить из списка или определенного местоположения (Дополнительно) и нажмите «Далее».
Теперь выберите местоположение, в котором хранятся драйверы Ардуино. Это будет в подпапке, называемой драйверами в каталоге Arduino.
После выбора «Далее» вы можете получить сообщение, подобное показанному справа.
Выберите «Продолжить» в любом случае.
Теперь Windows должна найти программное обеспечение для Ардуино. Нажмите «Готово», чтобы завершить установку.
Компьютер взаимодействует с платой через специальный чип последовательного порта, встроенный в плату. Программное обеспечение Ардуино IDE должно знать номер последовательного порта, который только что выделил Windows. Откройте панель управления Windows и выберите системное приложение. Перейдите на вкладку «Оборудование » и затем нажмите кнопку «Диспетчер устройств».
Нажмите опцию Ports (COM и LPT) и обратите внимание, какой COM-порт был выделен для Ардуино Board
Затем запустите приложение Ардуино IDE, которое будет находиться в каталоге c:\program\arduino-0021 или аналогичном.
Нажмите «Сервис → Последовательный порт» и выберите номер порта сверху.
Затем нажмите Tools → Сервис и выберите тип платы, который у вас есть.