Початок роботи з Arduino у Windows. Підключення arduino

Початок роботи з Arduino у Windows. Підключення arduino

Вітаю друзів! Сьогодні знову хочу торкнутися теми Arduino і трохи розповісти про перше підключення контролера до комп'ютера. Коли я став щасливим власником Arduino UNO, мені звичайно не терпілося швидше його підключити і випробувати деякі його можливості. В інтернеті дуже багато інформації про підключення Arduino, але багато хто з них не говорив про одну особливість Китайських клонів, володарем якого я і був. Важлива особливість цих клонів в тому, що перетворення інтерфейсу USB в UART відбувається за допомогою чіпа CH340G, а в оригінальних перетворювачем Arduino є чіп ATmega16U2, і драйвера для нього йдуть в комплекті з Arduino IDE ( Середовище розробки мікроконтролерів Arduino) Як ви напевно вже встигли здогадатися для китайців потрібен окремий драйвер. На те, щоб зрозуміти всі ці нюанси, у мене пішло 2-3 дні.

Насамперед потрібно завантажити та встановити середовище розробки Arduino, для цього йдемо на офіційний сайт натискаємо Just download і завантажуємо останню версію Arduino IDE.

Завантажили? Тоді запускаємо.exe файл інсталятора. Думаю пояснювати як встановлювати програми вам не потрібно, якщо ви цікавитеся цією статтею ваш навичка володіння комп'ютером вище за це. Якщо ж ні (це суто моя думка) я думаю що для початку вам потрібно освоїти впевнене користування вашим ПК а вже потім повернутися до цієї теми. У процесі встановлення спливе кілька вікон із запитом встановлення драйверів, погоджуємось та продовжуємо встановлення.

Завершивши установку, підключаємо контролер у вільний USB порт комп'ютера, для цього нам знадобиться кабель USB-A/USB-B

Далі йдемо в диспетчер пристроїв і дивимося на таку картину. Контролер визначився як USB2.0-Serial і позначений знаком оклику. Це свідчить про те, що для цього пристрою не встановлено драйвера.

Драйвер перетворювача CH340G про який я писав вище можете скачати. Встановлюємо його і дивимося, що змінилося в диспетчері пристроїв. У гілці Порти (COM і LPT) визначився новий пристрій USB-SERIAL CH340 на порту 3COM. У вас номер порту може бути інший, запам'ятовуємо його він нам знадобиться.

Запускаємо Arduino IDE та переходимо на вкладку Інструментив графі Плата:вибираємо тип контролера, у мене Arduino UNO, що відповідно я і роблю. Нижче у графі Порт:вибираємо порт, до якого підключений наш контролер.

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

В уроці розповідається, як встановити програмне забезпечення для роботи з системою Ардуїно під Windows 7, як підключити плату до комп'ютера та завантажити першу програму.

Для встановлення програмного забезпечення та підключення контролера Arduino UNO R3 до комп'ютера необхідні:

  • плата контролера;
  • USB кабель (зазвичай дається у комплекті);
  • персональний комп'ютер з Windows, підключений до інтернету.

Плата може отримувати живлення від USB порту комп'ютера, тому зовнішній блок живлення не потрібний.

Встановлює інтегроване середовище розробки Arduino IDE.

Перш за все необхідно завантажити останню версію програми. Завантажити ZIP архів можна з офіційного сайту підтримки систем Ардуїно за цим посиланням. Необхідно вибрати рядок із потрібною операційною системою – Windows ZIP файл...

Створити папку, наприклад Arduino, та розпакувати в неї zip файл.

Підключення плати Ардуїн.

За допомогою кабелю USB підключіть плату до комп'ютера. Повинен спалахнути світлодіод (з маркуванням ON), що показує, що на плату надходить харчування.

Встановлення драйвера.

Мені відомі плати Arduino UNO R3, які використовують як мост USB-UART

  • мікросхему ATmega16U2 (оригінальний варіант)
  • мікросхеми CH340G (китайський клон).

