Позвольте завести отдельную тему про железную отладку, пошелся по форуму - не нашел. Вопросы, которые ранее задавались про отладку касались отладки вскользь
Справка. Кроме симуляции (т.е. отладки виртуального МК) 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мгц - отладка стартует с ошибкой. В даташите ограничений по выбору частоты нет. Что может быть причиной?
вы отлаживаете реальную схему, управляете реальной переферией, получаете входные данные от реальных датчиков и т.д.
можно видеть значения портов, менять их значение в моменты остановок это очень сильно отличается от симуляции прямо из студии меняешь значение бита порта ввода-вывода и логическая 1 или 0 появляются на выводе МК
для примера - отлаживаю сейчас код измерения усредненого значения переменного тока в нагрузке. Как это сделать в симуляторе? Боюсь никак, только если где-то найти модель моего датчика и моей нагрузки. А здесь - включил реальный датчик с реальной нагрузкой и в отладчике получил оцифровку этих физических величин
Отладка attiny13. Пока делал отладку на внутреннем генераторе 4.8 мгц все работало отлично, но стоит переключить на 9.6мгц - отладка стартует с ошибкой. В даташите ограничений по выбору частоты нет. Что может быть причиной?
Знает ли кто причину? Иногда удается запустить отладку через пляски с бубнами на 9,6 но совершенно не ясно от чего это зависит. На 4.8 запускается на ура.
axillent, сколько стоит ваш отладчик-программатор ?
ох не спрашивайте)) мой мне стоил 100 долларов самый недорогой фирменный это AVR Dragon, на фарнеле с доставкой его можно купить за 70 евро (50 + 20) - привезут за 4 дня
больше всего клонов как я понял есть к AVRISP mkII, он умеет только debugWire (если не ошибаюсь), но это достаточно для большинства популярных МК серий tiny и mega. Есть клоны самодельные, есть сторонних производителей, тут не смогу подсказать - нет опыта.
AVRISP MK2 (по крайней мере, фирменный) поддерживает отладку по DebugWire. Надо только, чтобы МК поддерживал тоже.. Например, ATmega8a не поддерживает, а ATmega88a с компанией поддерживает.
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
)) вот и у соседей статья http://easyelectronics.ru/vnutrisxemnay ... g-ice.html но обе статья про клоны которые как я понял умеют только jtagice, а это значит, что они могут отлаживать только старшие модели tiny и mega
если не ошибаюсь все что от 40 ног имеет jtagice, все что меньше debugWire, возможно есть исклчения, но логика примерно такая т.е. для отладки многоногих (типа atmega16/32) можно собрать клоны из статьи и делать отладку а вот с мелконогими даже не факт, что есть клоны
еще одна подстава может быть с клонами - их может не поддерживать студия старше 4-й
если более менее активно разрабатываете - сэкономьте на покупке десятка МК в китае вместо местных магазинов )) и вложитесь в фирменный а если нет, то конечно наверно это будет как золотое яйцо - круто, но не надо
в местных магазинах я бы тоже низачто не купил фирменный - мой jtagice3 в москве есть только в чипдипе ... по цене самолета (около 600 долларов) а за бугром цена вполне себе самые хорошие цена на сайте самого атмела - но эти пиндосы в Россию не шлют, задавал им вопрос - послали к поставщикам в России я их тоже послал и купил в США, но не у них насчет Украины не знаю, может и шлют напрямую
У меня родной AVRISP MK2, про него везде написано, что поддерживает, и я в это верю. Но живьем еще не пробовал, только программировал (т.к. древняя АТмега8а не поддерживает DebugWire). Про клоны не знаю ничего.
У меня родной AVRISP MK2, про него везде написано, что поддерживает, и я в это верю.
он не значится в списке отладчиков и в списке функций который я привел выше отладка тоже не значится - есть банальная путаница в названиях с JTAGICE2 к сожалению, у atmela беда с наименованиями учитывая путаницу в документации я тоже больще опыту доверяю - повторюсь, не дает он отлаживать
Раньше когда работал с AVR, то использовал AVR Dragon для внутрисхемной отладки. Стоит он половину от jtagice3. Говорят, правда, что у него ненадежные выходные порты, но у меня никогда проблем не было и в целом я этим отладчиком остался доволен. Помню заказал их 5 шт от самого Atmel-а, но один пришел нерабочий, даже студией не распознавался.
не хватило мне сотни байт, поменял тини13 на тини85 и частоту изменил на 16мгц как ни странно - отлаживается на 16 без проблем какие то глюки или с тини13 или с конкретной партией
кстати, еще одна фишка debugWire - через него можно в том числе и прошивать чип причем в отличии от ISP - через один провод зачем было делать ISP если через debugWire все шикарно заливается? ... загадка
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 26
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения