Как добавить программатор в arduino ide
Перейти к содержимому

Как добавить программатор в arduino ide

  • автор:

Arduino.ru

Раньше добавлял его в файл «programmers.txt», и всё работало.
Но сейчас формат сменился.
Добавляю так :

avr910.name=avr910 avr910.protocol=avr910 avr910.communication=serial avr910.speed=115200 avr910.program.speed=19200 avr910.program.tool=avrdude

при попытке прошить выдаёт :

can't set attributes for device "/dev/ttyS0": Inappropriate ioctl for device Ошибка при записи загрузчика.

Порт указан : /dev/ttyACM0

Такое ощущение, что IDE не видит, что в настройках выбран ttyACM0, и ломится в порт ttyS0

Подскажите. пожалуйста, может я что-то недописал в файле?

  • Войдите на сайт для отправки комментариев

Вс, 08/11/2015 — 05:22
Зарегистрирован: 06.09.2012

неужели никто не сталкивался? О_о

  • Войдите на сайт для отправки комментариев

Вс, 08/11/2015 — 16:21
Клапауций 911
Зарегистрирован: 18.10.2015

4 avr910.speed=115200
5 avr910.program.speed=19200

это так должно быть?

какой-то параметр program.extra_params= появился. не знаю, что занах

  • Войдите на сайт для отправки комментариев

Вс, 08/11/2015 — 18:10
Зарегистрирован: 06.09.2012

Вот то-то и оно. До обовления платформы всё было хорошо. Да тут ось пересносил. поставил новую платформу, и не привязывается программатор.

И да, в скоростях глюк. Но черт с ним, я его поправлю. Дело то в том, что не в тот порт ломится..

Дайте ссыль, ежели кто знает, на описание конфиг файла. Почитаю на досуге.

P.S. Психану и соберу USBAsp

  • Войдите на сайт для отправки комментариев

Вс, 08/11/2015 — 18:12
Клапауций 911
Зарегистрирован: 18.10.2015
Reloader пишет:

P.S. Психану и соберу USBAsp

психани и залей в контроллер USBaspLoader

  • Войдите на сайт для отправки комментариев

Вс, 08/11/2015 — 18:13
Зарегистрирован: 06.09.2012

места много выжрет. Да и мне чем в новые контроллеры бутлоадер-то заливать?!

  • Войдите на сайт для отправки комментариев

Вс, 08/11/2015 — 18:18
Клапауций 911
Зарегистрирован: 18.10.2015
Reloader пишет:

места много выжрет. Да и мне чем в новые контроллеры бутлоадер-то заливать?!

2Kb — экономь, экономь, полтора килобайта спасёт тебя от дефицита флеша.

в чём, вообще проблема скачать старую версию Дуино ИДЕ и юзать для прошивки?

качаешь все версии в зип-архиве и не паришь мосг ни себе, ни людям.

  • Войдите на сайт для отправки комментариев

Вс, 08/11/2015 — 18:20
Зарегистрирован: 06.09.2012

Это костыли. Я могу и напрямую строкой в avrdude прописать. Дело-то не в том, как локальную проблему у меня решить, а как правильно настраивать IDE, чтобы можно было свои программаторы прикручивать.

P.S. версия Arduino у меня тоже своя, и со своим бутлоадером. Но она без проблем прописалась в IDE

  • Войдите на сайт для отправки комментариев

Вс, 08/11/2015 — 18:23
Клапауций 911
Зарегистрирован: 18.10.2015
Reloader пишет:

Дело-то не в том, как локальную проблему у меня решить, а как правильно настраивать IDE, чтобы можно было свои программаторы прикручивать.

ну, давай настраивать — ты будешь настраивать или непонятное писать?

так должно быть?

4 avr910.speed=115200
5 avr910.program.speed=19200
  • Войдите на сайт для отправки комментариев

Вс, 08/11/2015 — 18:28
Зарегистрирован: 06.09.2012
avr910.name=avr910 avr910.protocol=avr910 avr910.communication=serial avr910.speed=19200 avr910.program.speed=19200 avr910.program.tool=avrdude avrisp.program.extra_params=-P

выбранный порт /dev/ttyACM0

При попытке прошить :

avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x00 avrdude: stk500_recv(): programmer is not responding
  • Войдите на сайт для отправки комментариев

Вс, 08/11/2015 — 18:29
Клапауций 911
Зарегистрирован: 18.10.2015

бери рабочие шаблоны:

avrisp.name=AVR ISP avrisp.communication=serial avrisp.protocol=stk500v1 avrisp.program.protocol=stk500v1 avrisp.program.tool=avrdude avrisp.program.extra_params=-P

avrispmkii.name=AVRISP mkII avrispmkii.communication=usb avrispmkii.protocol=stk500v2 avrispmkii.program.protocol=stk500v2 avrispmkii.program.tool=avrdude avrispmkii.program.extra_params=-Pusb

stk500.name=Atmel STK500 development board stk500.communication=serial stk500.protocol=stk500 stk500.program.protocol=stk500 stk500.program.tool=avrdude stk500.program.extra_params=-P

прописывай свой программатор, смотри — будет работать или нет

  • Войдите на сайт для отправки комментариев

Как добавить программатор в arduino ide

Текущее время: Вт фев 20, 2024 07:47:53

Часовой пояс: UTC + 3 часа

Запрошенной темы не существует.

Часовой пояс: UTC + 3 часа

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Extended by Karma MOD © 2007—2012 m157y
Extended by Topic Tags MOD © 2012 m157y

Работоспособность сайта проверена в браузерах:
IE8.0, Opera 9.0, Netscape Navigator 7.0, Mozilla Firefox 5.0
Адаптирован для работы при разрешениях экрана от 1280х1024 и выше.
При меньших разрешениях возможно появление горизонтальной прокрутки.
По всем вопросам обращайтесь к Коту: kot@radiokot.ru
©2005-2024

Урок 2. Работа со средой Arduino IDE

Это второй урок из цикла «Знакомство с Arduino». В этом уроке Вы научитесь работать со средой Arduino IDE.

Для урока Вам понадобится компьютер с доступом в Интернет и любой модуль Arduino.

Многие слышали о таких модулях как Arduino. Появляется вопрос: с чего же начать его изучение? Театр начинается с вешалки, а знакомство с Arduino начинается со среды разработки Arduino IDE.

Давайте найдём ответ на вопрос: зачем нам всё таки нужна эта IDE? Ответ достаточно прост. Среда Arduino IDE необходима для разработки программ и их записи в модули Arduino (и не только).

С предназначением IDE разобрались, теперь давайте изучим, что же она из себя представляет.

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

Среда разработки Arduino IDE состоит из следующих компонентов:

  • Текстовый редактор кода программы (1);
  • Область сообщений (2);
  • Консоль (3);
  • Панель инструментов (4);
  • Панель с часто используемыми командами (5).

Написанная в среде ArduinoIDE программа называется «скетч». Сама программа пишется в текстовом редакторе. В области сообщений выводятся ошибки и пояснения. В консоли отображается полный отчёт о компиляции программы, различные ошибки, подсказки и другая полезная информация. Панель инструментов представляет собой набор полезных функций при разработке программы. На панели с часто используемыми командами всего несколько кнопок, но они являются самыми основными при разработке программы.

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

Язык программирования Arduino:

Фактически нет особого языка программирования Arduino. Модули Arduino программируются на C/C++. Особенности программирования сводятся к тому, что существует набор библиотек, включающий некоторые функции (pinMode, digitalWrite и т.д.) и объекты (Serial), которые значительно облегчают процесс написания программы.

Настройка среды Arduino IDE:

Открыть настройки среды можно из пункта меню Файл -> Настройки или с помощью комбинации клавиш Ctrl + ,

В меню настроек можно изменить путь сохранения программ по умолчанию, изменить размер шрифтов и т.д.

Различные примеры:

Одной из особенностей Arduino IDE является довольно обширная база различных примеров, что очень удобно для начинающих. Открыть пример можно из пункта меню Файл -> Примеры.