Процеси інсталяції драйверів для цих варіантів відрізняються.

Установка драйвера для ARDUINO UNO із перетворювачем інтерфейсів ATmega16U2.

Після підключення плати до комп'ютера Windows сама почне процес інсталяції драйвера. Через деякий час з'явиться повідомлення про невдалу спробу.

Пуск -> Панель управління -> Система -> Диспетчер пристроїв.

В розділі Порти (COM іLPT)має бути пристрій ArduinoUNOз жовтим попереджувальним значком.

Клацаємо правою кнопкою миші за значком.

Вибираємо Оновити драйвер.

Вручну вказати місце розташування драйвера. Файл ArduinoUNO.infзнаходиться в каталозі Driversпапки, куди розпаковано архів.

У розділі Порти (COM та LPT) з'являється новий, віртуальний COM. Його номер треба запам'ятати.

Установка драйвера для ARDUINO UNO із перетворювачем інтерфейсів CH340G (китайський клон).

Після підключення плати до комп'ютера Windows сама почне процес установки драйвера.

Через деякий час з'явиться повідомлення про невдалу спробу.

Драйвер потрібно встановлювати вручну. Для цього переходимо Пуск -> Панель управління -> Система -> Диспетчер пристроїв.

З'явився новий пристрій USB2.0-Serialз жовтим попереджувальним значком.

Запускаємо інсталяційний файл.

Вибираємо INSTALL.

Чекаємо на повідомлення про успішну установку.

У диспетчері пристроїв з'являється новий USB-SERIAL CH340.

Необхідно запам'ятати номер COM порту.

Запуск вбудованого середовища розробки Arduino IDE.

Запуск файлу arduino.exe.

Вибираємо тип плати Ардуїно: Інструменти -> Плата -> Arduino UNO.

Необхідно вказати номер COM порту: Інструменти -> Порт.

Ви стали щасливим власником плати Arduino. Що ж робити далі? А далі треба подружити Arduino із комп'ютером. Розглянемо початок роботи з Arduino Uno в операційній системі Windows.

1. Установка Arduino IDE

Спочатку необхідно встановити на комп'ютер інтегроване середовище розробки Arduino - Arduino IDE.

Установка Arduino IDE за допомогою інсталятора позбавить вас більшості потенційних проблем з драйверами і програмним оточенням.

2. Запуск Arduino IDE

Після того як ви завантажили та встановили Arduino IDE, давайте запустимо її!

Перед нами є вікно Arduino IDE. Зверніть увагу - ми ще не підключали нашу плату Arduino Uno до комп'ютера, а в нижньому правому кутку вже красується напис «Arduino Uno on COM1». Таким чином, Arduino IDE повідомляє нам, що в даний момент вона налаштована на роботу з цільовою платою Arduino Uno. А коли настане час, Arduino IDE шукатиме Arduino Uno на порту COM1.

Пізніше ми змінимо ці налаштування.

Щось пішло не так?

    Arduino IDE не запускається? Ймовірно, на комп'ютері некоректно встановлено JRE (Java Runtime Environment). Зверніться до пункту (1), щоб інсталювати Arduino IDE: інсталятор зробить всю роботу з розгортання JRE.

3. Підключення Arduino до комп'ютера

Після встановлення Arduino IDE настав час підключити Arduino Uno до комп'ютера.

З'єднайте Arduino Uno з комп'ютером через кабель USB. Ви побачите, як на платі займеться світлодіод «ON», і почне блимати світлодіод «L». Це означає, що на плату подано харчування, і мікроконтролер Arduino Uno почав виконувати прошиту на заводі програму Blink (блимання світлодіодом).

Щоб налаштувати Arduino IDE на роботу з Arduino Uno, нам необхідно дізнатися, який номер порту COM привласнив комп'ютер Arduino Uno. Для цього потрібно зайти в Диспетчер пристроїв Windows і розкрити вкладку Порти (COM і LPT). Ми маємо побачити наступну картину:

