реклама на сайте
подробности

 
 
2 страниц V   1 2 >  
Reply to this topicStart new topic
> Какой Bootloader лучше?, Поделитесь опытом.
GSK
сообщение Apr 21 2008, 09:16
Сообщение #1


Частый гость
**

Группа: Свой
Сообщений: 157
Регистрация: 1-03-06
Пользователь №: 14 835



Приветствую.

Поделитьесь пожалуйста опытом использывания Bootloader-ов.
Какой выбрать?
Go to the top of the page
 
+Quote Post
Igor26
сообщение Apr 21 2008, 09:38
Сообщение #2


Знающий
****

Группа: Свой
Сообщений: 521
Регистрация: 10-02-05
Пользователь №: 2 544



Берем апнот AVR109 и рихтуем под себя. Это и будет самый лучший BootLoader :-)
Go to the top of the page
 
+Quote Post
blackbit
сообщение Apr 21 2008, 09:46
Сообщение #3


Частый гость
**

Группа: Новичок
Сообщений: 100
Регистрация: 5-03-07
Пользователь №: 25 892



Лучший bootloader - свой, написанный с нуля.

Сообщение отредактировал blackbit - Apr 21 2008, 09:46
Go to the top of the page
 
+Quote Post
GSK
сообщение Apr 21 2008, 10:02
Сообщение #4


Частый гость
**

Группа: Свой
Сообщений: 157
Регистрация: 1-03-06
Пользователь №: 14 835



Спасибо за очень содержательные ответы.
Что б дальнейшем ограничиться от таких ответов, уточню:
А из уже готовых, какой лучше?
Go to the top of the page
 
+Quote Post
Baser
сообщение Apr 21 2008, 10:49
Сообщение #5


Просто Che
*****

Группа: Свой
Сообщений: 1 567
Регистрация: 22-05-07
Из: ExUSSR
Пользователь №: 27 881



Цитата(GSK @ Apr 21 2008, 13:02) *
Спасибо за очень содержательные ответы.

Какой вопрос - такие и ответы smile.gif
Или вы думаете, что люди перед применением пробуют по 10 бутлоадеров?

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

Вы же свои требования не написали...
Я вот взял AN231 и применил - работает cool.gif
Go to the top of the page
 
+Quote Post
Igor26
сообщение Apr 21 2008, 11:14
Сообщение #6


Знающий
****

Группа: Свой
Сообщений: 521
Регистрация: 10-02-05
Пользователь №: 2 544



Цитата
Спасибо за очень содержательные ответы.

Не понял Вашего сарказма. Я же сказал, что использую переделанный под другой протокол AVR109. Ничего сложного в нем нет.
Go to the top of the page
 
+Quote Post
KRS
сообщение Apr 21 2008, 11:42
Сообщение #7


Профессионал
*****

Группа: Модераторы
Сообщений: 1 951
Регистрация: 27-08-04
Из: Санкт-Петербург
Пользователь №: 555



А требования какие?
IMHO лучший прямо в чипе уже есть wink.gif через SPI (serial programming)
Go to the top of the page
 
+Quote Post
GSK
сообщение Apr 21 2008, 11:56
Сообщение #8


Частый гость
**

Группа: Свой
Сообщений: 157
Регистрация: 1-03-06
Пользователь №: 14 835



Прошу прощения если кого-то обидел.
Просто хотелось узнать мнение людей, кто уже разбирался с загрузчиками.
Может я невнятно выразился, но меня интересует уже готовая связка из программы на компьютере и программы в микроконтроллере для загрузки в его память программы пользователя.
Согласитесь, что все загрузчики разные. У некоторых есть оконный интерфейс, некоторые работают из командной строки. Неготорые быстрые, другие неочень. Одни занимают много места, другие мало и т.д.

Так который выдрать? Чтоб иметь удобную часть на компьютере и маленький и шустрый код в микроконтроллере.
Go to the top of the page
 
+Quote Post
proba
сообщение Apr 21 2008, 11:59
Сообщение #9


Местный
***

Группа: Участник
Сообщений: 358
Регистрация: 29-05-05
Пользователь №: 5 526



http://avrubd.googlepages.com/avrub.htm
Go to the top of the page
 
