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

 
 
> bootloader avr, вопрос по алгоритму использования bootloader
kostik2
сообщение Jun 24 2009, 07:15
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 61
Регистрация: 16-02-06
Пользователь №: 14 375



заинтересовался проблемой самопрограммирования меги.
нашел в iccv7avr\examples.avr\appnote109 код для него.

но вот никак не могу уместить в голове как же им все атки воспльзоваться.

void main(void)
{
void (*funcptr)( void ) = 0x0000; // Set up function pointer

if (PROGMODE) //If PROGPIN is pulled low: programmingmode.
{
...код для загрузчика
}
else
{
funcptr(); // Jump to Reset vector 0x0000 in Application Section
}

а где код основной проги поместить ?
как в контроллер записать только в область загрузчика ?
если я правильно понимаю то вот этот ****.hex должен быть записан в область загр-ка, первоначально,
затем надо отдельно запрограммировать код что-ли или как ?
у меня ICC_AVR пользуюсь AVR_ISP программатором.

мне вот не совсем понятен механизм (т.е поорядок действий для работы с bootloadrom)

помогите разобраться плиз.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
ataradov
сообщение Jun 24 2009, 07:59
Сообщение #2


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

Группа: Участник
Сообщений: 1 014
Регистрация: 8-01-07
Из: San Jose, CA
Пользователь №: 24 202



Нигде не нужно размещать. Компилируешь этот код, записываешь его программатором в мегу. Потом компилируешь программу как обычно (со своей main(), как будто нет никакого бутлоадера). Ну и зажимашь PROGPIN в 0 и делаешь ресет контроллера. Он при этом перейдет в режим программирования. И скомпилированную программу передаешь через тот интерфейс, через который ее ждет бутлоадер. Естественно формат бинарника и ожидаемый бутлоадером должны совпадать.

Сообщение отредактировал Taradov Alexander - Jun 24 2009, 07:59
Go to the top of the page
 
+Quote Post



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

 


RSS Текстовая версия Сейчас: 29th June 2025 - 00:53
Рейтинг@Mail.ru


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