Це означає, що операційна система розпізнала нашу плату Arduino Uno як COM-порт, підібрала для неї правильний драйвер і призначила цьому COM-порту номер 7. Якщо ми підключимо іншу плату Arduino до комп'ютера, то операційна система призначить їй інший номер. Тому якщо у вас кілька плат Arduino, дуже важливо не заплутатися в номерах COM-портів.

Щось пішло не так?

4. Налаштування Arduino IDE на роботу з Arduino Uno

Тепер нам необхідно повідомити Arduino IDE, що плата, з якою вона має спілкуватися, знаходиться на COM-порті «COM7».

Для цього переходимо в меню "Сервіс" → "Послідовний порт" та вибираємо порт "COM7". Тепер Arduino IDE знає – щось знаходиться на порту COM7. І з цим «чимось» їй незабаром доведеться спілкуватися.

Щоб у Arduino IDE не залишилося жодних сумнівів, необхідно прямо вказати: Ми будемо використовувати Arduino Uno!. Для цього переходимо в меню Сервіс → Плата і вибираємо нашу Arduino Uno.

Щось пішло не так?

    Список послідовних портів порожній? Значить, Arduino Uno некоректно підключена. Поверніться до пункту (3), щоб налагодити з'єднання.

    Arduino IDE неймовірно гальмує під час навігації по меню? Вимкніть у диспетчері пристроїв усі зовнішні пристрої типу Bluetooth Serial. Наприклад, віртуальний пристрій для з'єднання з мобільним телефоном через Bluetooth може викликати таку поведінку.

Середовище настроєно, плату підключено. Тепер можна переходити до завантаження скетчу.

Arduino IDE містить багато готових прикладів, в яких можна швидко підглянути рішення будь-якої задачі. Є в ній і простий приклад Blink. Давайте виберемо його.

Трохи модифікуємо код, щоб побачити різницю із заводським блиманням світлодіода.

Замість рядка:

Delay (1000);

Delay (100);

Повна версія коду:

/* Blink Turns on an LED on for one second, then off for one second, repeatedly. Цей код коду є в public domain. */ // Pin 13 має LED connected on most Arduino boards.// give it a name: int led = 13; // the setup routine runs once when you press reset: void setup() ( // Initialize digital pin as an output. pinMode(led, OUTPUT); ) // the loop routine runs over and over again forever: void loop() (digitalWrite(led, HIGH); // turn the LED on (HIGH is the voltage level) delay (100); // wait for a second digitalWrite(led, LOW) ; // turn the LED off by making the voltage LOW delay (100); // wait for a second)

Тепер світлодіод «L» повинен спалахувати і гаснути на десяту частину секунди. Тобто у 10 разів швидше, ніж у заводській версії.

Завантажимо наш скетч в Arduino Uno і перевіримо, чи це так? Після завантаження світлодіод почне блимати швидше. Це означає, що все вийшло. Тепер можна сміливо переходити до «Експериментів»

Щось пішло не так?

    В результаті завантаження з'являється помилка виду avrdude: stk500_get sync(): not in sync: resp = 0x00? Це означає, що Arduino налаштовано некоректно. Поверніться до попередніх пунктів, щоб переконатися, що пристрій був розпізнаний операційною системою і в Arduino IDE встановлено правильні налаштування для порту COM і моделі плати.

У своїй статті я хотів би докладно та з ілюстраціями розповісти про схему підключення та розпинування Arduino, розглядаючи різні моделі мікроконтролера.

1. Плата Arduino Uno - розпинування пристрою

Слово Uno перекладається з італійської мови як «один». Пристрій названий у зв'язку з початком випуску Arduino 1.0. Іншими словами, Uno є еталонною моделлю для усієї платформи типу Arduino. Це останній пристрій у серії плат USB, що довело свою ефективність і перевірене часом.

Arduino Uno створено на мікроконтролері типу ATmega 328 (datasheet).