+Quote Post
defunct
сообщение Apr 21 2008, 12:08
Сообщение #10


кекс
******

Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326



Цитата(GSK @ Apr 21 2008, 13:56) *
Просто хотелось узнать мнение людей, кто уже разбирался с загрузчиками.
...
Так который выдрать? Чтоб иметь удобную часть на компьютере и маленький и шустрый код в микроконтроллере.

Написать самому и лоадер и ПО к PC. Прибавит опыта, и добавит уважения к труду других, не позволите себе потом говорить "который выдрать".
Go to the top of the page
 
+Quote Post
Палыч
сообщение Apr 21 2008, 12:14
Сообщение #11


Гуру
******

Группа: Свой
Сообщений: 2 399
Регистрация: 10-05-06
Из: г. Новочеркасск
Пользователь №: 16 954



Цитата(GSK @ Apr 21 2008, 14:56) *
...меня интересует уже готовая связка из программы на компьютере и программы в микроконтроллере для загрузки в его память программы пользователя.Согласитесь, что все загрузчики разные. У некоторых есть оконный интерфейс, некоторые работают из командной строки. Неготорые быстрые, другие неочень. Одни занимают много места, другие мало и т.д.
Вы так и не огласили: зачем Вам потребовался свой загрузчик? Грузить в МК программу? - Любой SPI программатор... Какие цели Вы преследуете поместив в МК загрузчик? Чем точнее (полнее) вопрос - точнее ответ...
Go to the top of the page
 
+Quote Post
GSK
сообщение Apr 21 2008, 15:33
Сообщение #12


Частый гость
**

Группа: Свой
Сообщений: 157
Регистрация: 1-03-06
Пользователь №: 14 835



Загрузчик нужен для загрузки программы в микрогонтроллер по UART. (но чесно говоря предпологал это само собой разумеещееся)


P.S.
"который выдрать"
Это конечно описка. Читать - "выбрать"
А "defunct" хочу в томже ключе посоветавать не использовать "чужие" компиляторы, линковщики, програматоры, да операционную систему для компьютера написать самому.
Цитата
Это прибавит опыта, и добавит уважения к труду других

Таки "умозаключения" всегда раздражают! Если нет ответа - лучше промолчать, а не заниматься демогогией.
Для сведения: многие фирмы выпускают загрузчики и при этом не требуют писать свой!
Go to the top of the page
 
+Quote Post
bodja74
сообщение Apr 21 2008, 17:52
Сообщение #13


Знающий
****

Группа: Свой
Сообщений: 543
Регистрация: 22-10-05
Пользователь №: 9 984



Самый лучший загрузчик в мире - это конечно же мой biggrin.gif biggrin.gif biggrin.gif
ProgLoader.nm.ru

Ну а целом ,трудно не согласиться ,что буты уже затачиваются уже под свою специфику ,
скорость ,камень (не обязательно АВР) ,шифрование ,драйвер и протокол для прошивки через радиоканал и т.д.
Тоесть бут - это такая вещь ,где можно проявить все свое воображение ,при перешивке камня smile.gif
Go to the top of the page
 
+Quote Post
Dog Pawlowa
сообщение Apr 21 2008, 18:04
Сообщение #14


Гуру
******

Группа: Свой
Сообщений: 2 702
Регистрация: 14-07-06
Пользователь №: 18 823



Цитата(GSK @ Apr 21 2008, 18:33) *
Таки "умозаключения" всегда раздражают! Если нет ответа - лучше промолчать, а не заниматься демогогией.
Для сведения: многие фирмы выпускают загрузчики и при этом не требуют писать свой!

Мало ли кого что раздражает. Меня вот Ваши вопросы раздражают - не огласив критерии, спрашивать "лучший" загрузчик у народа, чтобы потом обвинить в демагогии?
Мне загрузчик студент написал за три дня, включая часть на PC, под сетевую загрузку, под разные протоколы. Ничего сложного нет, главное определиться, что нужно и зачем. Это у Вас и не получается, похоже.


--------------------
Уходя, оставьте свет...
Go to the top of the page
 
+Quote Post
defunct
сообщение Apr 21 2008, 19:41
Сообщение #15


кекс
******

Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326



Цитата(GSK @ Apr 21 2008, 17:33) *
Это конечно описка. Читать - "выбрать"

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

