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

 
 
 
Reply to this topicStart new topic
> как разблокировать JTAG?
sergik_vrn
сообщение Jan 29 2007, 11:47
Сообщение #1


Частый гость
**

Группа: Свой
Сообщений: 152
Регистрация: 11-10-05
Из: Воронеж
Пользователь №: 9 491



После загрузки проекта (непроверенного) перестал работать JTAG на STR710. То есть сам отладчик виден, но процессор он не распознает вообще. при этом какая-то активность на ногах есть, но такое ощущение, что она задушена чем-то. Есть подозрение, что отладчик заблокировался. Соответственно, вопрос - можно ли здесь что-либо сделать, или сразу в морг?

Сообщение отредактировал sergik_vrn - Jan 29 2007, 11:48
Go to the top of the page
 
+Quote Post
Esc@pe
сообщение Jan 30 2007, 10:05
Сообщение #2





Группа: Новичок
Сообщений: 11
Регистрация: 4-03-05
Пользователь №: 3 065



Присоединяюсь к вопросу!

После нехитрых манипуляций ;) частота на ядре стала вдвое меньше частоты периферии. Видимо проц входит в режим STOP и J-LINK к нему цепляться не хочет, выдает сообщение об ошибке:
Bad JTAG communication: Write to IR: Expected 0x1, got 0x7 (TAP Command:2) @ Off 0x4

Подскажите как проинициализировать Flash контроллера с помощью J-Link

PS: Контроллер STR710
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Jan 30 2007, 11:33
Сообщение #3


Гуру
******

Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095



Цитата(Esc@pe @ Jan 30 2007, 09:05) *
PS: Контроллер STR710
А нет ли там магической комбинации ног, которая вызывает стирание и разлочивание кристалла как AT91SAM7? Или переводит в режим загрузчика, как LPC?


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post
EKirshin
сообщение Jan 30 2007, 11:52
Сообщение #4


Участник
*

Группа: Свой
Сообщений: 41
Регистрация: 2-10-06
Из: Москва
Пользователь №: 20 904



Были у нас похожие проблемы с STR912 на ULINK.

Иногда после прошивки не совсем рабочей программы процессор отказывался ответь вовсе. Дело решилось методом тыка с использованием замыкалки reseta на землю. Т.е. так: ресет сажается вручную на землю, нажимается кнопка "загрузить флэш", сразу же отпускается ресет. Момент отпускания ресета - как повезет. Нужно отпустить в нужный промежуток времени. Получалось раза с 10го. Конечно, не метод, но в крайних случаях оживить процессор...
Go to the top of the page
 
+Quote Post
sergik_vrn
сообщение Jan 30 2007, 13:56
Сообщение #5


Частый гость
**

Группа: Свой
Сообщений: 152
Регистрация: 11-10-05
Из: Воронеж
Пользователь №: 9 491



Цитата(Сергей Борщ @ Jan 30 2007, 11:33) *
Цитата(Esc@pe @ Jan 30 2007, 09:05) *

PS: Контроллер STR710
А нет ли там магической комбинации ног, которая вызывает стирание и разлочивание кристалла как AT91SAM7? Или переводит в режим загрузчика, как LPC?

к сожалению, в отличие от атмела, например, оной комбинации не обнаружено. что, вообще, повергло нас в некоторое уныние... впрочем, конечно, вероятность запортить кристалл достаточно небольшая, но все-таки
Go to the top of the page
 
+Quote Post
Esc@pe
сообщение Jan 30 2007, 14:20
Сообщение #6





Группа: Новичок
Сообщений: 11
Регистрация: 4-03-05
Пользователь №: 3 065



Ноги для стирания кристалла, как в Атмеле, там действительно нет, а вот пины для включения/конфигурирования загрузчика имеются, правда у меня они используются по другому назначению и BOOT_EN = 0.
Go to the top of the page
 
+Quote Post
sergik_vrn
сообщение Jan 30 2007, 15:18
Сообщение #7


Частый гость
**

Группа: Свой
Сообщений: 152
Регистрация: 11-10-05
Из: Воронеж
Пользователь №: 9 491



Цитата(Esc@pe @ Jan 30 2007, 14:20) *
Ноги для стирания кристалла, как в Атмеле, там действительно нет, а вот пины для включения/конфигурирования загрузчика имеются, правда у меня они используются по другому назначению и BOOT_EN = 0.

