|
Насколько нужен ресет при программировании AVR через JTAG?, Точнее daisy chain из двух м640. |
|
|
|
Apr 15 2012, 16:00
|

Местный
  
Группа: Участник
Сообщений: 253
Регистрация: 4-03-09
Из: Богота, Колумбия
Пользователь №: 45 676

|
Насколько нужен ресет при программировании AVR через JTAG? Точнее daisy chain из двух м640. Все апноты и ДШ говорят, что не нужен. Что достаточно TMS, TCK, TDI, TDO. Цитата Source Reset (optional) Used to reset the target device. Connecting this pin is recommended since it allows the JTAGICE mkII to hold the target device in a reset state, which can be essential to debugging in certain scenarios - for example if the JTD bit is set by the application firmware, disabling the JTAG interface. The nSRST pin has an internal pullup resistor in the JTAGICE mkII. Цитата Programming through the JTAG interface requires control of the four JTAG specific pins: TCK, TMS, TDI and TDO. Control of the reset and clock pins is not required. Насколько понимаю, ресет нужен только чтобы сбросить девайс в случае зависа или плохого старта. Что при наличии RC на ресете, по моему опыту, исключено. Но даже если такое происходит, можно тупо переткнуть питание (не удобно, конечно, но часто ли мы программируем девайс?). Знатоки JTAG протокола, отзовитесь! Часто ли оный дёргается?
|
|
|
|
|
Apr 15 2012, 16:28
|

Местный
  
Группа: Участник
Сообщений: 253
Регистрация: 4-03-09
Из: Богота, Колумбия
Пользователь №: 45 676

|
Это я читал. Там даже где-то написано, что ресет достигается "комбинацией состояний линий TCK, TMS, TDI and TDO", только не могу найти где это было... Возможно, в хелпе студии... Но тут промелькнула мысль, что он нужен для отладки. Не совсем понимаю, зачем (если есть команды), но вдруг? Не хотелось бы налажать в топологии...
|
|
|
|
|
Apr 15 2012, 18:40
|

Местный
  
Группа: Участник
Сообщений: 253
Регистрация: 4-03-09
Из: Богота, Колумбия
Пользователь №: 45 676

|
Цитата(prottoss @ Apr 15 2012, 19:46)  нет ни каких комбинаций  есть последовательность бит которая устанавливает внутренний бит RESET и есть комбинация которая его сбрасывает. Я знаю что такое последовательность бит  Но в доке было как раз про "комбинацию". Я тоже удивился. Но не суть, главное что можно. Цитата(ILYAUL @ Apr 15 2012, 20:02)  Отладчик DRAGON , плата с Atmega128 - отключил от платы RESET JTAG . Dragon перестал видеть плату. Это который nSRST? Он её вообще перестал видеть, или только отладка отключилась? Цитата(ILYAUL @ Apr 15 2012, 20:02)  Отладчик DRAGON , плата с Atmega128 - отключил от платы RESET JTAG . Dragon перестал видеть плату. И из под чего вы драгон заводили? Студии?
|
|
|
|
|
Apr 15 2012, 19:12
|

Местный
  
Группа: Участник
Сообщений: 253
Регистрация: 4-03-09
Из: Богота, Колумбия
Пользователь №: 45 676

|
Цитата(ILYAUL @ Apr 15 2012, 20:02)  отключил от платы RESET JTAG . Какой именно пин разъёма вы отключали?  Интересуюсь по тому, что есть доступ к дракону и именно его я хотел использовать для отладки на первых порах. Цитата(ArtemKAD @ Apr 15 2012, 22:02)  Аналогично с xMega256A3 с программированием. Reset понадобился ровно с того момента когда я начал в программе отключать JTAG и штатно использовать ноги которые отведены под программирование/отладку. И это не блокирование ног программатора - все четыре ноги там высокоомные (несколько кОм) входы АЦП. Стоп стоп стоп... Вы, господа, меня окончательно запутали. Повторю условия задачи. Имею два МК atmega640 соединённых в гирлянду:  Ноги JTAG интерфейса ни к чему более не идут - только чипы и разъём. Отключать их программно не планирую (тем более что в меге, насколько знаю, из программы их и не отключишь). Программировать планирую сначала драконом, тем более что он ещё и отладчик, потом - годзилой, если там появится поддержка гирлянд. Нужен ли мне ресет? Если да, то к какому пину разъёма подключать? nSRST или nTRST?
|
|
|
|
|
Apr 16 2012, 09:56
|

Знающий
   
Группа: Свой
Сообщений: 680
Регистрация: 11-02-08
Из: Msk
Пользователь №: 34 950

|
Если у микросхемы есть вход TRST, его надо заводить на разьем житага и пуллапить. Если такого входа нет, значит на разъеме TRST можно бросить.
Немного информации: TRST является сбросом машины состояний jtag. Внутри он обычно связан с блоком power_on_reset (который, подразумевается, есть в каждой микросхеме), а также может управляться извне (если есть соотв. вывод), или же сбрасываться по инструкции (используются входы TDI,TMS,TCK). Последнее время этот вывод на корпусах отсутствует, видимо из-за экономии. Но лично я сталкивался как минимум с одним случаем, когда он был нужен: некий интелловский процессор при заморозке ниже -50С переставал стартовать. Как я выяснил в ходе исследований, у процессора начинала сбоить машина состояний житага при включении питания, после чего проц переводил все IO в тристейт. Но после "вздрючки" по житагу процессор работал отлично, до следующего выключения питания. По счастью, на плате имелся внешний монитор питания. Завел от него сброс на TRST процессора, и плата начала стартовать и работать вплоть до -85С.
|
|
|
|
|
Apr 16 2012, 14:15
|

Местный
  
Группа: Участник
Сообщений: 253
Регистрация: 4-03-09
Из: Богота, Колумбия
Пользователь №: 45 676

|
Цитата(Shivers @ Apr 16 2012, 12:56)  Если такого входа нет, значит на разъеме TRST можно бросить. Вот этой фразы вообще не понял У атмеги есть только RESET. Других ресетов не замечал. Судя по разъёму драгона, к nSRST его надо. Цитата(ILYAUL @ Apr 16 2012, 12:49)  У драгона один RST. А с какой стороны ключ у разъёма драгона можете глянуть? А то на плате контур разъёма нарисован будет, не хочется перепутать.
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|