Ваш же текущий вопрос решается с помощью google
http://www.google.com.ua/search?hl=ru&...oader&meta=
читаете и выбираете то что больше подходит.

PS: талантом разгадывания опечаток не обладаю, ваш пост как прочитал так и понял ("выдрать", "содрать", "стырить"). ;>
Go to the top of the page
 
+Quote Post
GSK
сообщение Apr 22 2008, 03:02
Сообщение #16


Частый гость
**

Группа: Свой
Сообщений: 157
Регистрация: 1-03-06
Пользователь №: 14 835



Вопросы САМОСТОЯТЕЛЬНОГО написания не раз обсуждались в форуме. Плодить одинаковые темы нехочеться. Я вего лишь спросил о сравненией готовых (отлаженных и оптимизированых). Очень нехочеться спорить о том, что лучше, написанный самим за неделю или человеком, который этой темой занимаеться не один год.
Кстати о демогогии: во всё горло кричать "лучший это который написал САМ!!!" и дольше:
Цитата
Мне загрузчик студент написал ...

А на меня никто не работает! (шутка)
И еще ответы в стиле: "посмотри в гугле". Хороший ответ, универсальный. Подходит ко всем вопросам, только зачем тогда форум.....
А еще посмотреть можно в яндаксе, рамблере и т.д. (шутка)

Одно радует есть и результат:
http://avrubd.googlepages.com/avrub.htm
http://progloader.nm.ru/

Поэтому во избежание дальнейших споров немного перефразирую вопрос, не какой лучше, а кто какой знает.
А сравню сам.
Go to the top of the page
 
+Quote Post
Igor26
сообщение Apr 22 2008, 06:02
Сообщение #17


Знающий
****

Группа: Свой
Сообщений: 521
Регистрация: 10-02-05
Пользователь №: 2 544



Цитата
ProgLoader.nm.ru

Молодец! Хорошая работа! beer.gif
Go to the top of the page
 
+Quote Post
bodja74
сообщение Apr 22 2008, 17:23
Сообщение #18


Знающий
****

Группа: Свой
Сообщений: 543
Регистрация: 22-10-05
Пользователь №: 9 984



2Igor26
Спасибо,стараюсь когда есть настроение. yeah.gif

GSK
Вот еще ссылочка для вашей коллекции
http://www.microsyl.com/
раздел "megaload"

ЗЫ На мой взгляд Вы в самом начале неправильно поставили вопрос , с разнообразием бутов не густо ,что бы было из чего выбирать ,да и выглядело в целом на тип - "подайте-принесите" ,
вот и имеете разборки на хвосте smile3009.gif
Go to the top of the page
 
+Quote Post
galjoen
сообщение Apr 22 2008, 18:05
Сообщение #19


Знающий
****

Группа: Свой
Сообщений: 841
Регистрация: 10-05-07
Из: Чебоксары (Россия)
Пользователь №: 27 640



Цитата(Igor26 @ Apr 22 2008, 10:02) *
Молодец! Хорошая работа! beer.gif

Думаю насчёт защиты от копирования работа не очень хорошая. Это оттуда:
Цитата
Шифрование - производится шифрование прошивки по алгоритму Z=255-(X xor Y) исключающее ИЛИ с инверсией, расшифровка производится в программе загрузчика по обратному алгоритму X=(255-Z) xor Y
X- байт прошивки
Y- байт таблицы
Z- зашифрованый байт
Прошивка шифруется блоками по 256 байт,тоесть первым байтом с первым байтом таблицы,второй со вторым и т.д. ,начиная с 257-го байта прошивки опять берется первый байт из таблицы ,258-ой со вторым и т.д. Если компилятор генерирует свободную область памяти и заполняет ее значениями $FF или $00 ,и она не используется программой ,ее рекомендуется заполнить случайными значениями для более надежного шифрования. Если компилятор не генерирует свободную область памяти ,при компиляции следует в конце исходника добавить случайных данных чтобы размер прошивки был кратен 256.При соблюдении этих рекомендации прошивка будет зашифрована достаточно надежно.

