Обсуждаем контроллеры компании Atmel.
Ответить

Железная отладка AVR-ок (debugWire, JTAG и т.д.)

Чт июн 13, 2013 00:53:58

Позвольте завести отдельную тему про железную отладку, пошелся по форуму - не нашел. Вопросы, которые ранее задавались про отладку касались отладки вскользь

Справка. Кроме симуляции (т.е. отладки виртуального МК) Atmel Studio предоставляет еще интерфейсы так называемой железной отладки.
Для того, чтобы ее осуществлять нужны фирменные отладчики или их клоны.
К фирменным относятся (по росту стоимости): AVR Dragon, JTAGICE mkII, JTAGICE3, AVR ONE!

Многие МК семейства tiny, mega, xmega поддерживают тот или иной протокол отладки. Как правило узнать об этом можно на первой странице даташита МК (Futures) в разделе Special Microcontroller Features. Есть правда исключения - например в даташите на atmega328 ничего не сказано про возможности отладки, однако этот чип может отлаживаться используя debugWire. Atmel Studio знает лучше даташитов возможности отладки - это можно увидеть в меню Project/Properties/Tool. Если в момент просмотра меню у вас подключен debugger вы увидите возможность выбора как дебггера так и протокола отладки. Если в списке протоколов значится только ISP - значит отладка не возможна. С этим например можно столкнуться на популярном МК atmega8

все изучал на собственном опыте и по документации, на форумах мне статей не попадалось, или потому что плохо искал или потому что отладчики дорогие и мало кто пользуется толи просто никто не добрался до описания. По-моему это не совсем справедливо, отладка шикарный инструмент.

Хотел бы сразу обратиться с вопросом в котором я не разобрался.
Отладка attiny13. Пока делал отладку на внутреннем генераторе 4.8 мгц все работало отлично, но стоит переключить на 9.6мгц - отладка стартует с ошибкой. В даташите ограничений по выбору частоты нет. Что может быть причиной?

Re: Железная отладка AVR-ок (debugWire, JTAG и т.д.)

Чт июн 13, 2013 21:47:51

а в чем преимущество железной отладки перед симуляцией ?

Re: Железная отладка AVR-ок (debugWire, JTAG и т.д.)

Чт июн 13, 2013 22:02:09

FreshMan писал(а):а в чем преимущество железной отладки перед симуляцией ?

У тебя не голое ядро в вакууме, а МК полностью в реальной схеме

Re: Железная отладка AVR-ок (debugWire, JTAG и т.д.)

Чт июн 13, 2013 22:07:46

FreshMan писал(а):а в чем преимущество?

вы отлаживаете реальную схему, управляете реальной переферией, получаете входные данные от реальных датчиков и т.д.

можно видеть значения портов, менять их значение в моменты остановок
это очень сильно отличается от симуляции
прямо из студии меняешь значение бита порта ввода-вывода и логическая 1 или 0 появляются на выводе МК

для примера - отлаживаю сейчас код измерения усредненого значения переменного тока в нагрузке. Как это сделать в симуляторе? Боюсь никак, только если где-то найти модель моего датчика и моей нагрузки. А здесь - включил реальный датчик с реальной нагрузкой и в отладчике получил оцифровку этих физических величин

Re: Железная отладка AVR-ок (debugWire, JTAG и т.д.)

Чт июн 13, 2013 22:21:20

axillent писал(а):Отладка attiny13. Пока делал отладку на внутреннем генераторе 4.8 мгц все работало отлично, но стоит переключить на 9.6мгц - отладка стартует с ошибкой. В даташите ограничений по выбору частоты нет. Что может быть причиной?

Знает ли кто причину? Иногда удается запустить отладку через пляски с бубнами на 9,6 но совершенно не ясно от чего это зависит. На 4.8 запускается на ура.

Re: Железная отладка AVR-ок (debugWire, JTAG и т.д.)

Чт июн 13, 2013 22:24:16

Какой программатор/отладчик используется? Родной AVR-овский или нет? Все ли подключено по инструкции?

Re: Железная отладка AVR-ок (debugWire, JTAG и т.д.)

Чт июн 13, 2013 22:27:07

SmarTrunk писал(а):Какой программатор/отладчик

родной jtagice3, МК установлен в STK600, только PB0-PB4 подключены к переферии
напряжение питания 5В

Re: Железная отладка AVR-ок (debugWire, JTAG и т.д.)

Чт июн 13, 2013 22:32:35

axillent, сколько стоит ваш отладчик-программатор ?
можно ли сделать самопальный или фирменный лучше ?

Re: Железная отладка AVR-ок (debugWire, JTAG и т.д.)

Чт июн 13, 2013 22:44:55

FreshMan писал(а):axillent, сколько стоит ваш отладчик-программатор ?

ох не спрашивайте)) мой мне стоил 100 долларов
самый недорогой фирменный это AVR Dragon, на фарнеле с доставкой его можно купить за 70 евро (50 + 20) - привезут за 4 дня

больше всего клонов как я понял есть к AVRISP mkII, он умеет только debugWire (если не ошибаюсь), но это достаточно для большинства популярных МК серий tiny и mega. Есть клоны самодельные, есть сторонних производителей, тут не смогу подсказать - нет опыта.

Re: Железная отладка AVR-ок (debugWire, JTAG и т.д.)

Чт июн 13, 2013 22:49:57

axillent писал(а):больше всего клонов как я понял есть к AVRISP mkII

это этот что ли http://avrdevices.ru/analog_avrisp_mkii_v20/ ?
я думал это просто программатор, а он еще и отладчик выходит ?