Создание новой программы:

Итак, с настройками среды мы разобрались. Что теперь? А сейчас нужно создать новую программу. Это можно сделать несколькими способами:

  • при помощи комбинации клавиш Ctrl + N;
  • из панели с часто используемыми командами

Сохранение программы:

Допустим мы написали программу. Далее нужно сохранить. Сделать это можно несколькими способами:

  • при помощи комбинации клавиш Ctrl + S;
  • из панели с часто используемыми командами

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

Открытие программы:

Теперь мы научились создавать и сохранять программу. Но как теперь открыть сохранённую программу? Для этого в Arduino IDE предусмотрено несколько способов:

  • при помощи комбинации клавиш Ctrl + O;
  • из панели с часто используемыми командами

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

Редактирование текста программы:

Удобный редактор текста программы очень важен при разработке какой-либо программы. В Arduino IDE он довольно неплох, однако уступает конкурентам, таким как Eclipse, Visual Studio и т.д. Однако, его вполне достаточно. В редакторе присутствуют все основные команды, необходимые при редактировании кода. Они находятся в меню Правка. Для самых часто используемых команд (копировать, ставить и т.д.) существуют комбинации, способствующие быстрому доступу к нужной команде правки, что очень удобно. Другими отличительными особенностями встроенного редактора кода являются возможность копирования кода для форумов и в html формате, что позволяет делится Вашими программами, сохраняя наглядность разметки в виде BB кодов или html разметки соответственно.

Давайте остановимся на основных командах, необходимых для редактирования программы:

  • Копировать. Пункт меню Правка -> Копировать или комбинация клавиш Ctrl + C;
  • Вставить. Пункт меню Правка -> Вставитьили комбинация клавиш Ctrl + V;
  • Вырезать. Пункт меню Правка -> Вырезатьили комбинация клавиш Ctrl + X;
  • Выделить всё. Пункт меню Правка -> Выделить всёили комбинация клавиш Ctrl + A;
  • Найти. Пункт меню Правка -> Найтиили комбинация клавиш Ctrl + F;
  • Отменить. Пункт меню Правка -> Отменитьили комбинация клавиш Ctrl + Z;
  • Вернуть. Пункт меню Правка -> Вернутьили комбинация клавиш Ctrl + Y;
  • Форматировать текст программы. Пункт меню Инструменты -> АвтоФорматированиеили комбинация клавиш Ctrl + T. Эта команда позволяет исправить неточности в разметке программы и привести её в более читабельный вид.

Дорогой читатель, удобнее и быстрее всего пользоваться комбинациями клавиш при редактировании текста программы.

Подключение библиотеки:

Давайте разберёмся, что же такое библиотека. Библиотека — это набор функций, предназначенных для того, чтобы максимально упростить работу с различными модулями, датчиками и т.д. Например, библиотека LowPower позволяет легко управлять режимами энергосбережения модулей Arduino. Существует огромное количество различных модулей и датчиков. Но как ими управлять? Для этого разработаны специальные библиотеки, которые значительно облегчают работу. Но перед тем, как использовать дополнительные библиотеки, необходимо установить и подключить их. А как подключить библиотеку, спросите Вы? Есть несколько способов:

  • через среду Arduino IDE. Для этого перейдите в меню Скетч -> Подключить библиотеку. Если нужная библиотека есть в списке, то необходимо просто кликнуть на неё мышкой и она автоматически подключится к Вашей программе. А что же делать, если нужной библиотеки нет в списке? В таком случае перейдите во вкладку Скетч -> Подключить библиотеку -> Управление библиотеками. Перед Вами откроется следующее окошко: В правом верхнем углу необходимо ввести название нужно библиотеки. Далее, из списка надо выбрать нужную библиотеку, её версию и нажать кнопку установить. Обратите внимание, что есть возможность отсортировать результаты поиска (вкладки Тип и Тема). Теперь она появится в списке установленных библиотек и её можно подключить через меню Скетч -> Подключить библиотеку.
  • Предварительно скачав нужную библиотеку её также можно подключить к своей программе. Если она находится в zip архиве, то её можно подключить следующим способом. Для этого нужно перейти в меню Скетч -> Подключить библиотеку -> Подключить .ZIP библиотеку и в открывшемся окошке выбрать zip архив с библиотекой. Теперь эта библиотека появится в списке установленных и её можно подключить через меню Скетч -> Подключить библиотеку. Если у Вас открыта Arduino IDE, то её нужно перезапустить, чтобы изменения были применены.
  • Подключить библиотеку можно и без использования Arduino IDE. Для этого необходимо её скачать и скопировать папку с библиотекой по следующему пути: X:\Пользователи\\Документы\Arduino\libraries. Если у Вас открыта Arduino IDE, то её нужно перезапустить, чтобы изменения были применены. Теперь эта библиотека появится в списке установленных и её можно подключить через меню
    Скетч -> Подключить библиотеку. Однако можно и вручную в программе подключить библиотеку. Для этого перед функцией setup() нужно прописать следующую конструкцию #include или #include «имя заголовочного файла.h».

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