Если во FLASH содержатся к.л. сообщения, или вообще что-либо выдаваемое наружу (в 95% применений это так), то такая защита ломается элементарно. Конечно это справедливо только в том случае, если основная программа не написана специальным "неломаемым" образом, но об этом тут ни слова.
Go to the top of the page
 
+Quote Post
defunct
сообщение Apr 22 2008, 20:09
Сообщение #20


кекс
******

Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326



Цитата(galjoen @ Apr 22 2008, 20:05) *
Думаю насчёт защиты от копирования работа не очень хорошая. Это оттуда:

Ну почему же, если следовать рекомендации и не давать повода получить 256-ти байтный ключ в явном виде, то сломать защиту будет весьма непросто.

Надеюсь прошив зашифрованную программу, бутлоадер не выдаст ее потом назад в расшифрованном виде. smile.gif
Go to the top of the page
 
+Quote Post
Aesthete Animus
сообщение Apr 23 2008, 00:20
Сообщение #21


Местный
***

Группа: Свой
Сообщений: 222
Регистрация: 9-06-07
Пользователь №: 28 317



Пусть мое сообщение опять не в тему, но не хочу плодить "лишнюю сущностей"... В общем тоже сейчас ковыряюсь с бутлоадером и пишу его на avr gcc... Все замечательно прошивается, но возникает глупый вопрос, что дальше, как выйти из бут области? Сделать простой джамп на адрес 0x0000? Но кто очистит стек? Какие в общем есть рекоммендации на этот счет?
Go to the top of the page
 
+Quote Post
IgorKossak
сообщение Apr 23 2008, 05:11
Сообщение #22


Шаман
******

Группа: Модераторы
Сообщений: 3 064
Регистрация: 30-06-04
Из: Киев, Украина
Пользователь №: 221



Цитата(Aesthete Animus @ Apr 23 2008, 03:20) *
... что дальше, как выйти из бут области? Сделать простой джамп на адрес 0x0000? Но кто очистит стек? Какие в общем есть рекоммендации на этот счет?

Основная программа, стартующая с адреса 0, это, как правило, совершенно самостоятельный проект. Его же c_startup и осуществит все необходимые настройки.
Go to the top of the page
 
+Quote Post
Igor26
сообщение Apr 23 2008, 05:37
Сообщение #23


Знающий
****

Группа: Свой
Сообщений: 521
Регистрация: 10-02-05
Пользователь №: 2 544



Цитата
Основная программа, стартующая с адреса 0, это, как правило, совершенно самостоятельный проект. Его же c_startup и осуществит все необходимые настройки.

Тоже самое будет и с джампом на бутлоадер из основной программы.
Go to the top of the page
 
+Quote Post
Aesthete Animus
сообщение Apr 23 2008, 23:01
Сообщение #24


Местный
***

Группа: Свой
Сообщений: 222
Регистрация: 9-06-07
Пользователь №: 28 317



Цитата(IgorKossak @ Apr 23 2008, 09:11) *
Основная программа, стартующая с адреса 0, это, как правило, совершенно самостоятельный проект. Его же c_startup и осуществит все необходимые настройки.

Спасибо за разъяснение smile.gif
Go to the top of the page
 
+Quote Post
GSK
сообщение Apr 24 2008, 04:13
Сообщение #25


Частый гость
**

Группа: Свой
Сообщений: 157
Регистрация: 1-03-06
Пользователь №: 14 835



Уважаемые.
Большая просьба, здесь обсуждать только достоинства и недостатки.
А проблемы типа "как сделать, чтобы .....", "....как выйти из бут области", "программа, стартующая с адреса 0000" и т.д. Тоесть технические вопросы касаемые написания бутов, обсуждать в других, специально созданых для этого темах!!!!!!!
Go to the top of the page
 
+Quote Post
galjoen
сообщение Apr 24 2008, 11:04
Сообщение #26


Знающий
****

Группа: Свой
Сообщений: 841
Регистрация: 10-05-07
Из: Чебоксары (Россия)
Пользователь №: 27 640



Цитата(defunct @ Apr 23 2008, 00:09) *
Ну почему же, если следовать рекомендации и не давать повода получить 256-ти байтный ключ в явном виде, то сломать защиту будет весьма непросто.

Надеюсь прошив зашифрованную программу, бутлоадер не выдаст ее потом назад в расшифрованном виде. smile.gif