если речь про DBGRQ и иже с ними, то это стандартные пины и они, разумеется, сконфигурированы правильно (то есть отладка разрешена - впрочем, иначе она бы не работала вообще). то, о чем говорилось выше - это пины, при помощи которых можно было бы произвести внешнее стирание чипа вместе с фьюзами, как, например, в атмел AVR. здесь такого нет, поэтому стереть их можно только изнутри или при включенном JTAG (а он запрещен случайной записью)
Go to the top of the page
 
+Quote Post
Esc@pe
сообщение Jan 30 2007, 15:28
Сообщение #8





Группа: Новичок
Сообщений: 11
Регистрация: 4-03-05
Пользователь №: 3 065



[/quote]
если речь про DBGRQ и иже с ними, то это стандартные пины и они, разумеется, сконфигурированы правильно (то есть отладка разрешена - впрочем, иначе она бы не работала вообще). то, о чем говорилось выше - это пины, при помощи которых можно было бы произвести внешнее стирание чипа вместе с фьюзами, как, например, в атмел AVR. здесь такого нет, поэтому стереть их можно только изнутри или при включенном JTAG (а он запрещен случайной записью)
[/quote]

Пин 16 - BOOT_EN разрешает/запрещает использование пинов BOOT.1 и BOOT.0 для выбора загрузочной области - flash/ram/extmem

стр.22 Reference Manual.

Можно попробовать установить на загрузку из RAM. Вдруг поможет wink.gif
Go to the top of the page
 
+Quote Post
sergik_vrn
сообщение Jan 30 2007, 15:46
Сообщение #9


Частый гость
**

Группа: Свой
Сообщений: 152
Регистрация: 11-10-05
Из: Воронеж
Пользователь №: 9 491



Цитата(Esc@pe @ Jan 30 2007, 15:28) *
Цитата

если речь про DBGRQ и иже с ними, то это стандартные пины и они, разумеется, сконфигурированы правильно (то есть отладка разрешена - впрочем, иначе она бы не работала вообще). то, о чем говорилось выше - это пины, при помощи которых можно было бы произвести внешнее стирание чипа вместе с фьюзами, как, например, в атмел AVR. здесь такого нет, поэтому стереть их можно только изнутри или при включенном JTAG (а он запрещен случайной записью)


Пин 16 - BOOT_EN разрешает/запрещает использование пинов BOOT.1 и BOOT.0 для выбора загрузочной области - flash/ram/extmem

стр.22 Reference Manual.

Можно попробовать установить на загрузку из RAM. Вдруг поможет wink.gif

BOOT_EN включен, выбирали и RAM, и flash - без разницы. еще раз поясняю - JTAG вообще не стартует. то есть процессор не определяется. такое ощущение, что прошиты фузы типа DEBUG_ENABLE
Go to the top of the page
 
+Quote Post
Bosicc
сообщение Feb 5 2007, 08:26
Сообщение #10


Частый гость
**

Группа: Свой
Сообщений: 93
Регистрация: 5-03-06
Из: Украина, Киев
Пользователь №: 14 970



У меня есть борда с LPC 2378.
Захотел прошить туда примерчик. ( RTX_Blinky ) Записал, но никаких признаков жизни борда не подавала. Непомню на каком моменте у меня перестал работать JTAG.
Первое, он автоматически не определяется.
Второе, при ручной настройке говорит что не может рестартануть ARM.
Я попробовал другую борду с ней все ОК. Следовательно я что то накрутил с чипом. Боюсь что что то с PLL.
Может кто небуть знает как оживить чип и заставить работать JTAG, поскольку альтернативы программирования я пока не вижу sad.gif
Go to the top of the page
 
+Quote Post
Ivan_Kov
сообщение Feb 5 2007, 17:08
Сообщение #11


Частый гость
**

Группа: Свой
Сообщений: 174
Регистрация: 30-10-06
Из: г. Курск
Пользователь №: 21 787