Re: Железная отладка AVR-ок (debugWire, JTAG и т.д.)

Чт июн 13, 2013 22:56:08

FreshMan писал(а):это этот что ли http://avrdevices.ru/analog_avrisp_mkii_v20/ ?

извините я вас запутал )) сам запутался. отладка все таки есть только в AVR Dragon, JTAGICE mkII, JTAGICE3, AVR ONE! как я и написал выше

внешне фирменный JTAGICE mkII и AVR ISP mkII очень похожи вот и путаница

Re: Железная отладка AVR-ок (debugWire, JTAG и т.д.)

Чт июн 13, 2013 22:59:46

AVRISP MK2 (по крайней мере, фирменный) поддерживает отладку по DebugWire.
Надо только, чтобы МК поддерживал тоже.. Например, ATmega8a не поддерживает, а ATmega88a с компанией поддерживает.

Re: Железная отладка AVR-ок (debugWire, JTAG и т.д.)

Чт июн 13, 2013 23:05:47

SmarTrunk писал(а):AVRISP MK2 (по крайней мере, фирменный) поддерживает отладку по DebugWire..

я тоже так думал, но сейчас воткнул AVRISP MK2 с attiny13 и студия отказалась мне включать отладку
вот список возможностей этого програматора из библиотеки документов атмела:
• Interface with AVR Studio 4.12
• ISP Programming of newer In-System Programmable AVR Devices
• Programs both Flash and EEPROM
• Supports Fuse and Lock Bit Programming
• Supports RC Oscillator Calibration
• Adjustable Programming Speed
• USB Interface
• Short-circuit Protection
• Upgradeable to Support Future Devices


на сайте есть статья про клоны jtagice http://radiokot.ru/circuit/digital/pcmod/21/

Re: Железная отладка AVR-ок (debugWire, JTAG и т.д.)

Чт июн 13, 2013 23:13:49

оказывается все не так как есть на самом деле :))
тогда может кто-либо из форумчан, кто сам собрал, подбросит смему самопального прогера-отладчика ?

Re: Железная отладка AVR-ок (debugWire, JTAG и т.д.)

Чт июн 13, 2013 23:17:13

FreshMan писал(а):оказывается все не так как есть на самом деле :))

)) вот и у соседей статья http://easyelectronics.ru/vnutrisxemnay ... g-ice.html
но обе статья про клоны которые как я понял умеют только jtagice, а это значит, что они могут отлаживать только старшие модели tiny и mega

если не ошибаюсь все что от 40 ног имеет jtagice, все что меньше debugWire, возможно есть исклчения, но логика примерно такая
т.е. для отладки многоногих (типа atmega16/32) можно собрать клоны из статьи и делать отладку
а вот с мелконогими даже не факт, что есть клоны

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

если более менее активно разрабатываете - сэкономьте на покупке десятка МК в китае вместо местных магазинов )) и вложитесь в фирменный
а если нет, то конечно наверно это будет как золотое яйцо - круто, но не надо

в местных магазинах я бы тоже низачто не купил фирменный - мой jtagice3 в москве есть только в чипдипе ... по цене самолета (около 600 долларов)
а за бугром цена вполне себе
самые хорошие цена на сайте самого атмела - но эти пиндосы в Россию не шлют, задавал им вопрос - послали к поставщикам в России
я их тоже послал и купил в США, но не у них
насчет Украины не знаю, может и шлют напрямую

Re: Железная отладка AVR-ок (debugWire, JTAG и т.д.)

Чт июн 13, 2013 23:52:45

У меня родной AVRISP MK2, про него везде написано, что поддерживает, и я в это верю. Но живьем еще не пробовал, только программировал (т.к. древняя АТмега8а не поддерживает DebugWire). Про клоны не знаю ничего.

Re: Железная отладка AVR-ок (debugWire, JTAG и т.д.)

Чт июн 13, 2013 23:55:51

SmarTrunk писал(а):У меня родной AVRISP MK2, про него везде написано, что поддерживает, и я в это верю.

он не значится в списке отладчиков и в списке функций который я привел выше отладка тоже не значится - есть банальная путаница в названиях с JTAGICE2
к сожалению, у atmela беда с наименованиями
учитывая путаницу в документации я тоже больще опыту доверяю - повторюсь, не дает он отлаживать

Re: Железная отладка AVR-ок (debugWire, JTAG и т.д.)

Пт июн 14, 2013 00:16:35

Да, наверно, это так.

Re: Железная отладка AVR-ок (debugWire, JTAG и т.д.)

Пт июн 14, 2013 04:43:55

Раньше когда работал с AVR, то использовал AVR Dragon для внутрисхемной отладки. Стоит он половину от jtagice3. Говорят, правда, что у него ненадежные выходные порты, но у меня никогда проблем не было и в целом я этим отладчиком остался доволен. Помню заказал их 5 шт от самого Atmel-а, но один пришел нерабочий, даже студией не распознавался.

Re: Железная отладка AVR-ок (debugWire, JTAG и т.д.)

Пт июн 14, 2013 12:38:46

не хватило мне сотни байт, поменял тини13 на тини85 и частоту изменил на 16мгц
как ни странно - отлаживается на 16 без проблем
какие то глюки или с тини13 или с конкретной партией

кстати, еще одна фишка debugWire - через него можно в том числе и прошивать чип причем в отличии от ISP - через один провод
зачем было делать ISP если через debugWire все шикарно заливается? ... загадка
Ответить