Любая защита действует только до тех пор, пока взломщику не удаётся внедрить свой исполняемый код.
Часть ключа фактически уже известна т.к. в таблице прерываний естественно поставить команды rjmp (до 8 кБайт FLASH) или jmp ( >8 кБайт FLASH), а их коды известны. Но можно сломать и без использования этой уязвимости. На месте взломщика действуем так:
Предположим объём программы 8 кбайт, а объём сообщений, которые она выдаёт из FLASH и которые мы можем прочесть, 100 байт (символов). Тогда, изменяя по 1 байту через 100, мы за 80 раз добьёмся того, что сообщение изменится (кол-во допустимых перепрограммирований 10000). По теории вероятности это произойдёт на 40й раз. Когда это произойдёт мы фактически узнаем 100 байт ключа. Дезасемблировав по 100 байт из других страниц, наверняка найдём исполняемый код, который заменяем на наш.
Go to the top of the page
 
+Quote Post
dimka76
сообщение Apr 25 2008, 09:20
Сообщение #27


developer
****

Группа: Свой
Сообщений: 902
Регистрация: 12-04-06
Из: Казань
Пользователь №: 16 032



Вот загрузчик с протоколом STK500, можно прям из AVR Studio шить
Прикрепленные файлы
Прикрепленный файл  avr_stk500_IAR.rar ( 74.56 килобайт ) Кол-во скачиваний: 90
 


--------------------
Все может быть и быть все может, и лишь того не может быть-чего уж точно быть не может, хотя..и это может быть.
Go to the top of the page
 
+Quote Post
Flasher
сообщение Apr 25 2008, 10:30
Сообщение #28


Местный
***

Группа: Свой
Сообщений: 374
Регистрация: 6-09-05
Из: Тирасполь, Приднестровье
Пользователь №: 8 294



Смотря для чего нужен бутлодырь. Для обновления программ в готовых изделиях у заказчиков- пользуюсь модифицированным AES бутлодырем от атмеля. Изменил прогу для того чтобы бутлодырь запрашивал программирование и 1 секунду ждал ответа от программы апдейта. Дальше идет проверка крк и запуск программы или постоянный перезапуск бутлодыря. Из основной программы сделал команду сброса устройства. Таким образом можно без проблем программировать по радиоканалу. Все делается с помощью двух .bat файлов. Для других изделий применяю выведенный ISP разъем.
Go to the top of the page
 
+Quote Post
artemm
сообщение Jun 5 2008, 15:08
Сообщение #29


Частый гость
**

Группа: Свой
Сообщений: 80
Регистрация: 23-07-07
Из: Украина, г. Сумы
Пользователь №: 29 306



а накой такой бутлоадер нужен, если его первый раз нужно программатором зашивать? Что мешает и вдальнейшем пользоваться программатором??
Go to the top of the page
 
+Quote Post
Flasher
сообщение Jun 5 2008, 15:24
Сообщение #30


Местный
***

Группа: Свой
Сообщений: 374
Регистрация: 6-09-05
Из: Тирасполь, Приднестровье
Пользователь №: 8 294



Цитата(Flasher @ Apr 25 2008, 13:30) *
Смотря для чего нужен бутлодырь. Для обновления программ в готовых изделиях у заказчиков- пользуюсь модифицированным AES бутлодырем от атмеля. Изменил прогу для того чтобы бутлодырь запрашивал программирование и 1 секунду ждал ответа от программы апдейта. Дальше идет проверка крк и запуск программы или постоянный перезапуск бутлодыря. Из основной программы сделал команду сброса устройства. Таким образом можно без проблем программировать по радиоканалу. Все делается с помощью двух .bat файлов. Для других изделий применяю выведенный ISP разъем.


Совсем недавно выявил проблему в AES бутлодыре- при определенных объемах прошивки бутлодырь не правильно расшифровывает в мк последний блок. Из-за чего CRC вылетает с ошибкой. Ошибка вылазит очень редко- но становится не очень приятно- просто приходится менять размер прошивки.
Go to the top of the page
 
+Quote Post

2 страниц V   1 2 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 20th July 2025 - 03:57
Рейтинг@Mail.ru


Страница сгенерированна за 0.01654 секунд с 7
ELECTRONIX ©2004-2016