Решил прикрутить к своему девайсу самопрограммирование через RS232...
(RS232 уже реализован rx, tx, dsr)
Кто плавал подскажите как со стороны МК это более грамотно реализовать...
(Доки Атмела читал, но по данному вопросу другой информации не нашёл)
Какие грабли ждать?
Какой протокол (если есть готовый) использовать?
(или самому насочинять...)
Куда сместиться таблица прерываний?
(понимаю, что в зависимости от настройки фусов,
но када, сразу после бут области?)
По мимо всего прочего интересует вопрос сброса... ну предположим
по определённой команде программа перейдёт в бут область...
Как вариант - прерывания у меня отключены на время прогрева,
настройки бортовой (на МК) периферии и тестирования ОЗУ...
После этого проверить пришел какой либо заданный символ за это
время по рс 232? Если да - самопрограммирование... но вопрос
как реализовать после всего этого Софтовый резет?
Немного истории:
Когда я разрабатывал Book reader на AVR ATMega16
http://www.swordgreenline.narod.ru/BookReader.html
столкнулся с проблемой занятости SPI порта программатором.
Залил прошивку, вытащил программатор, воткнул в этот разъём ММС флэш,
перезапустил устройство, подтвердил вход (иначе был риск управлять
вместо флэши программатором), проверил нашёл ошибки (скорректировал
исходник), выключил устройство, вынул флэшку, воткнул программатор
и т.д. муторно и долго...
Теперь хочу сделать девайс на Mega32 с периферией:
SPI MMC флэш
RS232
LPT(мастер) на основной плате для подключения "стандартной" комповой периферии.
и 4х битная шина дисплея с МК опроса АТ клавиатуры на
вспомогательной...
и что бы
1) ускорить прошивку девайса (через LPT очень медленно)
2) не заниматься передёргиванием то флэши, то программатора в один SPI
хотелось бы прикрутить самопрограммирование...