Выбор платы:

Существует довольно большое количество модулей Arduino. Загружать написанную программу нужно именно в тот тип модуля, который подключён к компьютеру. Выбрать модуль можно в меню Инструменты -> Плата.

В списке находятся все официальные версии модулей Arduino. Если нужного модуля нет в списке, то его можно добавить. Это рассмотрено в следующем уроке.

Далее необходимо выбрать тип контроллера, который установлен на модуле Arduino (на каждом контроллере есть маркировка). Это можно сделать в меню Инструменты -> Процессор.

Компиляция программы:

Теперь, когда выбран конкретный модуль Arduino, можно переходить к компиляции написанной программы. Давайте разберёмся, что же такое компиляция. Если говорить простым языком и касательно среды Arduino IDE, то компиляция — это перевод написанной в IDE программы в эквивалентную, но в машинных кодах. Программа записывается в микроконтроллер именно в машинных кодах, а не в том виде, в котором она написана в IDE. Компиляция также помогает найти ошибки в программе, т.к. компиляция не будет выполнена, если в программе есть ошибки.

С понятием компиляции мы разобрались. А как теперь открыть скомпилировать написанную программу? Для этого в Arduino IDE предусмотрено несколько способов:

  • из пункта меню Скетч -> Проверить/Компилировать;

  • при помощи комбинации клавиш Ctrl + R;
  • из панели с часто используемыми командами

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

Выбор программатора:

Пункт меню Инструменты -> Программатор используется для выбора аппаратного программатора, если программирование модуля или микроконтроллера осуществляется не при помощи встроенного USB-последовательного соединения. Как правило, эта команда используется довольно редко, однако может пригодиться, например, при записи загрузчика в новый микроконтроллер.

Т.к. в модулях Arduino уже есть свой встроенный программатор, то в качестве программатора в меню Инструменты -> Программатор нужно оставить стандартный AVRISP mkII.

Запись загрузчика:

При помощи команды Инструменты -> Записать загрузчик в микроконтроллер можно записать загрузчик. При использовании Arduino этого не требуется, однако эта команда может пригодиться если Вы хотите прошивать обычный микроконтроллер фирмы Atmel (именно микроконтроллеры фирмы Atmel стоят в модулях Arduino и как правило, они продаются без встроенного загрузчика) аналогично Arduino. Если Вы хотите разобраться с этим, рекомендуем прочесть этот урок .

Загрузка программы:

Теперь, когда почти со всеми элементами среды Arduino IDE мы разобрались, можно приступать к финальному этапу — загрузке программы в модуль Arduino.

Прежде чем загружать программу, нужно выбрать порт, к которому подключён Ваш модуль Arduino. Выбрать его можно в меню Инструменты -> Порт.

Это не обязательно должен быть COM5, как на рисунке. Имя порта у Вас, скорее всего, будет другим (COM3, COM 10 и т.д.).

Когда выбран соответствующий модуль Arduino, нужный порт, процессор и программатор, можно приступать к загрузке программы.

Для этого в Arduino IDE предусмотрено несколько способов:

  • при помощи комбинации клавиш Ctrl + U;
  • из панели с часто используемыми командами

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

Рекомендуем включить подробный вывод информации при компиляции и загрузке программы, это зачастую помогает выявить тип ошибки при компиляции или загрузке программы. Для этого в меню Файл -> Настройки установить соответствующие галочки.

Монитор последовательного порта:

Между Arduino и компьютером можно обмениваться данными через последовательный порт (он же интерфейс UART). Монитор последовательного порта может использоваться как для вывода отладочной информации от модуля Arduino, так и для других целей. Через него можно как отправлять данные в модуль Arduino, так и получать данные от него. Не забудьте выбрать порт, к которому подключён модуль Arduino, иначе монитор последовательного порта не откроется! При его открытии модуль Arduino перезагрузится!

Открыть окно монитора последовательного порта можно несколькими способами:

  • из пункта меню Инструменты -> Монитор порта;

  • при помощи комбинации клавиш Ctrl + Shift + M;
  • из панели с часто используемыми командами (в правом верхнем углу)

После открытия монитора последовательного порта появится следующее окошко:

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

Пример полного цикла разработки программы в Arduino IDE:

А теперь, дорогой читатель, давайте полностью пройдём все этапы разработки программы в Arduino IDE.

Начнём мы не со стандартного мигания светодиодом, а с классического примера из программирования — вывода на экран «Hello World!».

Запускаем Arduino IDE

Откроется следующее окошко:

Ждём открытия среды. Когда она открылась, создаём новую программу путём нажатия на комбинацию клавиш Ctrl + N.

Теперь давайте сохраним эту программу под именем Hello_World, для этого нажимаем на комбинацию клавиш Ctrl + S, вводим путь, куда сохраним программу и её имя.

В указанной директории появится папка с программой Hello_World.

Теперь давайте напишем сам код. Мы хотим с периодичностью в 5 секунд выводить сообщение Hello World! на экран, т.е. в монитор последовательного порта. Никаких сторонних библиотек для этого нам не понадобится. Скопируйте следующий код в IDE.

Текст программы:

Arduino программатор

Как прошить чип Atmega328 или Atmega168 без программатора? Для этого мы можем воспользоваться платой Arduino UNO.

И так давайте по порядку.

Для начала нам нужно загрузить скетч в наш «будущий программатор» и подготовить его для дальнейших действий.

Для этого в Arduino IDE открываем меню Файл -> Образцы -> ArduinoISP, и зальем его в Arduino UNO.

После этого нужно выбрать во вкладке Инструменты, тип платы поддерживаемой процессоры Atmega328 или Atmega168, ведь мы именно его и хотим прошить.

Ну и далее мы выбираем тип процессора который будем программировать. Я к примеру остановил выбор на Atmega328.

В этой же вкладке тип программатора выбираем AVR ISP. То есть наша плата прошитая скетчем ArduinoISP по сути делает нашу UNO программатором ISP.

Смотря на сервис мануал нашего подопытного процессора, нам надо подпаять его к нашему программатору. К примеру типоразмер TQFP32 на Atmega328 и Atmega168 одинаковы.

И глядя на верхнюю схему, подключаем наш процессор к нашему новоиспеченному программатору по нижеследующей схеме.

Ну и дальше жмем на Записать загрузчик. Arduino IDE сделает все остальное за вас. То есть установит нужные фьюзы и запишет загрузчик.

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

Далее нам нужно залить скетч в наш прошитый загрузчиком процессор. К примеру зальем простой скетч «blink», поморгаем лампочкой.

В Arduino IDE выбираем Файл -> Образцы -> Basics -> Blink. И вот самое главное: Заливать нужно не так как мы обычно заливаем скетчи, не кнопкой Вгрузить.

Заливаем через Эскиз -> Загрузить через программатор. Вот тогда ваш скетч успешно запишется в наш чип!

Удачных Вам Arduino подделок!

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *