Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: AT91SAM9260 SIBERIA - нужен загрузчик
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > ARM
fvv
AT91SAM9260 плата Siberia, решил обойтись без линукса, подключился через JTAG ипользуя IAR 5.4, запустил монитор и UART- дело шло, но как дело дошло до автономного запуска после подачи питания - нашла коса на камень. Загрузчик bootstrap который шел вместе с платой никак не хочет загружать мою программу, начал разбираться и понял что это мне не посилам, я не понимаю как размещать мой код чтобы загрузчик его загрузил и запустил. Попытки разобраться с атмеловским примером загрузчика (проект для IAR) - безуспешны - копилируется успешно, но что он делает непонятно, при запуске отладки после какихто действий - улетает в аборт хендлер.
Помогите пожалуста, может у кого есть загрузчик с обяснениями.
Jury093
Цитата(fvv @ Jul 18 2013, 13:51) *
AT91SAM9260 плата Siberia, решил обойтись без линукса, подключился через JTAG ипользуя IAR 5.4, запустил монитор и UART- дело шло, но как дело дошло до автономного запуска после подачи питания - нашла коса на камень. Загрузчик bootstrap который шел вместе с платой никак не хочет загружать мою программу, начал разбираться и понял что это мне не посилам, я не понимаю как размещать мой код чтобы загрузчик его загрузил и запустил.

если я правильно помню идеологию - ваш бутстрап после старта ищет жестко прописанный внешний флеш (SerialFlash или NAND), откуда считывает бинарную область и отдает туда управление. обычно туда кладут u-boot.. прошиваете туда свой "восход солнца вручную" с примитивным маханием пином или выводом в dbgu и контролируете результат..
при наличие исходников "Загрузчик bootstrap который шел вместе с платой" смотрите откуда, куда и сколько грузится..
кстати, у первичного бутлоадера есть ограничитель размера
fvv
подобие исходников есть, но они под GCC, нечем компилировать. Об 4кБ я уже понял. Проекту бутлодадера для IAR не хватает памяти для dbgu. Хотелось бы готового решения.
Jury093
Цитата(fvv @ Jul 18 2013, 15:28) *
подобие исходников есть, но они под GCC, нечем компилировать. Об 4кБ я уже понял. Проекту бутлодадера для IAR не хватает памяти для dbgu. Хотелось бы готового решения.

ну допустим исходники бутстрапа для 9260-evm включены в пакет типа:
http://www.atmel.com/Images/at91sam9260-ek.zip
там для IAR, GNU и KEIL
у вас плата "сибирь" - что там отличается от -evm, имхо, проще списаться с автором платы или поискать фанатов

для компилляции сорцов под GCC можно поставить на виндюки что-то типа VmWare (~полчаса на установку) и под нее засетапить любой дистрибут (еще ~полчаса), ну или грузануться с подходящего LiveCD..

Цитата
Проекту бутлодадера для IAR не хватает памяти для dbgu

там можно чуть повыкидывать лишнего (хоть работу с флешом) и вставить вывод отладочного "му" - что будет изначать успешный запуск стендалоне..
fvv
похоже что мои действия " на ощупь" на 4й день увенчались успехом, - в проекте для IAR надо было в дефайнах препроцессора в настройка проекта указать AT45_SLOT_B вместо AT45_SLOT_A и тут же задается адрес по которуму надо грузить программу, было FROM_ADDR=0x8400, пока не знаю почему сделан этот сдвиг но записав программу SAM-BA -й с удивление обнаружил успех. Потом изменил на FROM_ADDR=0x8000, перезалил и убедился что действительно все работает.
Спасибо за подсказки.

Теперь еще надо разобраться как запустить вен не на 100МГц а на 180МГц, так как мои исправления в коде при отладке отменяются средой разработки.
Jury093
Цитата(fvv @ Jul 18 2013, 20:39) *
похоже что мои действия " на ощупь" на 4й день увенчались успехом, - в проекте для IAR надо было в дефайнах препроцессора в настройка проекта указать AT45_SLOT_B вместо AT45_SLOT_A и тут же задается адрес по которуму надо грузить программу, было FROM_ADDR=0x8400, пока не знаю почему сделан этот сдвиг но записав программу SAM-BA -й с удивление обнаружил успех. Потом изменил на FROM_ADDR=0x8000, перезалил и убедился что действительно все работает.
Спасибо за подсказки.

ну вот, уже теплее и дальше будет веселее.. самое трудное - нащупать первые шаги в настройках, потом с консольной отладкой все будет заметно проще..

Цитата
Теперь еще надо разобраться как запустить вен не на 100МГц а на 180МГц, так как мои исправления в коде при отладке отменяются средой разработки.

не очень понял что такое "вен", но если это АРМ, то внимательно смотрите настройки блока PLL, и после выхода на 180 тщательно протестируйте память..
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.