Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Оживить AT91SAM7A3
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > ARM
Vitaly_N
Хочу сделать простенький проект на AT91SAM7A3.

Проблема - не заводится кварц. Кварц 18.432 МГц. Конденсаторы брал и по 10 пФ и по 15 - бестолку. От этого естественно не работает USB, соответственно, не могу воспользоваться самбой.

Даташит на чип (rev.E) утверждает, что первое, что должна сделать программа - запустить Main Oscillator, установив MOSCEN бит в регистре CKGR_MOR. Соответственно, пока рабочая программа не разрешит этот бит, кварц и не заведётся. Следовательно, рабочая программа с правильным стартапом должна в чипе уже быть, прежде чем кварц заведётся, а в этом у меня сомнения - в даташите нет сведений о том, что в нём по-умолчанию SAM-BA записана.

Включение на более чем 10 секунд с подтянутым к плюсу сигналом TST, последующим отключением питания, отсоединением TST и повторной подачей питания никак ситуацию не меняет. Поведение ноги TST в даташите не определено, просто сказано её оставить свободной, а там встроенный пуллдаун. Наивно ожидалось её поведение аналогичному в других AT91SAM7....

Изучение даташита на AT91SAM7A3-EK ничем не помогает - RST, питания, PLLRC и т.п. у меня сделаны точно так же.

Даташит на чип утверждает, что единственный гарантированный способ общения с кристаллом - через JTAG. Однако и тут засада. Не могу даже бинарник самбы в него залить. С использованием H-JTAG через вигглер чип определяется как 3F0F0F0F, но ничего с ним сделать не могу - такое ощущение, что H-JTAG (V.0.6.0 BUILD 20071130) просто не умеет работать именно с AT91SAM7A3 - при попытке загрузить в него бинарник ругается, что не найден init script, хотя на предыдущем шаге кнопочки серые, что в соответствии с документацией означает, что ему скрипт и не нужен, якобы и так знает, как с ним общаться.

Спасите-помогите! help.gif Куда рыть? Чем пользоваться?
Хомяк
Цитата(Vitaly_N @ Jan 9 2008, 11:45) *
Хочу сделать простенький проект на AT91SAM7A3.

Проблема - не заводится кварц. Кварц 18.432 МГц. Конденсаторы брал и по 10 пФ и по 15 - бестолку. От этого естественно не работает USB, соответственно, не могу воспользоваться самбой.

Даташит на чип (rev.E) утверждает, что первое, что должна сделать программа - запустить Main Oscillator, установив MOSCEN бит в регистре CKGR_MOR. Соответственно, пока рабочая программа не разрешит этот бит, кварц и не заведётся. Следовательно, рабочая программа с правильным стартапом должна в чипе уже быть, прежде чем кварц заведётся, а в этом у меня сомнения - в даташите нет сведений о том, что в нём по-умолчанию SAM-BA записана.

Включение на более чем 10 секунд с подтянутым к плюсу сигналом TST, последующим отключением питания, отсоединением TST и повторной подачей питания никак ситуацию не меняет. Поведение ноги TST в даташите не определено, просто сказано её оставить свободной, а там встроенный пуллдаун. Наивно ожидалось её поведение аналогичному в других AT91SAM7....

Изучение даташита на AT91SAM7A3-EK ничем не помогает - RST, питания, PLLRC и т.п. у меня сделаны точно так же.

Даташит на чип утверждает, что единственный гарантированный способ общения с кристаллом - через JTAG. Однако и тут засада. Не могу даже бинарник самбы в него залить. С использованием H-JTAG через вигглер чип определяется как 3F0F0F0F, но ничего с ним сделать не могу - такое ощущение, что H-JTAG (V.0.6.0 BUILD 20071130) просто не умеет работать именно с AT91SAM7A3 - при попытке загрузить в него бинарник ругается, что не найден init script, хотя на предыдущем шаге кнопочки серые, что в соответствии с документацией означает, что ему скрипт и не нужен, якобы и так знает, как с ним общаться.

Спасите-помогите! help.gif Куда рыть? Чем пользоваться?



Сам сталкивался с подобной проблемой
Потом плюнул на эту самбу и пользуюсь загрузчиком IAR
ЕшТ
Цитата(Vitaly_N @ Jan 9 2008, 12:45) *
С использованием H-JTAG через вигглер чип определяется как 3F0F0F0F


Похоже у вас JTAGSEL выбран в режиме Boundary-scan. У меня плата с SAM7A3 точно также определяется тем же H-JTAG (к нему подключен STK200-клон на одной HC244) если в режиме BS. Перекиньте джампер wink.gif Сразу определяется как ARM7TDMI, и дальше можно работать. Использовал IAR 4.40 + RDI H-JTAG, все прошивалось и дебажилось на ура.

Успехов. beer.gif
zltigo
Moderator то Хомяк:
настоятельный совет воздерживаться от обширного бессмысленного цитирования.
Меандр
Отлаживал макетку с AT91SAM7A3 и столкнулся с похожей ситуацией. Какое-то время девайс работал. Затем на ноге NRST процессора появился 0. Соответственно Flasher H-JTAG не мог прошить камень. Вылечиваться, похоже, удалением дефектного чипа с общей шины PA0-PA17 и кратковременной закороткой TST. В чем причина такого поведения и где об этом можно прочитать поподробнее, чтобы не наступать на грабли в дальнейшем?
Меандр
похожая ситуация http://electronix.ru/forum/index.php?showt...&st=0&#
то что вчера помогало сегодня уже не помогает, один раз удалось прошиться через Wiggler и далее nRST устанавливается в ноль, при подаче JTAGSEL = 1 чип читается H-JTAG как UNKNOWN 0x0091DFF0. При этом на другой такой же плате все нормально шьётся и определяется.
+++++++++++
Позамыкал еще раз TST, понажимал на кнопку сброса, которая параллельно nRST, контроллер что-то выдал в DBGU на неизвестной скорости и заработал. 07.gif
Troll
В AT91SAM7A3 нет вшитого в ПЗУ загрузчика САМБЫ, соответственно пытаться его восстановить делая что-либо с TST входом бесполезно.
Единственный гарантированный способ залить, что либо в кристалл - использовать JTAG. При этом вход JTAGSEL к питанию подтягивать не надо.
Меандр
Цитата
Единственный гарантированный способ залить, что либо в кристалл - использовать JTAG

Это понятно. Непонятно как и чем можно прошить JTAGом когда nRST держит в 0 сам контроллер . H-Flasher и Wiggler не работали . 07.gif Сейчас устройство работает, но хотелось бы подстраховаться от сюрпризов в будущем (или, в крайнем случае, предусмотреть похожий по параметрам чип с двумя аппаратными SSC).
BSVi
Было такое с 64 кристаллом. Дело оказалось в плохом кварце. После замены все заработало.
Меандр
Из трёх плат две рабочие, а у третьей nRST опять в 0. Пляски с TST уже не помогают.
Цитата(BSVi)
Было такое с 64 кристаллом. Дело оказалось в плохом кварце. После замены все заработало.
H-Flasher без кварца не работает(проверил сейчас на второй плате) smile.gif , но nRST у него в 1.

Похоже SAM7A3 rev.A не для экспериментов с компиляторами 07.gif . Из техподдержки ответили, что нужно брать ревизию B.

В качестве запасной меры, если кто знает примерную замену ARM7. Критично только наличие двух портов SSC. Спасибо.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.