Його складнаступний:

  • кількість цифрових входів та виходів становить 14 (а шість з них є можливість використовувати як виходи ШІМ);
  • число аналогових входів складає шість;
  • 16 МГц – кварцовий резонатор;
  • є роз'єм для живлення;
  • є роз'єм, призначений для ICSP-програмування всередині самої схеми;
  • є кнопка для скидання.

Вкрай важливо відзначити, що відмінною особливістю всіх нових плат arduino є використання інтерфейсів USB-UART мікроконтролера типу ATmega 16U2 (або ATmega 8U2 у версіях R1, R2) замість застарілої мікросхеми типу FTDI.

Плата Uno за версією R2 забезпечується додатковим резистором, що підтягує до землі, на лінії HWB застосовуваного мікроконтролера.

Розпинуваннявиглядає наступним чином:

  1. Послідовний інтерфейс використовує шини №0 (RX – отримання даних), №1 (TX – передача даних).
  2. Для зовнішнього переривання використовуються висновки №2, №3.
  3. Для ШІМ використовуються висновки за номерами 3,5, 6, 9, 10, 11. Функція analog Write забезпечує роздільну здатність 8 біт.
  4. Зв'язок за допомогою SPI: контакти №10 (SS), №11 (MOSI), №12 (MISO), №13 (SCK).
  5. Висновок №13 запитує світлодіод, який спалахує при високому потенціалі.
  6. Uno оснащена 6 аналоговими входами (A0 - A5), які мають роздільну здатність в 10 біт.
  7. Для зміни верхньої межі напруги використовується висновок AREF (функція analog Reference).
  8. Зв'язок I2C (TWI, бібліотека Wire) здійснюється через висновки №4 (SDA), №5 (SCL).

Пристрій побудований на мікроконтролері АTmega16U2 і має підвищений рівень перешкодостійкості ланцюга скидання.

Пристрій відрізняється від попередньої версії лише тим, що в цьому випадку не використовується USB-UART FTDI інтерфейс при підключенні до комп'ютера. Це завдання виконує сам мікроконтролер ATmega 16U2.

Зміни розпинування плати виглядають так:

  1. Біля виведення AREF додано два піни: SDA, SCL.
  2. Біля піна RESET також додано два висновки: IOREF, що дозволяє підключати плати розширення з підстроюванням під необхідну напругу; другий висновок немає і перебуває у резерві.

Є однією з найпростіших та найзручніших пристроїв Arduino.

Використовується мікроконтролер ATmega 168 з робочою напругою на 5 вольт із частотою 16 МГц. Максимальна напруга живлення у моделях становить 9 вольт. Значення максимального струму на виводах становить 40 мА.

Плата містить:

  • 14 цифрових висновків (з них 6 можуть бути використані як ШІМ-виходів), можуть застосовуватися як входу, так і виходу;
  • 8 аналогових входів (4 з них оснащені висновками);
  • 16 МГц – кварцовий генератор.

Піни пристрою Arduino Mini мають таке призначення:

  1. Два висновки, з яких здійснюється харчування плати «плюс»: RAW, VCC.
  2. Виведення контакту "мінус" - пін GND.
  3. Висновки під номерами 3, 5, 6, 9, 10, 11 використовуються для ШІМ при застосуванні функції analog Write.
  4. До висновків №0, №1 можна підключати інші пристрої.
  5. Аналогові входи №0 – №3 із висновками.
  6. Аналогові входи №4 – №7 немає висновків і вимагають паяння за необхідності.
  7. Висновок AREF, який призначений для зміни верхньої напруги.

Розміщення висновків різних версій arduino mini можуть відрізнятися.

Пристрій Arduino Mega 2560 зібраний на мікроконтролері ATmega 2560 (datasheet), є оновленою версією Arduino Mega.

Для перетворення USB-UART-інтерфейсів використовується новий мікроконтролер ATmega 16U2 (або ATmega 8U2 для версій плат R1 або R2).

