Как загрузить HEX-файл в arduino
Vložit
- čas přidán 20. 06. 2019
- ""Если нет исходников, а есть готовая прошивка. Как ее загрузить через USB без программатора. Пару способов на примере arduino nano.
1 способ. с использованием avrdude из комплекта arduino IDE.
- в отдельную папку копируем нех файл,
два файла : avrdude.exe и libusb0.dll
из C:\Program Files (x86)\Arduino\hardware\tools\avr\bin
и файл avrdude.conf
из C:\Program Files (x86)\Arduino\hardware\tools\avr\etc
- запускаем cmd, переходим в папку с файлами, и запускаем команду:
avrdude -v -patmega328p -c arduino -P com10 -b 57600 -D -U flash:w:"girlanda.hex":i
Исправив "ком-порт" и имя hex-файла
Уточнение из комментариев:
"возможно нужно сменить на 115200. Сработало только на этой скорости "
2 способ:
используем одну из многих программ-загрузчиков. например
gcUploader
www.getchip.net/posts/136-gc-u...
ардуино Nano 3.0 megabonus.com/y/41zfh - Věda a technologie
СПАСИБО ВАМ БОЛЬШОЕ!!
я только изменил скорость передачи на 115200 для Arduino UNO
Спасибо за видео. По нескольким прогам пытался hex на нано загрузить, никак не получалось. Не конектится, нет синхронизации. По первому варианту также, пока 115200 не поставил, не получалось. Понял, что для Ардуино нано нужна эта скорость.
круто, спасибо,
Как обновить бутлоадер? Где его взять? этот метод прокатит? Я так понял затирается загрузчик при этом?
Спасибо!🙂
Сначала не шилась
Писала: ser_open(): can't set com-state for "\\.\com6"
Запустил Arduino IDE
и прошил НАНО скетчем:
#include
void setup() { for (int i = 0 ; i < 512 ; i++) {EEPROM.write(i, 255);}}
void loop() {}
Потом, не выключая Arduino IDE - прошил по Вашей рекомендации.
И прошился HEX :) Ура!
Другими прогами на Дудке не шилась.
Странно как то.
Спасибо!
Хороший способ. :)
Спасибо за способ. Возможно кому-то пригодится.
Предельно ясно и понятно. спасибо
Спасибо.
В Type не определяется ардуинка что делать?
Эти способы подойдут для файлов с расширением .eep ?
eep это дамп EEPROM, т.е. памяти устройства. Методы подойдут, только нужно с другими ключами запускать. Точно сказать не могу с какими, на память не помню.
помогите прошить ардуину, не получается...
Здравствуйте, спасибо за видео очень понятно все объясняете. У меня вопрос на который пока не могу ответ найти: а если есть HEX файл и охота прошивку немного подправить возможно ли из готового файла прошивки декомпелировать исходный код. И вообще реально ли считывать прошивки с устройств и потом разбираться в них и изучать как они устроены.
Если говорить про AVR то там можно поставить защиту от считывания прошивки. к ардуино это вряд ли относится. т.е. там там тоже AVR но вряд ли кто-то будет ставить защиту.
Т.е. считать можно, но получим двоичный код. В лучшем случае его можно будет декомпилировать до ассемблера. По крайней мере так было раньше. возможно сейчас что-то по другому, и можно декомпилировать до более высокого языка, но я про такое не слышал. С другой стороны мне это не требовалось давно, поэтому может и не слышал.
I realize Im kinda off topic but do anybody know a good website to watch newly released movies online?
@Wesley Alessandro I dunno atm I've been using Flixportal. just search on google for it:P -stetson
@Stetson Dayton thanks, I signed up and it seems like they got a lot of movies there :) I really appreciate it!
@Wesley Alessandro no problem xD
Добрый день. А если нету LPT порта, но при этом необходимо загрузить HEX-файл в attiny13, возможно это сделать через ардуино?
возможно, но я никогда не пробовал. Вообще я пользуюсь нормальными USB программаторами, поэтому по экзотическим способам опыта не много. не смогу тут подсказать.
@@dimaespirans8547 Понял. У меня вообще мало опыта в этом. Просто думал если с ардуино делается программатор, то возможно как то HEX загрузить на attiny13. Хотел собрать часы на этом мк и семисегментном индикаторе. Схему могу подключить а вот с программой у меня пока сложно(не разбираюсь в написании скетчей). Спасибо за ответ.
@@user-on5bz3rk4s да именно из ардуино делается программатор и грузится через неё НЕХ. Именно так и делают на сколько я знаю..
@@dimaespirans8547 Спасибо. Буду разбираться.
Пожалуйста, добавьте в описание инфу, что скорость возможно нужно сменить на 115200. Сработало только на этой скорости (на самом деле через gcUploader выбрал uno вместо nano, но на первом способе тоже потом попробовал с этой скорость и тогда сработало).
Добавил. Спасибо за комментарий.
Добрый день. А как указывать процессор от esp32? не подскажете?
Добрый день. Я таким способом в 32 не пробовал заливать. Это нужно читать документацию к avrdude , если она вообще поддерживает работу с ESP. Но вообще для ESP есть другие "заливальшики".
@@dimaespirans8547 спасибо за направление.
Здравствуйте а когда выложите метод через интерфейс считать hex file.?
К сожалению наверное уже не выложу. Вся эта тема умерла со старым компом. Вообще я этими методами уже давно не пользуюсь. Выкладывал по просьбе ребят которые хотели узнать как готовую прошивку без исходников залить в ардуинку. По сути перевел, постарой памяти, то чего полно в сети, но по чему то "не понятно" в картинки.
В Ардуино Иде встроена АВР дуде или дудка как ее называют так вот она и шьёт контрОллер. Но можно использовать графический фейс синапрог, и есть ещё подобные но шьёт все равно дудка
в ардуино IDE встроена. Только в этом IDE нет возможности указать для загрузки готовый hex файл. По крайней мере раньше не было. Как сейчас не знаю, я этой ide не пользуюсь.
Спасибо за ценную информацию. А как сам hex фаил из arduino вытащить?
Из командной строки можно прочитать память выполнив команду: avrdude -v -patmega328p -c arduino -P com4 -b 57600 -D -U flash:r:"flash.hex":i Отличия в конце после -U. Ключ там нужно указать r и имя файла куда записать прочтенное. Есть еще метод тоже самое с помощью интерфейса а не через командную строчку. Наверное чуть позже добавлю эту инфу к видео.
@@dimaespirans8547 спасибо за ответ
Всем привет. Кто знает как скопировать загруженный скетч С Arduino на arduino
не работают методы то
Не могу понять где вы файл с описанием вытащили txt я его у себя не вижу
речь про файлик ttt.txt ? это мой личный файлик. я туда шпаргалку написал
@@dimaespirans8547 всё понятно. Прошил вторым вариантом. Схему досабираю посмотрю как заработает.
@@dimaespirans8547 а где Вы взяли информацию из этой шпаргалки?
@@user-kq7sh3oj3m если речь про командную строку запуска avrdude то взята их описания к этой самой avrdude
а что за программатор ? на Алике есть?
конкретно этот программатор клон AVRISP mkII
aliexpress.ru/item/32732955170.html?spm=a2g0s.9042311.0.0.264d33ed2l35D7&_ga=2.213682833.446396693.1611226951-297238417.1578301155&sku_id=61407752244
Подскажите пожалуйста, как как скачать скетч из arduino и прочитать его ?
Скачать можно только двоичный файл, т.е. уже откомпилированный скетч. Как скачать есть в комментах ранее.
@@dimaespirans8547 Этот двоичный код можно декомпилировать что бы прочитать сам скетч ?
@@pismopisal2367 до уровня асемблера думаю можно. до уровня скетча врядли
Тость если записать в скетче информацию. И записать этот скетч в arduino. Прочитать информацию невозможно ?
@@pismopisal2367 какую именно информацию? Если в скетче где-то прописан пароль в явном виде, как переменная, то в двоичном файле он тоже есть, но в виде шестнадчетиричных чисел. найти его при желании можно. Или речь идет чтобы взять шестнадцетиричный код и восстановить его до уровня исходника. т.е. как сам скетч выглядел до компиляции? со всеми IF()ELSE serial.print..... и т.п. До такого уровня не востановите.
Дима, ты бывалый прошиватель, спрошу здесь, хотя вопрос про ip-камеры. У меня есть камерка с али, она неплохо работает, но у нее какая-то пещерная прошивка, не все менеджеры и просмотрщики её обнаруживают и многие настройки недоступны. На satvision.ru есть прошивки для точно таких же камер, но с другим шильдиком. В камерах одинаковое железо ( и процессор и матрица). Прошивка на тех камерах очень красивая) Чё скажешь?
К сожаление прям так с ходу ничего не скажу. Камеры не прошивал ни разу и с чем там можно столкнуться не знаю. А просто "теоретически можно, попробуй" не мой метод. Я даже порекомендовать не могу никого, кто бы мог помочь. Не знаю таких. Так что к сожалению, не в этот раз.
@@dimaespirans8547 ок, не верю, но - спасибо😁. Прислать камеру, будешь ковыряться, выложишь ролик???
Спасибо всё понятно а возможно ли считать hex из arduino?
чуть ниже есть ответ и на этот вопросик.
Из командной строки можно прочитать память выполнив команду: avrdude -v -patmega328p -c arduino -P com4 -b 57600 -D -U flash:r:"flash.hex":i Отличия в конце после -U. Ключ там нужно указать r и имя файла куда записать прочтенное.
@@dimaespirans8547 Дмитрий добрый день никак не могу считать hex файл из arduino пробую по вашей инструкции не получается у меня atmega 168 в командной строке надо переписать ещё вопрос в командной строке название hex файлов в кавычках или без?
@@user-vashahov имя файла в кавычках. для 168 атмеги скорее всего нужно поменять параметр
-patmega328p
На какой имено параметр точно не скажу. если avrdude взято из ардуины, то там могут быть свои параметры. А стандартные параметры и вообще как работать с avrdude можно вот тут посмотреть ph0en1x.net/77-avrdude-full-howto-samples-options-gui-linux.html
в принципе там все есть и параметры и примерчики.
ЗЫ. считываете именно с ардуинки? или просто с атмеги? просто просто с атмеги там по другому, там нет загрузчика ардуиновского через который все записывается.считывается. и просто атмега может быть запросто прошита защитой от считывания. В ардуинке врядли такое прошьет, но тоже можно.
HEX можно считать из ардуино только если использовать программатор (например usbasp через iscp разьем) плюс к этому бит защиты не должен быть установлен. Считать hex через usb невозможно ни в каком случае, т.к. у загрузчика нет функции выгрузки кода из flash потому что это идет вразрез с безопастностью кода
Автор что, где, когда случайно не ты ведешь? Голос один в один !
не-а. не я .
Понятно и в общем то легко прошить но здесь ничего изменить нельзя даже количество светодиодов. в ардуино иде всё расписано и всё можно поменять гораздо гибкая программа.
В ардуино-ide у Вас исходник, из которого потом этот самый hex файл получается. Многие выкладывая исходник (что бы кто-то что-то поменял", потом обнаруживают эти же исходники под другим "авторством". Поэтому часто есть только hex/
Видео как раз про то, как загрузить этот hex файл.
Ардуино-ide этому не найчит. там и возможности такой нет. А методы "доардуиновской" эпохи "теряются" и забываются к сожалению.
@@dimaespirans8547 пытался загрузить через этот загрузчик что то не получается 2или 3 строки повторяются и всё. А по поводу авторства на ютубе или в открытом доступе скетч или его нет тогда коммерческий проект тогда естественно ни лайков ни подписок не получают.
@@gennadinemo7827 Коммерческий проект от слово коммерция, когда доход есть. А здесь элементарное сохранение авторских прав.
Еще раз, видео не про конкретный HEX, а про способ его загрузки.
Если Вас интересует конкретная программа для гирлянды, то их много в сети, в иде исходников в том числе. Правда 100 человек расказывают как правило про несколько программ всего, одни и теже, что подтверждает мои слова в предедущим ответе.
@@dimaespirans8547 у меня есть несколько для гирлянды на ардуино в том числе и Гайвера у него все проекты открытые и бесплатные.
@@gennadinemo7827 У меня тоже бесплатные 😊, но интелектуальную собственность берегу. А Гайвер человек хороший, занимается популяризацией в том числе и ардуино. Его проекты направлены на "создать заинтересованность", поэтому довольно простые, расчитанные на то, чтобы подтолкнуть к дальнейшему обучению и самомстоятельному развитию проектов. А не для простого копирования. У меня тоже такие есть, обучающие с исходным кодом. и не только на ардуино.
Автор, больше описания к параметрам пожалуйста. Что такое "-с arduino".
/*
А как сам hex фаил из arduino вытащить?
/*
---- > 3dtoday.ru/blogs/craveg/avrdude-how-to-download-zabekapit-and-pour-again-the-firmware/
В сети не мало описаний для Avrdude. Вот тут, например, достаточно подробное описание ph0en1x.net/77-avrdude-full-howto-samples-options-gui-linux.html
параметр -с arduino указывает на "тип программатора" который нужно применять
hex можно вытащить например командой: avrdude -v -patmega328p -c arduino -P com4 -b 57600 -D -U flash:r:"flash.hex":i
В конце, после ключа r указать имя файла куда записать прочтенное.