roboforum.ru

Технический форум по робототехнике.

Программатор встроенный

Программатор встроенный

GIGOLAS » 16 июн 2012, 14:19

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

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

Re: Программатор встроенный

legion » 16 июн 2012, 14:32

Можно взять любой AVR с In-System Programmable Flash, например мега16. Устройство-программатор на любом МК сможет залить на него новую прошивку УАРТом через bootloader.
А вообще вроде бутлоадер можно написать так, чтобы он сам забирал прошивку, например, с EEPROMки.

UPD:
http://easyelectronics.ru/avr-uchebnyj- ... adera.html
http://easyelectronics.ru/sozdanie-bootloadera.html

Re: Программатор встроенный

Angel71 » 16 июн 2012, 14:52

если кнопочкой будет ресет, то как вариант сделать через бутлоадер (аврки поддерживают самопрограммирование, но я не помню, есть ли лимит на размер бутлоадера). просто работа с картами памяти кушает много - кроме собственно работы с картой еще нужно много кода для поддержки файловой системы. для старта тут много полезного + в сети можно другие примеры поискать. а дальше что-то примерно так: загрузился бутлоадер, как-то посмотрел текущую версию прошивки, проверил, есть ли на карте более новая прошивка, если есть, проверил контрольную сумму и начал шить.
у мега16 епром 512байт, у мега2560 всего 4кбайта. т.е. хорошо подходит для хранения информации о версии прошивки, но не для хранения прошивки. кстати можно сделать карту памяти без файловой системы, это намного упростит задачу - нужно будет только продумать структуру данных.

Re: Программатор встроенный

legion » 16 июн 2012, 15:37

Я имел в виду внешнюю EEPROM микросхему, которая и будет представлять собой отдельное устройство класса "флешка с прошивкой".

Re: Программатор встроенный

GIGOLAS » 16 июн 2012, 17:32

Angel71 я так примерно и думал, но я думал там стоит отдельно модуль с авркой-програматор связанный только с основным контролером только для програмирования.

Я как думал, на флешке лежит сам исходник и файл с параметрами программируемого контролера. И исходя из них он просто тупо вливает прошивку в устройство. Грубо говоря программатор не с компом связан, а берет что нужно с флешки или другого носителя


Это как я пока думаю, а там фиг знает что в итоге выйдет :)

Re: Программатор встроенный

elmot » 16 июн 2012, 17:43

Штатная фича на плате stm32f4discovery. Можно перепрошиваться с обычной флешки. Сам не пробовал, но в стандартных примерах видел.

Re: Программатор встроенный

legion » 16 июн 2012, 17:49

Отдельно в робота контроллер-программатор встраивать не нужно. Достаточно обеспечить подключение к основному МК какого-нибудь носителя информации и запрограммировать бутлоадер. Основной МК будет сам себе программатор.

Re: Программатор встроенный

Romikgy » 16 июн 2012, 23:17

только одно ... если влезет в размер атмеги

Re: Программатор встроенный

elmot » 17 июн 2012, 01:43

Осспадя. Забудте это страшное слово. Возьмите stm и будет там и бутлоадер, и черт с рогами. И в память все влезет.

Re: Программатор встроенный

GIGOLAS » 17 июн 2012, 03:39

stm32f4discovery вкусненькая вешь, чет я смотрю засиделся на аврках:)


cron
Rambler\'s Top100 Mail.ru counter