Склад платинаступний:

  • кількість цифрових входів/виходів становить 54 (15 з них можна використовувати в ролі виходів-ШІМ);
  • число аналогових входів – 16;
  • реалізація послідовних інтерфейсів проводиться за допомогою 4 апаратних приймачів UART;
  • 16 МГц – кварцовий резонатор;
  • USB-роз'єм;
  • живильний роз'єм;
  • внутрішньосхемне програмування здійснюється через ICSP-роз'єм;
  • кнопку для скидання.

У пристрої Mega 2560 R2-версії додано спеціальний резистор, що підтягує HWB-лінію 8U2 до землі, що дозволяє значно спростити перехід Arduino в DFU-режим, а також оновлення прошивки. Версія R3 трохи відрізняється від попередніх. Зміни у пристрої:

  • додано чотири висновки – SCL, SDA, IOREF (для здійснення сумісності по напрузі різних розширювальних плат) та ще один резервний висновок, доки не використовується;
  • підвищена завадостійкість ланцюга скидання;
  • збільшено обсяг пам'яті;
  • ATmega8U2 замінений на мікроконтролер ATmega16U2.

Висновки призначаються для наступного:

  1. Наявні цифрові піни можуть бути входом-виходом. Напруга на них – 5 вольт. Кожен пін має підтягуючий резистор.
  2. Аналогові входи не оснащені резисторами, що підтягують. Робота полягає в застосуванні функції analog Read.
  3. Кількість висновків ШІМ становить 15. Це цифрові висновки №2 – №13, №44 – №46. Використання ШІМ здійснюється через функцію analog Write.
  4. Послідовний інтерфейс: висновки Serial: №0(rx), №1(tx); висновки Serial1: №19 (rx), №18 (tx); висновки Serial2: №17 (rx), №16 (tx); висновки Serial3: №15 (rx), №14 (tx).
  5. Інтерфейс SPI обладнаний висновками №53 (SS), №51 (MOSI), №50 (MISO), №52 (SCK).
  6. Висновок №13 – вбудований світлодіод.
  7. Піни для здійснення зв'язку з пристроями, що підключаються: №20 (SDA), №21 (SCL).
  8. Для зовнішніх переривань (низький рівень сигналу, інші зміни сигналу) використовуються висновки №2, №3, №18, №19, №20, №21.
  9. Висновок AREF задіюється командою analog Reference і призначається регулювання опорного напруги аналогових вхідних пінів.
  10. Висновок Reset. Призначений для формування незначного рівня (LOW), що призводить до перезавантаження пристрою (кнопка скидання).

Arduino Micro є пристроєм, основа якого побудована на мікроконтролері ATmega 32u4, що має вбудований USB-контролер. Це рішення полегшує підключення плати до комп'ютера, оскільки у системі пристрій буде визначатися як стандартна клавіатура, миша чи COM-порт. Склад пристрою наступний:

  • кількість входів/виходів – 20 (є 7 з них використовувати як ШІМ-виходи, а 12 – у ролі входів аналогового типу); резонатор кварцовий, налаштований на 16 МГц;
  • micro-USB-роз'єм;
  • ICSP-роз'єм, призначений щодо внутрішнього програмування;
  • кнопку для скидання.

