Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: flashloader в at91sam7x
Форум разработчиков электроники ELECTRONIX.ru > Сайт и форум > В помощь начинающему > Программирование
Daria
Здравствуйте. Такая проблема. У меня at91sam7x512, среда IAR. Чтобы не загружать ОЗУ, раньше константные массивы помещала во flash, создав в ней свои секции, файл линкера прилагается. Все вроде работало не один месяц. Пару дней назад проект перестал загружаться во flash(прошиваю по j-tag, программатор J-Link). То есть, вроде все исполняется, IAR пишет "programming flash", но зависает, и прошивка так и не может быть завершена . После отмены прошивки, в Debuge Log видно, что последний записанный адрес - это стартовый адрес моих секций. Кроме того, время от времени появляется сообщение - RTCK not connected, хотя выводы вроде все пропаяны, TCK приходят на разъем J-Linkа. Если убрать секции из линковочного файла, то прошивка выполняется успешно. Притом, пробовала менять адреса секций, всегда зависает именно на этих адресах. Время от времени вообще отказывается грузиться, сообщая, что нет питания, хотя питание есть laughing.gif
Подскажите, в чем тут может быть дело? может, я сама не заметила, как внесла какие-то недопустимые правки во flash.icf? wacko.gif
aaarrr
Цитата(Daria @ Feb 22 2011, 22:00) *
Притом, пробовала менять адреса секций, всегда зависает именно на этих адресах.

А почему они все у вас начинаются с нечетного адреса?
Daria
Цитата(aaarrr @ Feb 22 2011, 22:26) *
А почему они все у вас начинаются с нечетного адреса?

Даже не знаю, адрес был выбран наобум laughing.gif Потом я меняла и с четного - не помогло laughing.gif
aaarrr
Тогда еще вариант: сейчас все ваши секции находятся в пространстве EFC1. Не пробовали переместить вниз к EFC0?
Daria
Цитата(aaarrr @ Feb 22 2011, 23:18) *
Не пробовали переместить вниз к EFC0?

А почему это существенно? думала, разместить в самом конце флешки будет логично... rolleyes.gif
Надо попробоватьsm.gif какой, например, адрес советуете взять?wink.gif
Daria
После перемещения секций в другие области, обнаружилась другая проблемаsm.gif
Компилятор ругается, что no FIQ_STACK section include и что FIQ limit может быть равен нулю. Программа грузится, но сразу после настройки тактирования переполняется стек(CSTACK), стек у меня 16 кб, Оставляю в проге только настройку тактов и пустой for - переполняться нечем, но тем не менее. Такое впечатление, что какие-то прерывания.
В каком файле можно посмотреть именно про FIQ_STACK? И что вообще могло произойти, проект исправно прошивался много месяцев wacko.gif
help.gif
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.