Цитата(Bosicc @ Feb 5 2007, 08:26) *
У меня есть борда с LPC 2378.
Захотел прошить туда примерчик. ( RTX_Blinky ) Записал, но никаких признаков жизни борда не подавала. Непомню на каком моменте у меня перестал работать JTAG.
Первое, он автоматически не определяется.
Второе, при ручной настройке говорит что не может рестартануть ARM.
Я попробовал другую борду с ней все ОК. Следовательно я что то накрутил с чипом. Боюсь что что то с PLL.
Может кто небуть знает как оживить чип и заставить работать JTAG, поскольку альтернативы программирования я пока не вижу sad.gif


При сбросе LPC управление передается во встроенный загрузчик (0x7fff ffff), прошитый производителем.
если в момент reseta загрузчик обнаруживает на ноге P0.14 напряжение низкого уровня, то он не передает управление во флеш, где находится пользовательский загрузчик, а начинает ждать всяких команд по UART0. подробности читаете в мануале.
Я так понимаю, что этого достаточно чтобы победить вашу прошивку, если дело в ней.
Go to the top of the page
 
+Quote Post
Bosicc
сообщение Feb 6 2007, 08:03
Сообщение #12


Частый гость
**

Группа: Свой
Сообщений: 93
Регистрация: 5-03-06
Из: Украина, Киев
Пользователь №: 14 970



Цитата(Ivan_Kov @ Feb 5 2007, 16:08) *
При сбросе LPC управление передается во встроенный загрузчик (0x7fff ffff), прошитый производителем.
если в момент reseta загрузчик обнаруживает на ноге P0.14 напряжение низкого уровня, то он не передает управление во флеш, где находится пользовательский загрузчик, а начинает ждать всяких команд по UART0. подробности читаете в мануале.


Спасибо за наводку.
Я глянул в мануале чипа LPC 2378 что при подаче на ногу P2.10 напряжение низкого уровня, начинает ждать команд по UART0. Но какие именно надо послать команды что б стиреть флеш. Мне кажется что таким способом я смогу залить заного верную прошивку через JTAG.

Или как вернуть чип к заводскому состоянию? Есть ли какой специальный ресет.
Go to the top of the page
 
+Quote Post
Ivan_Kov
сообщение Feb 6 2007, 10:17
Сообщение #13


Частый гость
**

Группа: Свой
Сообщений: 174
Регистрация: 30-10-06
Из: г. Курск
Пользователь №: 21 787



Цитата(Bosicc @ Feb 6 2007, 08:03) *
Спасибо за наводку.
Я глянул в мануале чипа LPC 2378 что при подаче на ногу P2.10 напряжение низкого уровня, начинает ждать команд по UART0. Но какие именно надо послать команды что б стереть флеш. Мне кажется что таким способом я смогу залить заного верную прошивку через JTAG.

Или как вернуть чип к заводскому состоянию? Есть ли какой специальный ресет.


читайте раздел "ISP commands", в мануале. там описаны все команды UART0.
если английский дается хуже русского, могу порекомендовать книжку:

Мартин Т.
"Микроконтроллеры ARM7. Семейчтво LPC2000 компании Philips. Вводный курс"

На мой взгляд не плохой обзор по возможностям LPC, но мануал не заменит.

Есть еще такая утилитка "FlashMagic", кажется на сайте nxp. Позволяет по UART0 программировать микроконтроллер.

Спасибо, что обратили внимание на ногу 2.10, в младших моделях подается именно на P0.14, мы этого не заметили сразу, а схему почти уже в разводку отдали.

Сообщение отредактировал Ivan_Kov - Feb 6 2007, 10:48
Go to the top of the page
 
+Quote Post
Bosicc
сообщение Feb 7 2007, 04:54
Сообщение #14


Частый гость
**

Группа: Свой
Сообщений: 93
Регистрация: 5-03-06
Из: Украина, Киев
Пользователь №: 14 970



Цитата(Ivan_Kov @ Feb 6 2007, 09:17) *
Есть еще такая утилитка "FlashMagic", кажется на сайте nxp. Позволяет по UART0 программировать микроконтроллер.

Спасибо огромное за программку( одновременно с Вашим постом получил ответ от супорта smile.gif ) ! Помогла! Всем рекомендую. Можно вернуть чип к первозданному виду + поддерживается большое количество чипов.

Собственно программку можно скачать отсюда http://www.flashmagictool.com/
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 20th July 2025 - 05:45
Рейтинг@Mail.ru


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