Arduino. Знакомство с Arduino Nano CH340G
Знакомство с Arduino Nano. Давно хотел начать программировать микроконтроллеры. Для старта выбор пал на Arduino Nano.
В общем понимании Arduino это платформа, котрую можно запрограммировать. На самом деле немного сложнее, есть аппаратаная и программная части:
- Апаратная часть. Набор различных плат основанных в основном на МК семейства ATmega. Платы различаются количесвом портов ввода-вывода, их функционалом. Продаются под торговой маркой Arduino;
- Программная часть. IDE с одноименным названием, которая позволяет кроме написания кода производить его загрузку на борт МК;
- Сообщество. Выше не указывал этой составляющей, но популярность этой платформы породило большое сообщество людей работающих с этой платформой. В профильных сообществах и личных блогах можно найти заготовки кода, инструкции по созданию конечных устройств, и помощь в возникших вопросах.
Платформа имеет низкий порог вхождения, как правило програмиируется на C++. Служит для прототипирования конечных устройств и любительской автоматизации.
Оригинальная плата стоит больше, чем для начала хотелось бы потратить, потому на aliexpress.com был заказан клон с использованием более дешевой микросхемы CH340G.
Установка ПО и драйверов
Для ОС семейства Linux установка драйверов не требуется, а вот для ОС Windows драйвер может потребоваться.
У меня стоит Kubuntu 15.04 и Windows 10, устройство определилось без проблем и отдельно драйвера устанавливать не пришлось.
Программное обеспечение будем использовать оригинальное от Arduino. ПО бесплатно и свободно для скачивания.
Процесс установки проводил по инструкции от Arduino, но некоторые шаги пропустил из-за ненадобности выполнения:
- Скачиваем ПО вот здесь и устанавливаем на компьютер;
- Подключаем Arduino Nano к компьютеру посредством USB-кабеля, после подключения на плате загорится зеленый светодиод (PWR);
- Если устройство не обнаружилось или обнаружилось как неизвестное устройство, то необходимо установить драйвер. Как писал выше у меня оборудование установилось без плясок и определилось как USB-SERIAL CH340. Описание установки драйвера опушу, очень много материала в интернете;
- Запускаем приложение Arduino и переходим в меню «Инструменты — Порт», и указываем необходимый порт, для меня это СОМ3.
Hello World!!!
В качестве первой программы будем использовать мигание светодиодом. На Arduino Nano есть встроенный светодиод (L), который подключен к выходу D13.
Можно мигать как встроенным, так и подключить внешний светодиод. Для подключения внешнего светодиода, необходимо к выходу D13 подключить резистор 220 Ом, к резистору подключаем анод светодиода, катод подключаем к выходу GND (Земля).
Внимание!!! Не подключайте светодиод без сопротивления, Arduino этого не переживет!!!
Теперь подключаем Arduino к компьютеру, переходим в меню «Файл — Образцы — 1.Basics — Blink«, в окне появится код примера мигания светодиодом:
/* Blink Turns on an LED on for one second, then off for one second, repeatedly. Most Arduinos have an on-board LED you can control. On the Uno and Leonardo, it is attached to digital pin 13. If you're unsure what pin the on-board LED is connected to on your Arduino model, check the documentation at http://arduino.cc This example code is in the public domain. modified 8 May 2014 by Scott Fitzgerald */ // the setup function runs once when you press reset or power the board void setup() { // initialize digital pin 13 as an output. pinMode(13, OUTPUT); } // the loop function runs over and over again forever void loop() { digitalWrite(13, HIGH); // turn the LED on (HIGH is the voltage level) delay(1000); // wait for a second digitalWrite(13, LOW); // turn the LED off by making the voltage LOW delay(1000); // wait for a second }
Код сопровождается исчерпывающими комментариями.
Теперь необходимо нажать кнопку «Выгрузить» или перейти в меню «Файл — Выгрузить», или нажать сочетание клавиш Ctrl + U. После выгрузки программы, Arduino начнет его исполнять, в нашем случае, через секунду включать и выключать светодиод.
В продолжение темы можно почитать статьи с тегом arduino.
Источники: www.arduino.cc, arduino.ru
Источник: https://guesto.ru/diy-znakomstvo-s-arduino-nano/
Как начать программировать Arduino
Хотите научиться создавать электронные гаджеты своими руками, но не знаете, с чего начать? Намерены изучить основы электроники? Тогда платы семейства Arduino – отличный выбор для начинающего. В частности, хороша для этих целей плата Arduino UNO, которую мы сейчас и рассмотрим.
- плата Arduino UNO;
- кабель USB (USB A – USB B);
- персональный компьютер;
- светодиод;
- пара соединительных проводов длиной 5-10 см;
- при наличии – макетная плата (breadboard).
Загрузите среду разработки для Ардуино (Arduino IDE) с официального сайта для своей операционной системы (поддерживаются ОС Windows, Mac OS X, Linux).
Можете выбрать установщик (Installer), можете архив (ZIP file for non admin install). Во втором случае программа просто запускается из папки, без установки.
Скачанный файл содержит кроме среды разработки также драйверы для плат семейства Arduino.
Загружаем среду разработки Arduino IDE с официального сайта
2Подключение Arduinoк компьютеру
Подключите плату Arduino с помощью USB кабеля (типа USB-A – USB-B) к компьютеру. Должен загореться зелёный светодиод ON на плате.
Кабель “USB-A – USB-B” для подключения Arduino к компьютеру
3Установка драйверадля Arduino
Установите драйвер для Arduino. Рассмотрим вариант установки на операционную систему Windows. Для этого дождитесь, когда операционная система предложит установить драйвер. Откажитесь. Нажмите клавиши Win + Pause, запустите Диспетчер устройств.
Найдите раздел «Порты (COM и LPT)». Увидите там порт с названием Arduino UNO (COMxx). Кликните правой кнопкой мыши на нём и выберите Обновить драйвер. Укажите операционной системе расположение драйвера.
Он находится в поддиректории drivers в той папке, которую мы только что скачали.
Запомните порт, к которому подключена плата Arduino. Чтобы узнать номер порта, запустите диспетчер устройств и найдите раздел «Порты (COM и LPT)». В скобках после названия платы будет указан номер порта. Если платы нет в списке, попробуйте отключить её от компьютера и, выждав несколько секунд, подключить снова.
Arduino в диспетчере устройств Windows
4НастройкаArduino IDE
Укажите среде разработки свою плату. Для этого в меню Инструменты Плата выберите Arduino UNO.
Выбираем плату Arduino UNO в настройках
Укажите номер COM-порта, к которому подключена плата Arduino: Инструменты Порт.
Задаём последовательный порт, к которому подключена плата Arduino
5 Открываем примерпрограммы
Среда разработки уже содержит в себе множество примеров программ для изучения работы платы. Откройте пример “Blink”: Файл Образцы 01.Basics Blink.Кстати, программы для Ардуино называются «скетчи».
Открываем пример скетча для Arduino
6 Сборка схемысо светодиодом
Отключите Arduino от компьютера. Соберите схему, как показано на рисунке. Обратите внимание, что короткая ножка светодиода должна быть соединена с выводом GND, длинная – с цифровым пином “13” платы Arduino. Удобно пользоваться макетной платой, но при её отсутствии соедините провода скруткой.
Цифровой пин “13” имеет встроенный резистор на плате. Поэтому при подключении светодиода к плате внешний токоограничивающий резистор использовать не обязательно. При подключении светодиода к любым другим выводам Ардуино использование резистора обязательно, иначе сожжёте светодиод, а в худшем случае – порт Ардуино, к которому подключён светодиод!
Схема подключения светодиода к Arduino
7Загрузка скетчав память Ардуино
Теперь можно загрузить программу в память платы. Подключите плату к компьютеру, подождите несколько секунд, пока происходит инициализация платы.
Нажмите кнопку Загрузить, и Ваш скетч запишется в память платы Arduino. Светодиод должен начать весело подмигивать вам с периодичностью 2 секунды (1 секунду горит, 1 выключен).
Ниже приведён код нашей первой программы для Ардуино.
void setup() { // блок инициализации pinMode(13, OUTPUT); // задаём пин 13 в качестве выхода. } void loop() { // цикл, который повторяется бесконечно, пока включена плата: digitalWrite(13, HIGH); // подаём на 13 вывод высокий уровень – зажигаем светодиод delay(1000); // на 1000 мсек = 1 сек. digitalWrite(13, LOW); // подаём на 13 вывод низкий уровень – гасим светодиод delay(1000); // на 1 сек. } // далее цикл повторяется
Почитайте комментарии в тексте программы – их достаточно чтобы разобраться с нашим первым экспериментом. Сначала описываем блок инициализации setup(), в котором задаём начальные значения переменных и функции выводов Arduino.
Далее следует бесконечный цикл loop(), который повторяется снова и снова, пока на плату подаётся питание. В этом цикле мы выполняем все необходимые действия. В данном случае – зажигаем и гасим светодиод. Оператор delay() задаёт длительность выполнения (в миллисекундах) предшествующего оператора.
Оператор digitalWrite() указывает Ардуино, на какой вывод подать напряжение, и какой именно уровень напряжения.Ваш первый скетч готов!
Полезный совет
В сети есть множество сайтов, посвящённых работе с платами семейства Arduino. Читайте, осваивайте, не бойтесь экспериментировать и познавать новое! Это увлекательное и полезное занятие, которое принесёт вам много удовольствия.
Обратите внимание
Будьте внимательны при работе с платой Arduino – это электронное изделие, которое требует бережного отношения. Снизу платы есть оголённые проводники, и если Вы положите плату на токопроводящую поверхность, есть вероятность сжечь плату. Также не трогайте плату влажными или мокрыми руками и избегайте при работе сырых помещений.
Источник: https://soltau.ru/index.php/arduino/item/363-how-start-arduino
Arduino – полный фарш! (Uno, Nano, шилды, самопал)
Arduino — это общее название для серии аппаратных платформ (микрокомпьютеров) на основе микроконтроллеров ATmega.
Эти платы могут использоваться как для создания полностью автономных устройств/приборов/игрушек, так и подключающихся к компьютеру и взаимодействующих с каким-либо программным обеспечением.
Опишу в одном обзоре зачем и кому всё это надо, пару устройств и некоторые дополнения к ним.
А заодно, не отходя от кассы, вас ждёт возможность лично «причаститься к техническому прогрессу».
Оффтоп
Тех кто дочитает до конца — ждёт небольшой интерактив и наглядная демонстрация с возможностью потереть шаловливые ручки, потыркать кнопки и немного помучить результаты моей скромной деятельности.
Вводная
Начну с того, что Arduino — это открытая платформа, а это означает что все принципиальные схемы, рисунки печатных плат, исходные коды прошивок, программное обеспечение и т.д.
находятся в общем доступе и при желании любой может не покупать эту плату, а самостоятельно собрать из доступных/найденных/купленных радиодеталей, внести свои изменения, скачать прошивку и получить готовое устройство.
А самое главное что и купленный и самопальный вариант можно использовать и применять совершенно бесплатно, без каких-либо лицензионных ограничений.
По технической части
Платы Arduino и их аналоги представляют собой набор из собственно платы, на которой размещён микроконтроллер ATmega (разных версий) съёмный либо впаяный, с которого разведены несколько цифровых и аналоговых (ШИМ) вводов-выводов, а также сопутствующую обвязку, как правило это: — токоограничительные резисторы на вводы-выводы — несколько светодиодов-индикаторов — резонатор (кварцевый или керамический) — кнопка сброса — стабилизатор напряжения +5в и/или +3.3в — микросхема отвечающая на соединение по USB (может не быть в зависимости от версии) — разъём USB (зависит от версии) — разъём внешнего питания (зависит от версии) — на версиях с внешним разъёмом питания — входной защитный диод от переполюсовки
По программной части
Имеется собственная среда разработки, в которой можно писать программы («скетчи») на Си-подобном языке и который люто ненавидят AVR-щики, называя её «птичий язык».
Это среда, конечно же, имеет свои недостатки, не даёт полного контроля над всеми возможностями процессора, но при этом очень сильно упрощает жизнь и ускоряет процесс моделирования. За удобство надо платить, да.
Скажу, что совершенно не обязательно её использовать, можно писать на чём угодно, например, на том же GCC и WinAVR, благо, сердце Arduino — тот же самый AVR. А самые заядлые хардкорщики могут писать под Ардуино на Си и ассемблере.
Кому и зачем нужно?
Кому? Глупый вопрос — мне конешно 🙂 Зачем? Для реализации творческого процесса.
Если серьёзно, то на основе этих платформ можно соорудить практически всё что угодно (в разумных, конечно, пределах) начиная от охранной системы с кучей функций, типа включения сирены и отправки СМС, и заканчивая разнообразными контрольно-измерительными приборами.
Если несерьёзно, то при наличии фантазии и пары сервоприводов можно соорудить какую-нибудь игрушку, поворотное устройство (следящее за солнцем, например, или за фонариком), автокормилку для рыбок, механическую руку, устройство для заварки чая, наливайку для пива и многое другое 🙂
Преимущества
Нанотехнологии для домохозяек 🙂 Микроэлектроника для ленивых — без паяльника и пайки 🙂 Можно действительно собрать реально действующий прототип какого либо устройства, не прибегая к пайке (правда, чтобы совсем уж не прибегать к пайке придётся покупать, покупать и покупать простейшие вещи, которые можно легко сделать вручную).
Помимо простоты технической части, существует большая официальная библиотека примеров (программ, «скетчей») для Arduino с помощью которых можно делать те или иные вещи. Не говоря уже о неофициальных, любительских проектах.
Однако, следует оговориться, что эта простота не отменяет наличия, хотя бы минимального количества мозгов и прямых рук. Порой приходится посидеть и серьёзно подумать над реализацией простейшей вещи, которая штатными средствами либо ну никак не хочет получаться, либо просто не предусмотрена…
Что имеем на деле (варианты, версии, плюшки, фотки)
Заранее прошу прощения за качество фотографий — в отсутствие, на данный момент, нормального фотоаппарата, они сделаны вебкамерой.
Моя версия Arduino Uno куплена на Алиэкспрессе, различий с версией которая на BiC практически не имеет, разве что на фотках BiC присутствует надпись «made in Italy» (что, естественно, не так :))).
Аппаратно обе версии соответствуют первой ревизии оригинальной Arduino Uno.
Я позиционирую лично для себя это устройство как основную плату для проектирования. Точнее для максимально быстрого прототипирования, особенно в сочетании с мегашилдом:
На фото может быть не очень понятно, но я поясню, мегашилд не имеет на своём борту никаких электронных компонентов (за исключением одного светодиода и пары резисторов), и представляет из себя очень удобно разведённую схему для подключения датчиков, сервоприводов и т.д. При этом все стандартные выводы так же сохранены. Плюсом является стандартизированная организация выводов — например для подключения сервоприводов не нужно делать разветвитель от «родных» контактов Arduino на питание и землю — всё уже выведено на шилде группами по 3 пина: земля-питание-сигнал. Вот как выглядит этот «сэндвич»:К слову, мегашилд с BiCa приехал со слегка погнутыми ножками, т.к. был просто брошен в большую посылку с антистатическом запаянном пакете, без всякой дополнительной защиты. При вскрытии пакета оказалось, что помимо погнутых ножек, вся плата затыкана отпечатками китайских пальцев густо намазанных акриловым клеем 🙂
Следующая плата Arduino Nano. Не очень удобна для проектирования, но ввиду исключительно маленького размера идеальна для конечного устройства. Особенно если это устройство планируется использовать совместно с компьютером — т.к. она так же имеет USB выход.
Для конечного устройства в котором не предполагается контактов с внешним миром можно использовать исключительно дешёвую плату Arduino Pro Mini. Минус этой платы в том что для её программирования нужен либо переходник USB-serial, либо ещё одна плата Arduino с USB выходом. Своей фотки нет, даю с ДХ:
Примеры использования
Контроллер штангенциркуля + вывод на дисплей от Нокии 5510(3310) из обзора про штангенциркуль
Термометр и гигрометр на основе датчика DHT11 (фигня, DHT22 лучше, но на BiC нету) и вражеского неправославного LCD дисплея HD44780 (нет поддержки кириллицы):
Моторизированная вебкамера — управляемая с компьютера (подробности см. ниже)
[Подвал]
Официальный Ардуинский сайт arduino.cc
Arduino Uno buyincoins.com/details/high-quality-arduino-uno-atmega328p-pu-module-atmega8u2-avr-usb-cable-board-product-10252.html
Arduino Nano buyincoins.com/details/arduino-nano-v3-0-avr-atmega328-p-20au-moudle-board-with-usb-cable-product-10178.html
Arduino Pro Mini dx.com/p/arduino-pro-mini-w-atmega328p-electronic-building-blocks-interactive-media-improved-version-104332
Мегашилд buyincoins.com/details/perfect-high-quality-new-arduino-sensor-shield-digital-analog-module-servos-v4-product-9030.html
Макетка (беспаечная) buyincoins.com/details/high-quality-mini-solderless-breadboard-bread-board-400-contacts-available-product-11082.html
Акселерометр buyincoins.com/details/mma7361-angle-sensor-inclination-accelerometer-acceleration-module-arduino-speed-product-10248.html
Двухстрочный 16тисимвольный LCD дисплей buyincoins.com/details/new-character-lcd-module-display-lcm-1602-16×2-hd44780-blue-blacklight-product-9000.html
Сервопривод SG90 (рулевая машинка) buyincoins.com/details/1x-9g-micro-servo-for-rc-helicopter-plane-futaba-hitec-product-3457.html
Датчик температуры и влажности DHT11 buyincoins.com/details/new-dht11-digital-temperature-and-humidity-sensor-product-6732.html
Проводки-коннекторы (40шт) buyincoins.com/details/40pcs-dupont-wire-color-connector-cable-line-1-pin-new-product-7224.html
[Интерактив]
К чему всё это может привести, можно посмотреть и даже пощупать (да, да!) здесь (шибко не издевайтесь, комп старенький, при большом онлайне будет подтормаживать)
Работает. Антимат потихоньку совершенствуется, не пускает матюки, заодно убирает мусор типа «тест», «111», «ололо» и прочих «ракодилов».
Выражаю огромную благодарность всем неравнодушным людям, которые помогали советами и кодом, без которых я бы так быстро не «допилил» игрушку до приемлемого уровня.
А заодно и матершинникам, которые сподвигли сделать антимат, и безостановочно снабжали меня своей фантазией, когда изощрялись пролезть через фильтры — благодаря вам я теперь знаю практически все ваши уловки :)))
Кот, по просьбам :о)
Шедевр называется «Котэ крутен» © неизвестный автор
Дополнительная информация по просьбам
Q: Как долго собиралось?
A: Железо — примерно 15 минут, программная часть 3-4 вечера, из-за своих же ошибок.
Q: Во сколько обошлось?
A: С учётом всех скидок — примерно в 25$ (считая дисплей бесплатным, т.к. самоделка)
Q: Какие языки программирования использовались?
A: Родной ардуинский для прошивки и вижуал басик 6.0 для web-com прокси.
Q: Можно более подробно о материальной и программной части?
A: Матчасть: — ардуино уно (мегашилд можно исключить) — две сервы (рулевые машинки по ссылке из обзора) — вебкамера (любая USB) — компутер
Программное обеспечение:
— среда разработки, например родная Arduino — из программного комплекта ардуино — две библиотеки — serial и servo — если просто рулить самому — достаточно виндовс терминала — если так как у меня: апач, пхп, рамдиск (виртуальный диск в памяти для ускорения и разгрузки винчестера), веб-ком прокси (самопальная), и любая программа для вебкамеры, которая либо поток шлёт, либо сохраняет картинки на диск, либо регистриуется аккаунт на смотрикоме и транслируется видеопоток, без нагрузки на свой комп (но будет задержка секунд 7-10)
Постскриптум 2013
Сайт уже больше не представляет из себя одинокую страничку, всё переведёно на CMS движок, комп тот же, камера та же, экран — уже другой, в составе шилда, от USB я отказался, перевёл всё на LAN, сервы отработали почти полтора года и до сих пор живы.
Источник: https://mysku.ru/blog/china-stores/3748.html
Как прошить Arduino Pro Mini (от А до Я)
Введение
Приветствую Вас, читатели нашего ресурса. Сегодня мы поговорим об одном контроллере из серии Arduino, а именно об Arduino Pro Mini.
Это маленький, компактный контроллер, имеющий все преимущества Arduino, но при этом очень компактный, можно сказать самый маленький из всех существующих Arduino контроллеров на данный момент.
Многих так же привлекает и цена его Китайский копий, а стоят они от одного до двух долларов за штуку (местами и того меньше), что так же заставляет задуматься об его приобретении.
Но существует и одна проблема, его не так-то уж и просто прошить, особенно Китайские копии, которые оснащают процессором Atmel ATmega168P, которыми некогда не оснащали официальные контроллеры Arduino Pro Mini и как следствие Arduino IDE отказывается их прошивать, сообщая о неправильной сигнатуре процессора.
Вот об этом мы сегодня и поговорим. Как прошить, что для этого нужно, ну и как заставить Arduino IDE работать с китайскими копиями.
Что для этого нужно?
Arduino Pro Mini очень компактный, а компактность требует жертв и жертва это – USB интерфейс который полностью выкосили в данном контроллере т.е. подключить Pro Mini к компьютеру напрямую у вас не получится и как следствие для этого понадобится либо специальный переходник USB в TTL или другой контроллер Arduino.
Далее мы разберем три способа как прошить Pro Mini и для всех трех способов нам что-то понадобиться:
- Первый способ. Прошиваем через адаптер USB в TTL – нужен сам адаптер в количестве одной штуки.
- Второй способ. Прошиваем через Arduino UNO – нужна Arduino UNO, но не простая, а в классическом исполнении, это та Arduino, в которой процессор выполнен в DIP корпусе и вставлен в черный разъем.
- Третий способ. Прошиваем через SPI интерфейс – нужна любая Arduino: UNO, Nano, Mega, Leonardo – не важно, главное чтобы был USB разъем для подключения к ПК.
Первый способ. Прошиваем через адаптер USB в TTL
Первым и самым простым способом загрузить свой скетч в Arduino Pro Mini – это приобрести специальный адаптер USB в TTL или как его называют UART переходник. Как правило, этот переходник это и есть та часть, которую вырезали из Arduino Nano, превратив ее в Arduino Pro Mini.
Стоимость подобных переходников копеечная, а выбор и того больше. Китайцы наштопали их столько, что глаза разбегаться какой из них выбрать. При этом цена сего девайса не более одного вечно зеленого.
После того как вы соедините Pro Mini и UART переходник проводами или шлейфом, остаётся только воткнуть его (переходник) в ПК, установить драйвер (не для всех переходников они требуются) и на этом собственно все.
Ваш ПК определит переходник как очередной COM-порт, который появляется при подключении любой Arduino к ПК. Выбираете его, плату, с которой будете работать (Arduino Pro Mini) и спокойно загружаете свой скетч.
Единственным нюансом в данных переходниках, является наличие или отсутствие контактов RST или DTR. Рекомендую покупать переходники, на которых эти контакты есть.
Они значительно упрощают жизнь и делают процесс прошивки беспроблемным.
Если же вы купили уже переходник, на котором подобных контактов нет, то при каждой загрузке скетча в Arduino вам придется нажимать на кнопку Reset, что не всегда получается сделать вовремя, и это вносит свои неудобства.
Подключение переходник вы можете посмотреть по таблице ниже:
RX | RX |
TX | TX |
GND | GND |
5V | VCC |
RST или DTR или GRN | RST или DTR |
Второй способ. Прошиваем через Arduino UNO
Для этого способа нам понадобиться классическая Arduino UNO. Классическая эта та, в которой корпус микросхемы выполнен в DIP корпусе и вставлен в специальный разъем. Вот эту микросхему нам надо аккуратно поддеть отверткой. Тут важно не сломать процессор, поддевайте аккуратно, не погнув ноги.
Arduino UNO. Процессор выполнен в DIP корпусе.Аккуратно поддеваем и вытаскиваем процессор отверткой.
После того как мы вытащили процессор из Arduino UNO мы по сути получили тот самый переходник USB в TTL, осталось только соединить проводами наш новый переходник и Arduino Pro Mini по следующей схеме:
RX | RX |
TX | TX |
GND | GND |
5V | VCC |
RST | RST |
После того как вы соединили две Arduino воедино, можно приступать к прошивке Arduino Pro Mini. Подключаем Arduino UNO по USB к ПК. Выбираем в настройках Arduino IDE COM-порт, указываем, что мы теперь работаем не с Arduino UNO, а с Arduino Pro Mini и все, заливаем наши скетчи. Способ довольно интересный, если вы не боитесь испортить Arduino и рядом не оказалось переходника USB в TTL.
Третий способ. Прошиваем через SPI интерфейс
Третьим и самым неудобным способом загрузить свой скетч в Arduino Pro Mini это прошить его при помощи ICSP интерфейса. Данный интерфейс присутствует на большинстве плат Arduino.
Основные контакты данного интерфейса выведены на порты с 10 по 13, а так же выведены отдельно в виде шести контактной колодки с подписью ICSP.
Располагается колодка, как правило, в центральной правой части Arduino.
Прошивка Arduino Pro Mini в этом случае делиться на два этапа:
- Прошивка платы Arduino как ISP программатора.
- Настройка Arduino IDE и загрузка скетча в Arduino Pro Mini.
Первым делом мы должны подготовить наш будущий программатор. Возьмем для примера всю туже Arduino UNO. Далее пошагово:
- Запускаем Arduino IDE.
- Файл – Примеры – 11.ArduinoISP – ArduinoISP.
- Инструменты – Плата – Arduino UNO.
- Инструменты – Порт – Выбираем COM-порт.
- Компилируем и заливаешь в Arduino UNO.
Далее нам необходимо соединить две Arduino проводами по следующей схеме:
5V | VCC |
GND | GND |
10 | RST |
11 (MOSI) | 11 (MOSI) |
12 (MISO) | 12 (MISO) |
13 (SCK) | 13 (SCK) |
Теперь опять открываем Arduino IDE. Открываем в ней скетч который вы хотите залить в Pro Mini и выполняете следующие действия:
2. Инструменты – Плата – Arduino Pro Or Pro Mini3. Инструменты – Процессор – ATmega168 (5V, 16 MHz)4. Инструменты – Порт – Выбираете порт5. Инструменты – Программатор – Arduino as ISP
6. Скетч – Загрузить через программатор
Как видите загружать скетч в этом режиме надо через специальное меню “Загрузить через программатор”, а не через кнопку “Загрузить” на главной форме Arduino IDE. В этом и связано все неудобство. Если вы нажмете кнопку “Загрузить” как это делаете обычно, то вы зальете скетч в Arduino UNO, а не Arduino Pro Mini, что затрет там скетч программатора.
Так же в этом режиме недоступен класс Serial, то есть отлаживать свой скетч обмениваясь сообщениями по COM-порту у вас так же не получится. Ну и еще одна ложка дегтя в том, что после данной перепрошивки, в большинстве случаев, перепрошить Arduino Pro Mini через переходник у вас так же больше не получиться.
Исправляется это заливкой нового bootloader-а через меню “Инструменты” – “Записать Загрузчик”.
Добавляем китайский Pro Mini в Arduino IDE
Как я уже говорил в данной статье, Китайские клоны порой оснащают процессорами которыми не оснащали официальные версии Arduino Pro Mini и как следствие при прошивке их вы можете увидеть следующую или подобную ошибку.
avrdude: Expected signature for ATmega168 is 1E 94 06 Double check chip, or use -F to override this check. Найден неправильный микроконтроллер. Вы указали правильную плату в меню Инструменты -> Плата?
Исправляется это легко:
- Для начала необходимо открыть папку в которой расположена Arduino IDE.
- Затем переходим в следующую папку “Папка с Arduino IDEhardwarearduinoavr”.
- Ищем там файл “boards.txt” и открываем его в текстовом редакторе.
- Ищем в файле следующую строку “pro.menu.cpu.16MHzatmega168.build.mcu=atmega168”.
- И заменяем ее на “pro.menu.cpu.16MHzatmega168.build.mcu=atmega168p”.
- Перезапускаем Arduino IDE и на этом все.
- Если у вас к примеру 328 процессор то делаем все так же, только ищем строку с цифрами 328.
Заключение
В данной статье я привел аж три варианта загрузки скетчей в Arduino Pro Mini. Лично я использую второй. Мне он больше нравиться.
Что будете использовать вы – выбирать вам. Оставьте в комментарии какой вариант вы предпочитаете.
Успехов вам и удачи.
Источник: http://arduino.on.kg/kak-proshit-Arduino-Pro-Mini-ot-a-do-ya
Arduino
Arduino в свое время организовали два человека. Американец Дэвид и Итальянец Массимо. Видимо они были каким-то программистами – электронщиками.
В итоге получилась такая игрушка в виде микроконтроллера, который можно программировать, а значит с помощью этих самых программ выполнять какие-то действия и задачи.
По сути это небольшой компьютер без монитора, без порта для принтера, без видеокарты, то есть с минимальными возможностями, но все же значительным потенциалом! Здесь все зависит от того, как применить этот самый Arduino.
Микроконтроллеров – сборок Arduino довольно много. То есть Arduino может быть в зависимости от исполнения сборки представлен в различном виде. Если провести аналогию с машинами, то Arduino это марка, а вот возможные сборки Arduino (UNO, Leonardo, Nano, One…) это модели этой марки.
Именно поэтому не стоит мешать все в одну кучу, не смотря на то, что они очень между собой похожи. Основные их различия заключаются в объеме памяти Arduino, в размерах, в выводах, в частных особенностях…
Так что выберите для себя какой-то один Arduino и начните работать с ним.
Для того чтобы вам было проще определиться, мы вам посоветуем взять Arduino UNO, как наиболее распространенный.
(Китайский Arduino на Али – некая аналогия “подделка”, но при этом дешевле раз в 6 оригинала. Функционально один в один. Стоит около 4,5 долларов)
Когда освоите его, то дальше можно будет продолжить работать и с другими подобными сборками. А сейчас о проектах и подключении Arduino в нашем разделе.
Программируем Attiny 13 и 13а через Ардуинку
Источник: http://xn—–7kcglddctzgerobebivoffrddel5x.xn--p1ai/kommunikatsii/elektronika/arduino
Программирование Arduino напрямую, без USB
Так случилось, что у меня оказалось две поломанные платки Ардуино Нано, Обе имели не рабочую CH340G — это такой теперь драйвер USB/COM порта. Мне почему-то попалось сразу две таких, в партии из трех штук. Видно китайцы так шутят. Но не суть важно, решил проверить как работает прошивка напрямую, без USB.
Программатор у меня был давно, называется USBASP, В виде платы с USB разъемом, и 10-ти контактным штекером, и с кабелем на выходе. По сути нам используются лишь 6-ть линий, остальное дополнительная земля и неиспользуемый вывод.
Для начала подключаем это дело к компьютеру, и проверяем работает ли оно или нет. Я использую для прошивки Arduino IDE, устанавливаю в меню «Сервис — Тип платы — Arduino Nano». Далее пробую программировать. Тут у меня IDE выдало сообщение про необходимость обновление прошивки программатора, вот такое:
Пришлось быстро обновить ПО программатора USBASP. Процедура по сути следующая:
Для начала надо найти … другой программатор. Или плату. У меня под рукой была Ардуино Уно. Надо это для того, чтобы запрограммировать микросхему программатора. Немного запутанно, но последовательность действий такая:
- Берем Ардуино Уно или другую
- Заливаем туда скетч из примеров, которые идут с IDE, меню» Файл — Примеры — ArduinoISP». Не забываем указать порт в меню «Сервис — Последовательный порт — …»
- Подключаем программатор прямо за разъем программирования следующим образом:USBasp Arduino Uno VTG 5V GND GND RES 10 MOSI 11 MISO 12SCK 13Я не подпаивал это все дело прямо на плату, а сделал переходничок на макетной плате с 10-ти контактным разъемом. Верхний подключался к уно, на фото ее нет, но она была 🙂
и использовал стандартный провод программатор. Мне показалось что таким образом будет меньше шансов его спалить. Вот такая логика подключения в кабеле программатора, фото я где-то позаимствовал:
Как написано на картинке выше, обратите внимание на красную линию на кабеле. И это правильно. я обратил. Со второго раза.
Надо установить на программаторе перемычку JP2. Это будет означать — что включен режим изменения его собственной прошивки.
После того, как вы подключили программатор, к ардуине уно, надо «залить» прошивку. Берете avrdude, Распаковываете в с:MUSORavrdude или другую папку. Запускаете команду:
avrdude –C ./avrdude.conf –c avrisp –P COM!!ВАШНОМЕРПОРТА!!! –b 19200 –p m8 –U flash:w:usbasp.atmega8.2011-05-28.hex
Там где написан «ваш номер порта», следует вставить номер порта, который у вас указан для подключения «Ардуино Уно», используемой в качестве программатора. У меня это COM3 был. Меню «Сервис — Последовательный Порт» — и какой там у вас порт появляется для Уно. Вы его уже должны были выбрать при программировании Уно, или другой платы, которая у вас в качестве программатора..
Если все ок, вы получите следующий вывод:
Ок, на этом этапе мы возвращаемся к нашей нано, и имеем программатор с нужной версией прошивки. Далее подключаем его, точнее я подпаял, к ардуино нано. На ней есть разъем, или отверстия под разъем, дальше видно где именно:
Последовательность подпайки слева, это вид на разъем сверху — со стороны установки процессора.
С нижней стороны ничего не паяем, видно что я выпаял микросхему USB интерфейса, она не работала:После чего можно программировать Arduino Nano без микросхемы интерфейса. Вот так оно это подключение выглядит в моем случае:
Аналогично можно прошивать и Ардуино Про Мини, в случае с ней подключение программатора следующее:
Конечно, если у вас устройство портативное — макет, и надежно закреплено как у меня -дюбелями, и вы хотите менять прошивки — есть смысл использовать Ардуино с разъемом USB, такой же способ больше подходит для отладки устройства на столе
Источник: http://publikz.com/blog_18932
Программирование Arduino на C в AVR Studio
Arduino — это готовая отладочная плата и очень простой язык для программирования, упрощающая начало работы с микроконтроллерами ценой размера и быстродействия программ. С недавних пор Atmel добавила поддержку бутлоадера Arduino в AVR Studio, то есть можно писать загружать без программатора программы написанные хоть на C, хоть на C++, хоть на Assembler.
Более того — можно в AVR Studio писать код на языке Processing/Wiring.
Рекомендую начать чтение статьи с update’а в конце!
В этой статье мы предлагаем пошаговую инструкцию по установке ПО для программирования Arduino с использованием AVR Studio. За основу мы брали обзор расширений AVR Studio с сайта easyelectronics.ru.
Все примеры мы будем запускать на нашей плате EduBoard.
Установка Arduino IDE
Мы используем версию Arduino 1.5.2. Скачать ее можно на официальном сайте. Последняя версия (1.6.2-r2 на момент написания статьи) по каким-то причинам не работает с микроконтроллером Atmega8.
Вы скачаете zip-архив с уже развернутой средой. Останется только распаковать ее в директорию с программами.
Установка Atmel Studio
Скачать среду можно на официальном сайте Atmel. Для этого вам потребуется регистрация на сайте. Обязательно пройдите ее — это понадобится и при установке расширений. Обратите внимание, что она работает только под Windows! Подойдут для нашей задачи только версии выше 6.0, то есть 6.1, либо 6.2!
Установка расширения Arduino для AVR Studio
Выберите пункт меню Tools -> Extension Manager. Перед вами откроется окно:
Extension Manager
Выберите пункт меню «Arduino IDE for Atmel Studio 6.1 & 6.2″ и нажмите кнопку «Download». Вам предложат ввести логин/пароль. Сделайте это и не забудьте поставить галочку «Remeber me». После этого через браузер начнется загрузка файла ArduinoForAtmelStudio.msi. После загрузки установите его и перезапустите AVR Studio.
Настройка AVR Studio
После перезапуска вы увидите окно первоначальной настройки расширения. В этом окне необходимо указать директорию в которой установлена среда Arduino.
Configuring Visual Micro
Вы увидите, что вас появилась новая панель инструментов:
Панель Visual Micro
На ней необходимо выбрать плату, которую вы используете (в нашем случае Arduino NG or older w/ ATmega8) и номер COM-порта к которому она подключена. Больше настроек доступно в меню Tools -> Visual Micro.
Инструменты Visual Micro
Начало работы
В AVR Stuidio запустите менеджер проектов «New Project». Выберите сценарий Arduino Sketch:
Настройка проекта
В файле проекта с расширением .ino вы увидите стандартный формат Arduino-скетча. На плате к выводу d13 подключен светодиод. Это вывод микроконтроллера PB5. Для примера помигаем этим светодиодом. Удалите весь код и введите вот это:
#include #define F_CPU 16000000UL //16MHz #include int main(void) { DDRB |= 1
Источник: http://www.customelectronics.ru/programmirovanie-arduino-na-c-v-avr-studio/
Программирование Arduino при помощи Raspberry Pi
Чтобы программировать при помощи , достаточно установить , а для этого достаточно выполнить команду:
sudo apt-get install arduinoПосле установки появляется каталог
/usr/share/arduino
Но для удобного программирования контроллера из-под командной строки можно использовать arduino-mk.
Пакет arduino-mk позволяет собирать и загружать скетчи Arduino на Raspberry Pi без использования Arduino IDE.
Установка пакета:sudo apt-get install arduino-mkПоявится файл
/usr/share/arduino/Arduino.mk
Теперь можно тестировать. Создадим каталог sketchbook и тестовый проект blink:mkdir ~/sketchbook cd ~/sketchbook ln -s /usr/share/arduino/Arduino.mk mkdir blink cd blink sudo nano blink.
ino // Blink void setup(void) { pinMode(13, OUTPUT); } void loop() { digitalWrite(13, LOW); delay(1000); digitalWrite(13, HIGH); delay(1000); }создаём Makefilesudo nano MakefileBOARD_TAG = nano328 ARDUINO_PORT = /dev/ttyUSB1 ARDUINO_LIBS = ARDUINO_DIR = /usr/share/arduino include ..
/Arduino.mkосталось выполнитьmake make uploadв результате выполнения команды
make
идёт сборка и появляется каталог build-cli, в котором содержится нужный .hex-файл команда
make upload
вызывает avrdude, который заливает прошивку в МК. доступны команды: make — сборка без загрузки make upload — собрать и загрузить make clean — очистить make depends — обновить зависимости make reset — сброс Arduino передёргиванием DTR у последовательного порта make raw_upload — загрузить без первоначального сброса make show_boards — перечислить возможные типы плат, определённых в boards.txtmake show_boardsTag Board Name atmega168 Arduino NG or older w/ ATmega168 atmega328 Arduino Duemilanove w/ ATmega328 atmega8 Arduino NG or older w/ ATmega8 bt Arduino BT w/ ATmega168 bt328 Arduino BT w/ ATmega328 diecimila Arduino Diecimila or Duemilanove w/ ATmega168 ethernet Arduino Ethernet fio Arduino Fio leonardo Arduino Leonardo lilypad LilyPad Arduino w/ ATmega168 lilypad328 LilyPad Arduino w/ ATmega328 mega Arduino Mega (ATmega1280) mega2560 Arduino Mega 2560 or Mega ADK mini Arduino Mini w/ ATmega168 mini328 Arduino Mini w/ ATmega328 nano Arduino Nano w/ ATmega168 nano328 Arduino Nano w/ ATmega328 pro Arduino Pro or Pro Mini (3.3V, 8 MHz) w/ ATmega168 pro328 Arduino Pro or Pro Mini (3.3V, 8 MHz) w/ ATmega328 pro5v Arduino Pro or Pro Mini (5V, 16 MHz) w/ ATmega168 pro5v328 Arduino Pro or Pro Mini (5V, 16 MHz) w/ ATmega328 uno Arduino Uno
Видео по теме:
далее:
Ссылки:
Пот теме:
Источник: http://robocraft.ru/blog/arduino/3156.html