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

 
 
> Вопросы по реализации бутлоадера, at91sam7s64, IAR5.41
mempfis_
сообщение Jul 29 2010, 08:28
Сообщение #1


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

Группа: Свой
Сообщений: 1 001
Регистрация: 27-06-06
Пользователь №: 18 409



Всем добрый день.
Стоит задача написать бутлоадер для at91sam7s64.
Есть несколько ламерских вопросов по этому поводу.

1. Правильно ли я понимаю что для ARM бутлоадер это обычная программа (в отличии от AVR) которая может начинаться с какого угодно адреса?
2. Чтобы иметь возможность прошить flash собственно подпрограммы прошивки flash должны находится в оперативной памяти?
3. Если п.1 верный то где во flash лучше располагать бутлоадер (в начале или в конце)?
4. Как быть со стартапом приложения? Если я в бутлоадере инициализирую стеки, тактовый генератор и т.д. то можно ли исключить стартап из приложения и просто вызвать main? Или лучше произвести сброс переферии и вызвать приложение со стартапом?
5. Достаточно ли будет выделить в flash сегмент и размещать в нём основную программу или в startup и LowLevelInit() нужно будет както дополнительно учитывать что в МК живёт ещё и бутлоадер?

Теперь мои соображения по поводу бутлоадера - поправте если гдето буду не прав:
- Проект бутлоадера - обычная программа - т.е. создаю в IAR5.41 проект, подключаю стартап и LowLevelInint() в которых инициализируются стеки, тактовый генератор, VIC и т.д.
- В main бутлоадера настраиваю всю необходимую мне переферию (PIT, PIO, USB и т.д.).
- Перехожу в основной цикл прораммы в котором ожидаю команды с usb-терминала.
- Если приходит команда прошивки flash - прошиваю нужную страницу памяти в секции приложения.
- Если приходит команда запуска приложения - вызываю main приложения (это если можно не вставлять startup и LowLevelInit()) или прыгаю на адрес с которого начинается основная программа.

Спасибо всем кто ответит.

P.S. Также буду благодарен ссылкам на какие-либо проекты бутлоадеров для sam7s.
P.P.S. С сайта atmel скачал какойто проект но он для ARM9 и довольно запутанный и непонятный...

Сообщение отредактировал mempfis_ - Jul 29 2010, 08:31
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- mempfis_   Вопросы по реализации бутлоадера   Jul 29 2010, 08:28
- - aaarrr   Цитата(mempfis_ @ Jul 29 2010, 12:28) 1. ...   Jul 29 2010, 08:40
|- - mempfis_   Спасибо за быстрый ответ. В целом начинает проясня...   Jul 29 2010, 08:53
|- - aaarrr   Цитата(mempfis_ @ Jul 29 2010, 12:53) Обо...   Jul 29 2010, 09:23
|- - mempfis_   ЦитатаПомимо стеков есть еще копирование секций, и...   Jul 29 2010, 09:31
|- - mempfis_   Дошёл до того момента когда бутлоадер вот-вот уже ...   Aug 12 2010, 08:04
|- - aaarrr   Цитата(mempfis_ @ Aug 12 2010, 12:04) Дос...   Aug 12 2010, 12:15
|- - mempfis_   Цитата(aaarrr @ Aug 12 2010, 15:15) На пе...   Aug 16 2010, 13:44
- - dimka76   Цитата(mempfis_ @ Jul 29 2010, 12:28) P.S...   Jul 29 2010, 08:57
|- - mempfis_   Цитата(dimka76 @ Jul 29 2010, 11:57) http...   Jul 29 2010, 08:59
- - sergeeff   Ну и если вы задумаете еще и на С++ постепенно пер...   Jul 29 2010, 11:13
- - Exeland   Я тоже занят написанием загрузчика. А как заставит...   Aug 16 2010, 10:18
|- - aaarrr   Цитата(Exeland @ Aug 16 2010, 14:18) Я то...   Aug 16 2010, 10:24
- - Exeland   Я с линкером не работал. Можете дать кусочек кода ...   Aug 16 2010, 10:27
|- - aaarrr   Цитата(Exeland @ Aug 16 2010, 14:27) Я с ...   Aug 16 2010, 11:10
|- - Wano   Цитата(Exeland @ Aug 16 2010, 13:27) Я с ...   Aug 16 2010, 15:06
- - Exeland   Поменял в Target Diolog адреса, грузится если pc=S...   Aug 17 2010, 06:16
|- - Wano   Цитата(Exeland @ Aug 17 2010, 09:16) Поме...   Aug 17 2010, 08:18
- - Exeland   Хотя нет все работает. Прыжок на ПО делаю так, е...   Aug 17 2010, 07:36
- - Exeland   Еще один вопрос. Необходимо разместить константы (...   Aug 17 2010, 09:42
|- - aaarrr   Цитата(Exeland @ Aug 17 2010, 13:42) Как ...   Aug 17 2010, 10:26
|- - Exeland   Цитата(aaarrr @ Aug 17 2010, 14:26) Можно...   Aug 19 2010, 05:41
|- - Wano   Цитата(Exeland @ Aug 19 2010, 08:41) Не м...   Aug 20 2010, 09:30
- - skripach   Цитата3. Не делать фиксированную область, а создат...   Aug 17 2010, 12:50
- - aaarrr   Думаю, восьми байт как раз достаточно. Если ...   Aug 17 2010, 12:57
- - skripach   ЦитатаЕсли "потолком" служил генератор п...   Aug 17 2010, 13:32
- - TU-104   Цитата(mempfis_ @ Aug 16 2010, 19:44) Сег...   Feb 19 2014, 11:57
- - TU-104   Добавил копирование первых 64 байт прошивки в нача...   Feb 20 2014, 04:39
- - ar__systems   Я расскажу как я делал. (1788) И приложение, и пр...   Feb 20 2014, 22:07
|- - toweroff   Цитата(ar__systems @ Feb 21 2014, 02:07) ...   Feb 20 2014, 22:10
|- - ar__systems   Цитата(toweroff @ Feb 20 2014, 17:10) а з...   Feb 21 2014, 01:06
|- - toweroff   Цитата(ar__systems @ Feb 21 2014, 05:06) ...   Feb 21 2014, 07:36
|- - ar__systems   так прерывания выключил, и все ок   Feb 21 2014, 17:03
|- - toweroff   Цитата(ar__systems @ Feb 21 2014, 21:03) ...   Feb 21 2014, 22:12
- - TU-104   Цитата(ar__systems @ Feb 21 2014, 04:07) ...   Feb 21 2014, 05:07
- - RabidRabbit   Как было сделано у меня (AT91SAM7S32): бутлоадер (...   Feb 21 2014, 06:25
- - TU-104   а все-таки подскажите, как запустить приложение с ...   Feb 23 2014, 17:39


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

 


RSS Текстовая версия Сейчас: 26th August 2025 - 22:24
Рейтинг@Mail.ru


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