DebugWIRE - DebugWIRE

debugWIRE это протокол последовательной связи, разработанный Атмель. Используется для внутрикристальной отладка из Atmel AVR микропроцессоры.

Протокол

debugWIRE разработан как более простая альтернатива JTAG, ориентированный на процессоры с ограниченными ресурсами. Он поддерживается большинством современных 8-битных AVR. Используя debugWIRE, можно получить полный доступ для чтения и записи ко всей памяти и полный контроль над потоком выполнения. Он поддерживает пошаговые инструкции, инструкции перехода к курсору, перехода и прерывания программного обеспечения. А точка останова (бег к курсору) будет установлен путем перепрограммирования ПЕРЕРЫВ[1] код операции во флэш-память AVR. Необходимо соблюдать осторожность из-за ограниченных гарантированных циклов записи (10000) устройства.[2]

Модели программистов

debugWIRE поддерживается всеми современными отладчиками Atmel. Сюда входят Atmel-ICE, JTAGICE3, AVR Dragon и JTAGICE mkII.

спецификации debugWIRE

debugWIRE активируется установкой (программированием на ноль) предохранителя DWEN (включение debugWIRE), обычно расположенного в старшем байте предохранителя. После этого действия функция вывода / RESET больше не доступна, и протокол ISP не может использоваться. DebugWIRE можно отключить, например, с помощью JTAGICE mkII, отправив специальную команду сброса, которая временно отключает функцию debugWIRE и повторно включает / RESET, а также ISP до следующего цикла отключения питания. debugWIRE не может программировать предохранители устройства. Если вы хотите отключить debugWIRE навсегда, вы должны временно отключить функцию и запрограммировать предохранитель, используя теперь доступную функцию ISP.[3]debugWIRE использует 1 провод открытый сток последовательное соединение. По умолчанию используется скорость передачи данных AVR clock / 128. Отправка ПЕРЕРЫВ 0x00 вернет 0x55, который используется для определения скорости передачи. AVR вернет BREAK при достижении точки останова или обнаружении конфликта в соединении debugWIRE. 0x06 используется для отключения debugWIRE и повторного включения / RESET и ISP, 0x07 сбрасывает AVR, 0xF0 возвращает ПК, 0xF3 - идентификатор debugWIRE.[4][5][6]

использованная литература

  1. ^ Инструкции по ассемблеру AVR
  2. ^ ATtiny25-ATtiny45-ATtiny85_Datasheet-Summary.pdf
  3. ^ статья debugWIRE (на немецком языке)
  4. ^ Протокол debugWIRE
  5. ^ Простой автономный отладчик debugWIRE (с открытым исходным кодом)
  6. ^ Microchip Makes (25 ноября 2015 г.). «Расширенная отладка с помощью плат Arduino» - через YouTube.