Всі цифрові висновки виробу можуть працювати як входи, так і виходи завдяки наявності функцій digital Read, pin Mode, digital Write. Напруга на висновках становить 5 вольт. Максимальна величина споживаного або струму, що віддається, з одного висновку становить 40 мА. Висновки сполучаються з внутрішніми резисторами, які за умовчанням перебувають у вимкненому стані. Вони мають номінали в 20 кім - 50 кім. Окремі висновки arduino micro, крім основних, здатні виконувати ряд додаткових функцій:

  1. У послідовному інтерфейсі висновки №0 (RX), №1 (TX) застосовуються для прийому (RX), а також передачі (TX) необхідних даних через вбудований апаратний приймач. Функція є актуальною для arduino micro класу Serial. В інших випадках зв'язок здійснюється через з'єднання USB (CDC).
  2. Інтерфейс TWI включає висновки мікроконтролера №2 (SDA) та №3 (SCL). Дозволяють використовувати дані бібліотеки Wire.
  3. Висновки під номерами 0, 1, 2, 3 можуть бути використані в ролі джерел переривань, що виникають. До таких відносяться низький рівень сигналу; переривання по фронту, за спадом, за зміни рівня сигналу.
  4. Висновки під номерами 3, 5, 6, 9, 10, 11,13 під час використання функції analog Write здатні виводити аналоговий ШИМ-сигнал 8 біт.
  5. До SPI-інтерфейсу відносяться висновки на гнізда ICSP. Вони не з'єднуються із цифровими висновками на платі.
  6. Додатковий висновок RX LED/SS, з'єднаний зі світлодіодом. Останній індикує процес передачі даних з використанням USB. Цей висновок може бути використаний під час роботи з інтерфейсом SPI для виведення SS.
  7. Висновок №13 – світлодіод, який вмикається при надсиланні даних HIGH і вимикається при значеннях LOW.
  8. Висновки A0 – A5 (позначені на платі) та A6 – A11 (відповідають цифровим висновкам за номерами 4, 6, 8, 9, 10,12) є аналоговими.
  9. Висновок AREF дозволяє змінювати верхнє значення аналогової напруги на вказаних вище висновках. У цьому використовується функція analog Reference.
  10. За допомогою виводу Reset формується низький рівень (LOW) та відбувається перезавантаження мікроконтролера (кнопка скидання).

Arduino – це невелика плата, що має на своєму борту мікроконтролер та порти вводу/виводу, за допомогою яких ми можемо зчитувати інформацію з усіх можливих датчиків (датчики температури, вологості, атмосферного тиску тощо) та керувати напругою, двигунами, насосами та так далі.

Для роботи Arduino потрібно написати або використовувати вже готову програму (далі - скетч), яка і буде керувати всією периферією.

Підключення Arduino

Включити Arduino досить легко. Для цього достатньо подати 5-вольт постійної напруги на контакт VCC і землю на контакт GND.

Також, на самій платі розташований стабілізатор живлення, завдяки якому можна подавати довільне харчування в діапазоні від 5 до 12 вольт на порт VIN.

Таким чином, ми можемо запитувати плату через блок живлення або кілька пальчикових батарейок.

Встановлення середовища програмування Arduino IDE

Перед написанням програми, ми повинні завантажити і встановити офіційне середовище програмування, що називається “Arduino IDE”. Переходимо за наступною адресою https://www.arduino.cc/en/Main/Software та натискаємо на “ Windows Installer”як показано на скріншоті:

Запускаємо програму встановлення, натискаємо на кнопку “ Install” і чекаємо на закінчення процесу встановлення.

Наша перша програма

Для роботи нам потрібно написати та залити в мікроконтролер наш перший скетч. Як приклад, давайте поморгаємо вбудованим в плату світлодіодом, який розташовується на 13-му порту. Для цього запустимо середовище програмування Arduino IDE та вставимо наступний код:

Void setup () (pinMode (13, OUTPUT); // Перемикаємо 13-й порт на вихід) void loop () (digitalWrite(13, HIGH); // Включаємо світлодіод delay(1000); // Чекаємо одну секунду digitalWrite(13 , LOW); // Вимикаємо світлодіод delay(1000); // чекаємо секунду)

Також ми повинні вибрати порт, до якого підключили Arduino. Для цього заходимо в меню "Інструменти → Порт" і вибираємо порт зі списку. Якщо ж у списку портів Ви бачите лише COM1, перевірте підключення вашої плати до комп'ютера. Також, якщо у вас не оригінальна плата (наприклад, куплена на популярному ресурсі Aliexpress.com) може знадобитися встановлення драйвера під цю плату.

 

 

Це цікаво: