Протокол программирования Arduino
- Войдите на сайт для отправки комментариев
Сб, 04/11/2017 - 02:05
Вот интересно, разбирал кто-нибудь протокол программирования? Нужно для обновления прошивки удаленного устройства. Представляю так, есть рабочая плата Arduino, а есть вспомогательная. На вспомогательную пришла новая прошивка по какому-то каналу связи и он обновляет прошивку на Arduino, понятно что нужно подать сигнал Reset, по TTL подать некоторые команды, думаю достаточно простые (иначе зачем нужен загузчик?) и прошивка будет обновлена.
Что-то описания или статей не нашел по теме.
Как вариант то же самое можно делать по SPI интерфейсу, но там нужно похоже на более низком уровне с микроконтроллером работать.
Нашел для SPI подробно и наглядно
https://habrahabr.ru/post/152052/
Я так понял команда стирания стирает и загрузчик и EEPROM? Или этих команд много и можно выборочно стирать. Ардуино же сохраняет загрузчик ))
Ну и тут подробнее по программированию через SPI, Serial Programming Algorithm раздел
http://www.atmel.com/Images/Atmel-8159-8-bit-AVR-microcontroller-ATmega8A_datasheet.pdf
Но опять же там слижком низкий уровень и без примеров.
Добавлю, нашел тут аналогичные вопросы
http://forum.arduino.cc/index.php?topic=36774.0
The Arduino bootloader uses the STK500 (original, not version II) protocol: http://www.atmel.com/dyn/resources/prod_documents/doc2525.pdf. The uploading is handled by uisp.
По ссылке описание протокола. Ардуина использует STK500 протокол...
Ну вот видите, можете и сами все найти если захотите. Вообще для таких целей используется загрузчик самописный или берется готовый, коих великое множество.
А есть у кого бутлоадер для прошивки по Rs485? Я не смог чето найти. Вернее нашел в одном месте, но сайт не открылся.
А какая разница RS485 или RS232, для бутлоадера то ?
А какая разница RS485 или RS232, для бутлоадера то ?
для лоадера - никакой, а ползателю - можно на расстоянии до 1200 метров одновременно шить до 256 дуин.
О_О
точно - ОДНОВРЕМЕННО?
Если игнорировать ответы от микроконтроллеров только.