Программисты отладчика ICE
Руководство пользователя Программисты и отладчики
Atmel-ICE
РУКОВОДСТВО ПОЛЬЗОВАТЕЛЯ
Отладчик Atmel-ICE
Atmel-ICE — это мощный инструмент разработки для отладки и программирования микроконтроллеров Atmel ®SAM и Atmel AVR на базе ARM® Cortex®-M с возможностью отладки на кристалле ®.
Поддерживает:
- Программирование и встроенная отладка всех 32-битных микроконтроллеров Atmel AVR на обоих JTAG и проводные интерфейсы
- Программирование и встроенная отладка всех устройств семейства Atmel AVR XMEGA® на обоих JTAG и двухпроводные интерфейсы PDI
- Программирование (JTAG, SPI, UPDI) и отладка всех 8-битных микроконтроллеров Atmel AVR с поддержкой OCD на любом JTAG, интерфейсы debugWIRE или UPDI
- Программирование и отладка всех микроконтроллеров Atmel SAM на базе ARM Cortex-M как на SWD, так и на JTAG интерфейсы
- Программирование (TPI) всех 8-битных микроконтроллеров Atmel tinyAVR® с поддержкой этого интерфейса
Обратитесь к списку поддерживаемых устройств в Руководстве пользователя Atmel Studio для получения полного списка устройств и интерфейсов, поддерживаемых этой версией микропрограммы.
Введение
1.1. Введение в Atmel-ICE
Atmel-ICE — это мощный инструмент разработки для отладки и программирования микроконтроллеров Atmel SAM и Atmel AVR на базе ARM Cortex-M с возможностью встроенной отладки.
Поддерживает:
- Программирование и встроенная отладка всех микроконтроллеров Atmel AVR UC3 на обоих JTAG и проводные интерфейсы
- Программирование и встроенная отладка всех устройств семейства AVR XMEGA на обоих JTAG и двухпроводные интерфейсы PDI
- Программирование (JTAG и SPI) и отладка всех 8-битных микроконтроллеров AVR с поддержкой OCD на обоих JTAG или интерфейсы debugWIRE
- Программирование и отладка всех микроконтроллеров Atmel SAM на базе ARM Cortex-M как на SWD, так и на JTAG интерфейсы
- Программирование (TPI) всех 8-битных микроконтроллеров Atmel tinyAVR с поддержкой этого интерфейса
1.2. Особенности Atmel-ICE
- Полностью совместим с AtmelStudio.
- Поддерживает программирование и отладку всех 3-разрядных микроконтроллеров Atmel AVR UC32.
- Поддерживает программирование и отладку всех 8-битных устройств AVR XMEGA.
- Поддерживает программирование и отладку всех 8-разрядных устройств Atmel megaAVR® и tinyAVR с OCD
- Поддерживает программирование и отладку всех микроконтроллеров на базе SAM ARM Cortex-M.
- Целевой операционный объемtagдиапазон от 1.62В до 5.5В
- Потребляет менее 3 мА от целевого VTref при использовании интерфейса debugWIRE и менее 1 мА для всех других интерфейсов.
- Поддерживает JTAG тактовые частоты от 32 кГц до 7.5 МГц
- Поддерживает тактовые частоты PDI от 32 кГц до 7.5 МГц.
- Поддерживает скорость передачи данных debugWIRE от 4 кбит/с до 0.5 Мбит/с
- Поддерживает скорость передачи по проводу от 7.5 кбит/с до 7 Мбит/с.
- Поддерживает тактовые частоты SPI от 8 кГц до 5 МГц.
- Поддерживает скорость передачи данных UPDI до 750 кбит/с.
- Поддерживает тактовые частоты SWD от 32 кГц до 10 МГц.
- Высокоскоростной хост-интерфейс USB 2.0
- Захват последовательной трассировки ITM со скоростью до 3 МБ/с
- Поддерживает интерфейсы DGI SPI и USART без отладки или программирования
- Поддерживает 10-контактный 50-мил JTAG разъем с распиновкой AVR и Cortex. Стандартный кабель зонда поддерживает 6-контактные разъемы AVR ISP/PDI/TPI 100 mil, а также 10-контактные разъемы 50 mil. Доступен адаптер для поддержки 6-контактных 50-мильных, 10-контактных 100-миловых и 20-контактных 100-миловых разъемов. Доступны несколько вариантов комплектов с различными кабелями и адаптерами.
1.3. Системные требования
Для модуля Atmel-ICE требуется, чтобы на вашем компьютере была установлена среда отладки внешнего интерфейса Atmel Studio версии 6.2 или более поздней.
Atmel-ICE должен быть подключен к главному компьютеру с помощью прилагаемого USB-кабеля или сертифицированного кабеля Micro-USB.
Начало работы с Atmel-ICE
2.1. Полный комплект
В полный комплект Atmel-ICE входят следующие элементы:
- Блок Atmel-ICE
- USB-кабель (1.8 м, высокоскоростной, Micro-B)
- Плата адаптера, содержащая адаптеры AVR 50 мил, AVR/SAM 100 мил и 100-контактный адаптер SAM 20 мил.
- Плоский кабель IDC с 10-контактным разъемом диаметром 50 мил и 6-контактным разъемом диаметром 100 мил
- 50-мил 10-контактный мини-кабель кальмара с 10 x 100-мил разъемами
Рисунок 2-1. Содержимое полного комплекта Atmel-ICE2.2. Содержимое основного комплекта
В базовый комплект Atmel-ICE входят следующие элементы:
- Блок Atmel-ICE
- USB-кабель (1.8 м, высокоскоростной, Micro-B)
- Плоский кабель IDC с 10-контактным разъемом диаметром 50 мил и 6-контактным разъемом диаметром 100 мил
Рисунок 2-2. Содержимое базового комплекта Atmel-ICE2.3. Содержимое комплекта печатной платы
В комплект Atmel-ICE PCBA входят следующие элементы:
- Блок Atmel-ICE без пластикового корпуса
Рисунок 2-3. Содержимое комплекта печатной платы Atmel-ICE2.4. Комплекты запасных частей
Доступны следующие комплекты запасных частей:
- Комплект адаптеров
- Комплект кабелей
Рисунок 2-4. Содержимое комплекта адаптера Atmel-ICE2.5. Комплект оконченview
Варианты комплекта Atmel-ICE схематично показаны здесь:
Рисунок 2-6. Комплект Atmel-ICE законченview2.6. Сборка Atmel-ICE
Блок Atmel-ICE поставляется без подключенных кабелей. В полном комплекте предусмотрено два варианта кабеля:
- 50-мил 10-контактный плоский кабель IDC с 6-контактным ISP и 10-контактными разъемами
- 50-контактный кабель mini-squid длиной 10 мил с 10 разъемами по 100 мил.
Рисунок 2-7. Кабели Atmel-ICEДля большинства целей можно использовать 50-миллиметровый 10-контактный плоский кабель IDC, подключаемый либо к его 10-контактным или 6-контактным разъемам, либо через плату адаптера. На одной небольшой печатной плате предусмотрено три адаптера. В комплекте следующие адаптеры:
- 100-мил 10-контактный JTAG/SWD-адаптер
- 100-мил 20-контактный SAM JTAG/SWD-адаптер
- 50-миллиметровый 6-контактный адаптер SPI/debugWIRE/PDI/aWire
Рисунок 2-8. Адаптеры Atmel-ICEПримечание:
50-мил ДжTAG адаптер не был предоставлен — это связано с тем, что 50-контактный кабель IDC диаметром 10 мил можно использовать для прямого подключения к 50-миллиметровому JTAG заголовок. Номер детали компонента, используемого для 50-контактного разъема толщиной 10 мил, см. в разделе Номера деталей целевых разъемов Atmel-ICE.
6-контактный разъем ISP/PDI входит в состав 10-контактного кабеля IDC. Это окончание можно отрезать, если оно не требуется.
Чтобы собрать Atmel-ICE в конфигурации по умолчанию, подключите 10-контактный кабель IDC длиной 50 мил к устройству, как показано ниже. Обязательно сориентируйте кабель так, чтобы красный провод (контакт 1) на кабеле совпадал с треугольным индикатором на синем поясе корпуса. Кабель должен подключаться вверх от устройства. Обязательно подключитесь к порту, соответствующему распиновке вашей цели — AVR или SAM.
Рисунок 2-9. Кабельное соединение Atmel-ICEРисунок 2-10. Подключение датчика Atmel-ICE AVR
Рисунок 2-11. Подключение зонда Atmel-ICE SAM
2.7. Открытие Atmel-ICE
Примечание:
Для нормальной работы блок Atmel-ICE открывать нельзя. Вскрытие блока производится на ваш страх и риск.
Необходимо принять антистатические меры.
Корпус Atmel-ICE состоит из трех отдельных пластиковых компонентов — верхней крышки, нижней крышки и синего ремня, — которые соединяются вместе во время сборки. Чтобы открыть устройство, просто вставьте большую плоскую отвертку в отверстия на синем ремне, слегка надавите внутрь и аккуратно поверните. Повторите процесс с другими отверстиями для защелки, и верхняя крышка снимется.
Рисунок 2-12. Открытие Atmel-ICE (1)
Рисунок 2-13. Открытие Atmel-ICE (2)
Рисунок 2-14. Открытие Atmel-ICE(3)
Чтобы снова закрыть устройство, просто правильно совместите верхнюю и нижнюю крышки и плотно прижмите друг к другу.
2.8. Питание Atmel-ICE
Atmel-ICE питается от шины USB vol.tagе. Для работы требуется менее 100 мА, поэтому питание может подаваться через концентратор USB. Индикатор питания загорается, когда устройство подключено к сети. Если устройство не подключено во время активного сеанса программирования или отладки, устройство переходит в режим низкого энергопотребления для сохранения заряда батареи вашего компьютера. Atmel-ICE нельзя выключать — его следует отключать от сети, когда он не используется.
2.9. Подключение к хост-компьютеру
Atmel-ICE обменивается данными в основном с использованием стандартного интерфейса HID и не требует специального драйвера на главном компьютере. Чтобы использовать расширенные функции шлюза данных Atmel-ICE, обязательно установите драйвер USB на хост-компьютер. Это делается автоматически при установке клиентского программного обеспечения, бесплатно предоставляемого Atmel. Видеть www.atmel.com для получения дополнительной информации или для загрузки последней версии внешнего программного обеспечения.
Atmel-ICE должен быть подключен к доступному USB-порту на главном компьютере с помощью прилагаемого USB-кабеля или подходящего сертифицированного USB-микрокабеля. Atmel-ICE содержит контроллер, совместимый с USB 2.0, и может работать как в полноскоростном, так и в высокоскоростном режимах. Для достижения наилучших результатов подключите Atmel-ICE напрямую к высокоскоростному концентратору, совместимому с USB 2.0, на главном компьютере с помощью прилагаемого кабеля.
2.10. Установка USB-драйвера
2.10.1 Окна
При установке Atmel-ICE на компьютер под управлением Microsoft® Windows® драйвер USB загружается при первом подключении Atmel-ICE.
Примечание:
Перед первым подключением устройства обязательно установите интерфейсные программные пакеты.
После успешной установки Atmel-ICE появится в диспетчере устройств как «Human Interface Device».
Подключение Atmel-ICE
3.1. Подключение к целевым устройствам AVR и SAM
Atmel-ICE оснащен двумя 50-миллиметровыми 10-контактными разъемами типа J.TAG соединители. Оба разъема имеют прямое электрическое соединение, но соответствуют двум разным выводам; АВР JTAG заголовок и заголовок ARM Cortex Debug. Разъем следует выбирать на основе распиновки целевой платы, а не целевого типа MCU — например,ample устройство SAM, установленное в стеке AVR STK® 600, должно использовать заголовок AVR.
Различные кабели и адаптеры доступны в различных комплектах Atmel-ICE. Болееview показан вариант подключения.
Рисунок 3-1. Варианты подключения Atmel-ICEКрасный провод обозначает контакт 1 10-контактного разъема диаметром 50 мил. Контакт 1 6-контактного разъема диаметром 100 mil расположен справа от ключа, если смотреть на разъем со стороны кабеля. Контакт 1 каждого разъема адаптера помечен белой точкой. На рисунке ниже показана разводка отладочного кабеля. Разъем с пометкой A подключается к отладчику, а разъем B подключается к целевой плате.
Рисунок 3-2. Распиновка отладочного кабеля
3.2. Подключение к JTAG Цель
Atmel-ICE оснащен двумя 50-миллиметровыми 10-контактными разъемами типа J.TAG соединители. Оба разъема имеют прямое электрическое соединение, но соответствуют двум разным выводам; АВР JTAG заголовок и заголовок ARM Cortex Debug. Разъем следует выбирать на основе распиновки целевой платы, а не целевого типа MCU — например,ample устройство SAM, установленное в стеке AVR STK600, должно использовать заголовок AVR.
Рекомендуемая распиновка для 10-контактного AVR JTAG разъем показан на рис. 4-6. Рекомендуемая разводка контактов для 10-контактного разъема отладки ARM Cortex показана на рис. 4-2.
Прямое подключение к стандартному 10-контактному разъему 50 mil
Используйте 50-миллиметровый 10-контактный плоский кабель (входит в некоторые комплекты) для прямого подключения к плате, поддерживающей этот тип разъема. Используйте порт разъема AVR на Atmel-ICE для заголовков с распиновкой AVR и порт разъема SAM для заголовков, соответствующих распиновке заголовка ARM Cortex Debug.
Распиновка обоих портов 10-контактного разъема показана ниже.
Подключение к стандартному 10-контактному разъему 100 mil
Используйте стандартный переходник с 50 мил на 100 мил для подключения к 100-миловым разъемам. Для этой цели можно использовать плату адаптера (входит в некоторые комплекты) или JTAGАдаптер ICE3 можно использовать для целей AVR.
Важный:
JTAGАдаптер ICE3 100 mil нельзя использовать с портом разъема SAM, так как контакты 2 и 10 (AVR GND) на адаптере соединены.
Подключение к пользовательскому 100-миловому заголовку
Если ваша целевая плата не имеет совместимого 10-контактного разъема JTAG разъема в 50 или 100 мил, вы можете сопоставить пользовательскую распиновку с помощью 10-контактного кабеля «мини-сквид» (входит в некоторые комплекты), который дает доступ к десяти отдельным 100-мильным разъемам.
Подключение к 20-контактной головке 100 milr
Используйте плату адаптера (входит в некоторые комплекты) для подключения к мишеням с 20-контактным разъемом 100 mil.
Таблица 3-1. Атмел-ICE JTAG Описание штифта
Имя | АВР штифт порта | СЭМ штифт порта | Описание |
ТСК | 1 | 4 | Test Clock (тактовый сигнал от Atmel-ICE на целевое устройство). |
ТМС | 5 | 2 | Выбор режима тестирования (управляющий сигнал от Atmel-ICE на целевое устройство). |
ТДИ | 9 | 8 | Test Data In (данные, передаваемые из Atmel-ICE в целевое устройство). |
TDO | 3 | 6 | Test Data Out (данные, переданные с целевого устройства в Atmel-ICE). |
нТРСТ | 8 | – | Сброс теста (необязательно, только на некоторых устройствах AVR). Используется для сброса JTAG ТАП-контроллер. |
нСРСТ | 6 | 10 | Сброс (необязательно). Используется для сброса целевого устройства. Рекомендуется подключать этот контакт, поскольку он позволяет Atmel-ICE удерживать целевое устройство в состоянии сброса, что может быть необходимо для отладки в определенных сценариях. |
ВТГ | 4 | 1 | Целевой объемtagе ссылка. Atmel-ICE sampцелевой объемtage на этом контакте для правильного питания преобразователей уровня. Atmel-ICE потребляет от этого вывода менее 3 мА в режиме debugWIRE и менее 1 мА в других режимах. |
Земля | 2, 10 | 3, 5, 9 | Земля. Все они должны быть подключены, чтобы гарантировать, что Atmel-ICE и целевое устройство используют одну и ту же точку заземления. |
3.3. Подключение к цели aWire
Для интерфейса aWire требуется только одна линия данных в дополнение к VCC и GND. На цели эта строка является строкой nRESET, хотя отладчик использует JTAG Линия TDO как линия данных.
Рекомендуемая разводка контактов 6-контактного разъема aWire показана на рис. 4-8.
Подключение к 6-контактному разъему 100-mil aWire
Используйте 6-контактный 100-миллиметровый ответвитель на плоском кабеле (входит в некоторые комплекты) для подключения к стандартному 100-миллиметровому разъему aWire.
Подключение к 6-контактному разъему 50-mil aWire
Используйте плату адаптера (входит в некоторые комплекты) для подключения к стандартному 50-миллиметровому разъему aWire.
Подключение к пользовательскому 100-миловому заголовку
10-контактный кабель mini-squid следует использовать для соединения порта разъема Atmel-ICE AVR и целевой платы. Требуются три соединения, как описано в таблице ниже.
Таблица 3-2. Сопоставление контактов Atmel-ICE aWire
Контакты порта Atmel-ICE AVR |
Целевые контакты | Мини-булавка кальмара |
распиновка провода |
Контакт 1 (ТКК) | 1 | ||
Pin 2 (GND) | Земля | 2 | 6 |
Контакт 3 (TDO) | ДАННЫЕ | 3 | 1 |
Контакт 4 (ВТГ) | ВТГ | 4 | 2 |
Контакт 5 (TMS) | 5 | ||
Контакт 6 (nSRST) | 6 | ||
Контакт 7 (не подключен) | 7 | ||
Контакт 8 (nTRST) | 8 | ||
Контакт 9 (ТДИ) | 9 | ||
Pin 10 (GND) | 0 |
3.4. Подключение к цели PDI
Рекомендуемая разводка контактов 6-контактного разъема PDI показана на рис. 4-11.
Подключение к 6-контактному разъему PDI 100 mil
Используйте 6-контактный разъем 100 mil на плоском кабеле (входит в некоторые комплекты) для подключения к стандартному разъему PDI 100 mil.
Подключение к 6-контактному разъему PDI 50 mil
Используйте плату адаптера (входит в некоторые комплекты) для подключения к стандартному разъему PDI 50 mil.
Подключение к пользовательскому 100-миловому заголовку
10-контактный кабель mini-squid следует использовать для соединения порта разъема Atmel-ICE AVR и целевой платы. Требуется четыре соединения, как описано в таблице ниже.
Важный:
Требуемая распиновка отличается от JTAGДВС mkII JTAG датчик, где PDI_DATA подключен к контакту 9. Atmel-ICE совместим с распиновкой, используемой Atmel-ICE, JTAGПродукты ICE3, AVR ONE! и AVR Dragon™.
Таблица 3-3. Сопоставление контактов Atmel-ICE PDI
Контакты порта Atmel-ICE AVR | Целевые контакты | Мини-булавка кальмара |
распиновка провода |
Контакт 1 (ТКК) | 1 | ||
Pin 2 (GND) | Земля | 2 | 6 |
Контакт 3 (TDO) | ДАННЫЕ | 3 | 1 |
Контакт 4 (ВТГ) | ВТГ | 4 | 2 |
Контакт 5 (TMS) | 5 | ||
Контакт 6 (nSRST) | 6 | ||
Контакт 7 (не подключен) | 7 | ||
Контакт 8 (nTRST) | 8 | ||
Контакт 9 (ТДИ) | 9 | ||
Pin 10 (GND) | 0 |
3.4 Подключение к цели PDI
Рекомендуемая разводка контактов 6-контактного разъема PDI показана на рис. 4-11.
Подключение к 6-контактному разъему PDI 100 mil
Используйте 6-контактный разъем 100 mil на плоском кабеле (входит в некоторые комплекты) для подключения к стандартному разъему PDI 100 mil.
Подключение к 6-контактному разъему PDI 50 mil
Используйте плату адаптера (входит в некоторые комплекты) для подключения к стандартному разъему PDI 50 mil.
Подключение к пользовательскому 100-миловому заголовку
10-контактный кабель mini-squid следует использовать для соединения порта разъема Atmel-ICE AVR и целевой платы. Требуется четыре соединения, как описано в таблице ниже.
Важный:
Требуемая распиновка отличается от JTAGДВС mkII JTAG датчик, где PDI_DATA подключен к контакту 9. Atmel-ICE совместим с распиновкой, используемой Atmel-ICE, JTAGICE3, AVR ONE! и AVR Dragon™ продукты.
Таблица 3-3. Сопоставление контактов Atmel-ICE PDI
Контакт порта Atmel-ICE AVR | Целевые контакты | Мини-булавка кальмара | Распиновка Atmel STK600 PDI |
Контакт 1 (ТКК) | 1 | ||
Pin 2 (GND) | Земля | 2 | 6 |
Контакт 3 (TDO) | PDI_DATA | 3 | 1 |
Контакт 4 (ВТГ) | ВТГ | 4 | 2 |
Контакт 5 (TMS) | 5 | ||
Контакт 6 (nSRST) | PDI_CLK | 6 | 5 |
Контакт 7 (не подключен) | 7 | ||
Контакт 8 (nTRST) | 8 | ||
Контакт 9 (ТДИ) | 9 | ||
Pin 10 (GND) | 0 |
3.5 Подключение к цели UPDI
Рекомендуемая разводка контактов 6-контактного разъема UPDI показана на рис. 4-12.
Подключение к 6-контактному разъему UPDI 100 mil
Используйте 6-контактный разъем 100 mil на плоском кабеле (входит в некоторые комплекты) для подключения к стандартному разъему UPDI 100 mil.
Подключение к 6-контактному разъему UPDI 50 mil
Используйте плату адаптера (входит в некоторые комплекты) для подключения к стандартному разъему UPDI 50 mil.
Подключение к пользовательскому 100-миловому заголовку
10-контактный кабель mini-squid следует использовать для соединения порта разъема Atmel-ICE AVR и целевой платы. Требуются три соединения, как описано в таблице ниже.
Таблица 3-4. Сопоставление контактов Atmel-ICE UPDI
Контакт порта Atmel-ICE AVR | Целевые контакты | Мини-булавка кальмара |
Распиновка Atmel STK600 UPDI |
Контакт 1 (ТКК) | 1 | ||
Pin 2 (GND) | Земля | 2 | 6 |
Контакт 3 (TDO) | УПДИ_ДАННЫЕ | 3 | 1 |
Контакт 4 (ВТГ) | ВТГ | 4 | 2 |
Контакт 5 (TMS) | 5 | ||
Контакт 6 (nSRST) | [/СБРОС] смысл] | 6 | 5 |
Контакт 7 (не подключен) | 7 | ||
Контакт 8 (nTRST) | 8 | ||
Контакт 9 (ТДИ) | 9 | ||
Pin 10 (GND) | 0 |
3.6 Подключение к цели debugWIRE
Рекомендуемая разводка контактов 6-контактного разъема debugWIRE (SPI) показана в таблице 3-6.
Подключение к 6-контактному разъему SPI 100 mil
Используйте 6-контактный разъем 100 mil на плоском кабеле (входит в некоторые комплекты) для подключения к стандартному разъему SPI 100 mil.
Подключение к 6-контактному разъему SPI 50 mil
Используйте плату адаптера (входит в некоторые комплекты) для подключения к стандартному разъему SPI 50 mil.
Подключение к пользовательскому 100-миловому заголовку
10-контактный кабель mini-squid следует использовать для соединения порта разъема Atmel-ICE AVR и целевой платы. Требуются три соединения, как описано в таблице 3-5.
Хотя для интерфейса debugWIRE требуется только одна сигнальная линия (RESET), VCC и GND для правильной работы, рекомендуется иметь доступ к полному разъему SPI, чтобы интерфейс debugWIRE можно было включать и отключать с помощью программирования SPI.
Когда предохранитель DWEN включен, интерфейс SPI переопределяется внутри, чтобы модуль OCD мог контролировать контакт RESET. OCD debugWIRE способен временно отключать себя (с помощью кнопки на вкладке отладки в диалоговом окне свойств в Atmel Studio), тем самым освобождая контроль над строкой RESET. После этого интерфейс SPI снова становится доступным (только если предохранитель SPIEN запрограммирован), что позволяет депрограммировать предохранитель DWEN с помощью интерфейса SPI. Если питание переключается до того, как предохранитель DWEN не запрограммирован, модуль debugWIRE снова возьмет на себя управление выводом RESET.
Примечание:
Настоятельно рекомендуется просто позволить Atmel Studio настроить и очистить предохранитель DWEN.
Невозможно использовать интерфейс debugWIRE, если биты блокировки на целевом устройстве AVR запрограммированы. Перед программированием фьюза DWEN всегда убедитесь, что биты блокировки очищены, и никогда не устанавливайте биты блокировки, пока запрограммирован фьюз DWEN. Если установлены предохранитель включения debugWIRE (DWEN) и биты блокировки, можно использовать High Vol.tage Программирование для стирания чипа и, таким образом, для очистки битов блокировки.
Когда биты блокировки будут очищены, интерфейс debugWIRE будет снова включен. Интерфейс SPI способен считывать фьюзы, читать подпись и выполнять стирание чипа только тогда, когда фьюз DWEN не запрограммирован.
Таблица 3-5. Сопоставление контактов Atmel-ICE debugWIRE
Контакт порта Atmel-ICE AVR | Целевые контакты |
Мини-булавка кальмара |
Контакт 1 (ТКК) | 1 | |
Pin 2 (GND) | Земля | 2 |
Контакт 3 (TDO) | 3 | |
Контакт 4 (ВТГ) | ВТГ | 4 |
Контакт 5 (TMS) | 5 | |
Контакт 6 (nSRST) | ПЕРЕЗАГРУЗИТЬ | 6 |
Контакт 7 (не подключен) | 7 | |
Контакт 8 (nTRST) | 8 | |
Контакт 9 (ТДИ) | 9 | |
Pin 10 (GND) | 0 |
3.7 Подключение к цели SPI
Рекомендуемая разводка контактов 6-контактного разъема SPI показана на рис. 4-10.
Подключение к 6-контактному разъему SPI 100 mil
Используйте 6-контактный разъем 100 mil на плоском кабеле (входит в некоторые комплекты) для подключения к стандартному разъему SPI 100 mil.
Подключение к 6-контактному разъему SPI 50 mil
Используйте плату адаптера (входит в некоторые комплекты) для подключения к стандартному разъему SPI 50 mil.
Подключение к пользовательскому 100-миловому заголовку
10-контактный кабель mini-squid следует использовать для соединения порта разъема Atmel-ICE AVR и целевой платы. Требуется шесть подключений, как описано в таблице ниже.
Важный:
Интерфейс SPI эффективно отключается, когда запрограммирован предохранитель включения debugWIRE (DWEN), даже если также запрограммирован предохранитель SPIEN. Чтобы снова включить интерфейс SPI, во время сеанса отладки debugWIRE необходимо выполнить команду «disable debugWIRE». Отключение debugWIRE таким образом требует, чтобы фьюз SPIEN уже был запрограммирован. Если в Atmel Studio не удается отключить отладку WIRE, возможно, это связано с тем, что предохранитель SPIEN НЕ запрограммирован. В этом случае необходимо использовать высоковольтныйtagИнтерфейс программирования для программирования предохранителя SPIEN.
Информация:
Интерфейс SPI часто называют «ISP», так как это был первый интерфейс системного программирования в продуктах Atmel AVR. Другие интерфейсы теперь доступны для системного программирования.
Таблица 3-6. Сопоставление выводов SPI Atmel-ICE
Контакты порта Atmel-ICE AVR | Целевые контакты | Мини-булавка кальмара |
Распиновка SPI |
Контакт 1 (ТКК) | SCK | 1 | 3 |
Pin 2 (GND) | Земля | 2 | 6 |
Контакт 3 (TDO) | МИСО | 3 | 1 |
Контакт 4 (ВТГ) | ВТГ | 4 | 2 |
Контакт 5 (TMS) | 5 | ||
Контакт 6 (nSRST) | / СБРОС НАСТРОЕК | 6 | 5 |
Контакт 7 (не подключен) | 7 | ||
Контакт 8 (nTRST) | 8 | ||
Контакт 9 (ТДИ) | MOSI | 9 | 4 |
Pin 10 (GND) | 0 |
3.8 Подключение к цели TPI
Рекомендуемая разводка контактов 6-контактного разъема TPI показана на рис. 4-13.
Подключение к 6-контактному разъему 100 mil TPI
Используйте 6-контактный разъем 100 mil на плоском кабеле (входит в некоторые комплекты) для подключения к стандартному разъему TPI 100 mil.
Подключение к 6-контактному разъему 50 mil TPI
Используйте плату адаптера (входит в некоторые комплекты) для подключения к стандартному разъему 50-mil TPI.
Подключение к пользовательскому 100-миловому заголовку
10-контактный кабель mini-squid следует использовать для соединения порта разъема Atmel-ICE AVR и целевой платы. Требуется шесть подключений, как описано в таблице ниже.
Таблица 3-7. Сопоставление выводов Atmel-ICE TPI
Контакты порта Atmel-ICE AVR | Целевые контакты | Мини-булавка кальмара |
распиновка TPI |
Контакт 1 (ТКК) | ЧАСЫ | 1 | 3 |
Pin 2 (GND) | Земля | 2 | 6 |
Контакт 3 (TDO) | ДАННЫЕ | 3 | 1 |
Контакт 4 (ВТГ) | ВТГ | 4 | 2 |
Контакт 5 (TMS) | 5 |
Контакт 6 (nSRST) | / СБРОС НАСТРОЕК | 6 | 5 |
Контакт 7 (не подключен) | 7 | ||
Контакт 8 (nTRST) | 8 | ||
Контакт 9 (ТДИ) | 9 | ||
Pin 10 (GND) | 0 |
3.9 Подключение к цели SWD
Интерфейс ARM SWD является подмножеством JTAG интерфейса с использованием контактов TCK и TMS, что означает, что при подключении к SWD-устройству 10-контактный разъем JTAG разъем технически можно использовать. АРМ Дж.TAG и АВР Дж.TAG разъемы, однако, не совместимы по контактам, поэтому это зависит от схемы используемой целевой платы. При использовании STK600 или платы с использованием AVR JTAG выводов, необходимо использовать порт разъема AVR на Atmel-ICE. При подключении к плате, которая использует ARM JTAG выводов, необходимо использовать порт разъема SAM на Atmel-ICE.
Рекомендуемая разводка контактов 10-контактного разъема Cortex Debug показана на рис. 4-4.
Подключение к 10-контактному разъему Cortex 50 mil
Используйте плоский кабель (входит в некоторые комплекты) для подключения к стандартному разъему Cortex диаметром 50 мил.
Подключение к 10-контактному разъему Cortex-layout 100 mil
Используйте плату адаптера (входит в некоторые комплекты) для подключения к 100-миллиметровому разъему Cortex-pinout.
Подключение к 20-контактному разъему SAM 100 mil
Используйте плату адаптера (входит в некоторые комплекты) для подключения к 20-контактному разъему SAM размером 100 мил.
Подключение к пользовательскому 100-миловому заголовку
10-контактный кабель mini-squid следует использовать для соединения между портом разъема Atmel-ICE AVR или SAM и целевой платой. Требуется шесть подключений, как описано в таблице ниже.
Таблица 3-8. Сопоставление контактов Atmel-ICE SWD
Имя | АВР штифт порта | СЭМ штифт порта | Описание |
SWDC ЛК | 1 | 4 | Часы отладки последовательного провода. |
СВДИО | 5 | 2 | Ввод/вывод данных последовательной проводной отладки. |
SWO | 3 | 6 | Последовательный проводной выход (опционально, реализован не на всех устройствах). |
нСРСТ | 6 | 10 | Перезагрузить. |
ВТГ | 4 | 1 | Целевой объемtagе ссылка. |
Земля | 2, 10 | 3, 5, 9 | Земля. |
3.10 Подключение к интерфейсу шлюза данных
Atmel-ICE поддерживает ограниченный интерфейс шлюза данных (DGI), когда отладка и программирование не используются. Функциональность идентична комплектам Atmel Xplained Pro на базе устройства Atmel EDBG.
Интерфейс Data Gateway — это интерфейс для потоковой передачи данных с целевого устройства на компьютер. Это предназначено для помощи в отладке приложения, а также для демонстрации функций приложения, работающего на целевом устройстве.
DGI состоит из нескольких каналов для потоковой передачи данных. Atmel-ICE поддерживает следующие режимы:
- USART
- СПИ
Таблица 3-9. Распиновка Atmel-ICE DGI USART
AVR-порт |
SAM-порт | Штифт DGI USART |
Описание |
3 | 6 | TX | Передать PIN-код от Atmel-ICE на целевое устройство |
4 | 1 | ВТГ | Целевой объемtage (ссылка об.tage) |
8 | 7 | RX | Получение пин-кода от целевого устройства на Atmel-ICE |
9 | 8 | КЛК | USART часы |
2, 10 | 3, 5, 9 | Земля | Земля |
Таблица 3-10. Распиновка Atmel-ICE DGI SPI
AVR-порт |
SAM-порт | Вывод DGI SPI |
Описание |
1 | 4 | SCK | Часы SPI |
3 | 6 | МИСО | Мастер в рабе |
4 | 1 | ВТГ | Целевой объемtage (ссылка об.tage) |
5 | 2 | нКС | Чип выбирает активный минимум |
9 | 8 | MOSI | Мастер из раба в |
2, 10 | 3, 5, 9 | Земля | Земля |
Важный: Интерфейсы SPI и USART нельзя использовать одновременно.
Важный: DGI и программирование или отладка не могут использоваться одновременно.
Встроенная отладка
4.1 Введение
Встроенная отладка
Встроенный модуль отладки — это система, позволяющая разработчику отслеживать и контролировать выполнение на устройстве с внешней платформы разработки, обычно через устройство, известное как отладчик или адаптер отладки.
С системой OCD приложение может выполняться, сохраняя точные электрические и временные характеристики в целевой системе, при этом имея возможность остановить выполнение условно или вручную и проверить поток программы и память.
Режим работы
В режиме Run выполнение кода полностью не зависит от Atmel-ICE. Atmel-ICE будет постоянно контролировать целевое устройство, чтобы увидеть, не произошло ли прерывание. Когда это происходит, система OCD будет опрашивать устройство через интерфейс отладки, позволяя пользователю view внутреннее состояние устройства.
Остановленный режим
Когда достигается точка останова, выполнение программы останавливается, но некоторые операции ввода-вывода могут продолжать выполняться, как если бы точки останова не было. Для бывшегоample, предположим, что передача USART только что была инициирована, когда достигнута точка останова. В этом случае USART продолжает работать на полной скорости, завершая передачу, даже если ядро находится в остановленном режиме.
Аппаратные точки останова
Целевой модуль OCD содержит ряд компараторов программных счетчиков, реализованных в аппаратных средствах. Когда программный счетчик совпадает со значением, хранящимся в одном из регистров компаратора, OCD переходит в режим остановки. Поскольку для аппаратных точек останова требуется специальное оборудование в модуле OCD, количество доступных точек останова зависит от размера модуля OCD, реализованного в целевом устройстве. Обычно один такой аппаратный компаратор «зарезервирован» отладчиком для внутреннего использования.
Программные точки останова
Программная точка останова — это инструкция BREAK, помещенная в память программы на целевом устройстве. При загрузке этой инструкции выполнение программы прерывается, и OCD переходит в режим остановки. Для продолжения выполнения необходимо подать команду «старт» с OCD. Не все устройства Atmel имеют модули OCD, поддерживающие инструкцию BREAK.
4.2 Устройства SAM с JTAG/SWD
Все устройства SAM оснащены интерфейсом SWD для программирования и отладки. Кроме того, некоторые устройства SAM имеют JTAG интерфейс с идентичным функционалом. Проверьте техническое описание устройства, чтобы узнать о поддерживаемых интерфейсах этого устройства.
4.2.1. Компоненты ARM CoreSight
В микроконтроллерах Atmel на базе ARM Cortex-M реализованы компоненты OCD, совместимые с CoreSight. Функции этих компонентов могут варьироваться от устройства к устройству. Для получения дополнительной информации обратитесь к техническому описанию устройства, а также к документации CoreSight, предоставленной ARM.
4.2.1.ДжTAG Физический интерфейс
JTAG Интерфейс состоит из 4-проводного контроллера тестового порта доступа (TAP), совместимого с IEEE.® стандарт 1149.1. Стандарт IEEE был разработан, чтобы обеспечить стандартный для отрасли способ эффективного тестирования подключения печатной платы (Boundary Scan). Устройства Atmel AVR и SAM расширили эту функциональность, включив полную поддержку программирования и встроенной отладки.
Рисунок 4-1. ДжTAG Основы интерфейса
4.2.2.1 САМ JTAG Распиновка (отладочный разъем Cortex-M)
При разработке прикладной печатной платы, которая включает в себя Atmel SAM с JTAG интерфейса рекомендуется использовать распиновку, как показано на рисунке ниже. Поддерживаются варианты этой распиновки как на 100, так и на 50 мил, в зависимости от кабелей и адаптеров, входящих в конкретный комплект.
Рисунок 4-2. Сэм Дж.TAG Распиновка заголовка
Таблица 4-1. Сэм Дж.TAG Описание штифта
Имя | Приколоть |
Описание |
ТСК | 4 | Test Clock (тактовый сигнал от Atmel-ICE на целевое устройство). |
ТМС | 2 | Выбор режима тестирования (управляющий сигнал от Atmel-ICE на целевое устройство). |
ТДИ | 8 | Test Data In (данные, передаваемые из Atmel-ICE в целевое устройство). |
TDO | 6 | Test Data Out (данные, переданные с целевого устройства в Atmel-ICE). |
nСБРОС | 10 | Сброс (необязательно). Используется для сброса целевого устройства. Рекомендуется подключать этот контакт, поскольку он позволяет Atmel-ICE удерживать целевое устройство в состоянии сброса, что может быть необходимо для отладки в определенных сценариях. |
ВТГ | 1 | Целевой объемtagе ссылка. Atmel-ICE sampцелевой объемtage на этом контакте для правильного питания преобразователей уровня. В этом режиме Atmel-ICE потребляет от этого вывода менее 1 мА. |
Земля | 3, 5, 9 | Земля. Все они должны быть подключены, чтобы гарантировать, что Atmel-ICE и целевое устройство используют одну и ту же точку заземления. |
КЛЮЧ | 7 | Внутренне подключен к контакту TRST на разъеме AVR. Рекомендуется как не подключенный. |
Кончик: Не забудьте включить развязывающий конденсатор между контактом 1 и GND.
4.2.2.2 ДжTAG Дэйзи Цепочка
JTAG Интерфейс позволяет подключать несколько устройств к одному интерфейсу в конфигурации гирляндной цепи. Все целевые устройства должны питаться от одного и того же источника питания.tage, имеют общий узел заземления и должны быть подключены, как показано на рисунке ниже.
Рисунок 4-3. ДжTAG Цепочка из гирлянд
При подключении устройств в гирляндную цепь необходимо учитывать следующие моменты:
- Все устройства должны иметь общее заземление, подключенное к GND на зонде Atmel-ICE.
- Все устройства должны работать на одном целевом томе.tagе. VTG на Atmel-ICE должен быть подключен к этому объему.tage.
- TMS и TCK подключены параллельно; TDI и TDO соединены последовательно
- nSRST на зонде Atmel-ICE должен быть подключен к RESET на устройствах, если какое-либо из устройств в цепочке отключает свой JTAG порт
- «Устройства до» относится к количеству JTAG устройств, через которые сигнал TDI должен пройти в гирляндной цепи, прежде чем достигнет целевого устройства. Точно так же «устройства после» — это количество устройств, через которые должен пройти сигнал после целевого устройства, прежде чем он достигнет TDO Atmel-ICE.
- «Биты инструкции «до» и «после» относятся к общей сумме всех JTAG длины регистров инструкций устройств, которые подключены до и после целевого устройства в гирляндной цепочке
- Общая длина IR (биты инструкции до + длина IR целевого устройства Atmel + биты инструкции после) ограничена максимум 256 битами. Количество устройств в цепочке ограничено 15 до и 15 после.
Кончик:
Дэйзи цепочка бывшаяampфайл: TDI → ATmega1280 → ATxmega128A1 → ATUC3A0512 → TDO.
Для подключения к Atmel AVR XMEGA® устройства, настройки гирляндной цепи следующие:
- Устройства до: 1
- Устройства после: 1
- Биты инструкции перед: 4 (8-битные устройства AVR имеют 4 бита IR)
- Биты инструкции после: 5 (32-битные устройства AVR имеют 5 битов IR)
Таблица 4-2. Длина ИК микроконтроллеров Atmel
Тип устройства | ИК длина |
АВР 8-бит | 4 бит |
АВР 32-бит | 5 бит |
СЭМ | 4 бит |
4.2.3. Подключение к JTAG Цель
Atmel-ICE оснащен двумя 50-миллиметровыми 10-контактными разъемами типа J.TAG соединители. Оба разъема имеют прямое электрическое соединение, но соответствуют двум разным выводам; АВР JTAG заголовок и заголовок ARM Cortex Debug. Разъем следует выбирать на основе распиновки целевой платы, а не целевого типа MCU — например,ample устройство SAM, установленное в стеке AVR STK600, должно использовать заголовок AVR.
Рекомендуемая распиновка для 10-контактного AVR JTAG разъем показан на рис. 4-6.
Рекомендуемая разводка контактов для 10-контактного разъема отладки ARM Cortex показана на рис. 4-2.
Прямое подключение к стандартному 10-контактному разъему 50 mil
Используйте 50-миллиметровый 10-контактный плоский кабель (входит в некоторые комплекты) для прямого подключения к плате, поддерживающей этот тип разъема. Используйте порт разъема AVR на Atmel-ICE для заголовков с распиновкой AVR и порт разъема SAM для заголовков, соответствующих распиновке заголовка ARM Cortex Debug.
Распиновка обоих портов 10-контактного разъема показана ниже.
Подключение к стандартному 10-контактному разъему 100 mil
Используйте стандартный переходник с 50 мил на 100 мил для подключения к 100-миловым разъемам. Для этой цели можно использовать плату адаптера (входит в некоторые комплекты) или JTAGАдаптер ICE3 можно использовать для целей AVR.
Важный:
JTAGАдаптер ICE3 100 mil нельзя использовать с портом разъема SAM, так как контакты 2 и 10 (AVR GND) на адаптере соединены.
Подключение к пользовательскому 100-миловому заголовку
Если ваша целевая плата не имеет совместимого 10-контактного разъема JTAG разъема в 50 или 100 мил, вы можете сопоставить пользовательскую распиновку с помощью 10-контактного кабеля «мини-сквид» (входит в некоторые комплекты), который дает доступ к десяти отдельным 100-мильным разъемам.
Подключение к 20-контактному разъему 100 mil
Используйте плату адаптера (входит в некоторые комплекты) для подключения к мишеням с 20-контактным разъемом 100 mil.
Таблица 4-3. Атмел-ICE JTAG Описание штифта
Имя | АВР штифт порта | СЭМ штифт порта | Описание |
ТСК | 1 | 4 | Test Clock (тактовый сигнал от Atmel-ICE на целевое устройство). |
ТМС | 5 | 2 | Выбор режима тестирования (управляющий сигнал от Atmel-ICE на целевое устройство). |
ТДИ | 9 | 8 | Test Data In (данные, передаваемые из Atmel-ICE в целевое устройство). |
TDO | 3 | 6 | Test Data Out (данные, переданные с целевого устройства в Atmel-ICE). |
нТРСТ | 8 | – | Сброс теста (необязательно, только на некоторых устройствах AVR). Используется для сброса JTAG ТАП-контроллер. |
нСРСТ | 6 | 10 | Сброс (необязательно). Используется для сброса целевого устройства. Рекомендуется подключать этот контакт, поскольку он позволяет Atmel-ICE удерживать целевое устройство в состоянии сброса, что может быть необходимо для отладки в определенных сценариях. |
ВТГ | 4 | 1 | Целевой объемtagе ссылка. Atmel-ICE sampцелевой объемtage на этом контакте для правильного питания преобразователей уровня. Atmel-ICE потребляет от этого вывода менее 3 мА в режиме debugWIRE и менее 1 мА в других режимах. |
Земля | 2, 10 | 3, 5, 9 | Земля. Все они должны быть подключены, чтобы гарантировать, что Atmel-ICE и целевое устройство используют одну и ту же точку заземления. |
4.2.4. Физический интерфейс SWD
Интерфейс ARM SWD является подмножеством JTAG интерфейс, использующий контакты TCK и TMS. АРМ Дж.TAG и АВР Дж.TAG разъемы, однако, не совместимы по выводам, поэтому при проектировании прикладной печатной платы, в которой используется устройство SAM с SWD или JTAG интерфейса рекомендуется использовать распиновку ARM, показанную на рисунке ниже. Порт разъема SAM на Atmel-ICE может подключаться напрямую к этой распиновке.
Рисунок 4-4. Рекомендуемый ARM SWD/JTAG Распиновка заголовка
Atmel-ICE может передавать трассировку ITM в формате UART на главный компьютер. Трассировка захватывается на контакте TRACE/SWO 10-контактного разъема (JTAG контакт TDO). Данные буферизуются внутри Atmel-ICE и отправляются через интерфейс HID на главный компьютер. Максимальная надежная скорость передачи данных составляет около 3 МБ/с.
4.2.5. Подключение к цели SWD
Интерфейс ARM SWD является подмножеством JTAG интерфейса с использованием контактов TCK и TMS, что означает, что при подключении к SWD-устройству 10-контактный разъем JTAG разъем технически можно использовать. АРМ Дж.TAG и АВР Дж.TAG разъемы, однако, не совместимы по контактам, поэтому это зависит от схемы используемой целевой платы. При использовании STK600 или платы с использованием AVR JTAG выводов, необходимо использовать порт разъема AVR на Atmel-ICE. При подключении к плате, которая использует ARM JTAG выводов, необходимо использовать порт разъема SAM на Atmel-ICE.
Рекомендуемая разводка контактов 10-контактного разъема Cortex Debug показана на рис. 4-4.
Подключение к 10-контактному разъему Cortex 50 mil
Используйте плоский кабель (входит в некоторые комплекты) для подключения к стандартному разъему Cortex диаметром 50 мил.
Подключение к 10-контактному разъему Cortex-layout 100 mil
Используйте плату адаптера (входит в некоторые комплекты) для подключения к 100-миллиметровому разъему Cortex-pinout.
Подключение к 20-контактному разъему SAM 100 mil
Используйте плату адаптера (входит в некоторые комплекты) для подключения к 20-контактному разъему SAM размером 100 мил.
Подключение к пользовательскому 100-миловому заголовку
10-контактный кабель mini-squid следует использовать для соединения между портом разъема Atmel-ICE AVR или SAM и целевой платой. Требуется шесть подключений, как описано в таблице ниже.
Таблица 4-4. Сопоставление контактов Atmel-ICE SWD
Имя | АВР штифт порта | СЭМ штифт порта | Описание |
SWDC ЛК | 1 | 4 | Часы отладки последовательного провода. |
СВДИО | 5 | 2 | Ввод/вывод данных последовательной проводной отладки. |
SWO | 3 | 6 | Последовательный проводной выход (опционально, реализован не на всех устройствах). |
нСРСТ | 6 | 10 | Перезагрузить. |
ВТГ | 4 | 1 | Целевой объемtagе ссылка. |
Земля | 2, 10 | 3, 5, 9 | Земля. |
4.2.6 Особые соображения
УДАЛИТЬ булавку
Некоторые устройства SAM включают контакт ERASE, который, как утверждается, выполняет полное стирание чипа и разблокировку устройств, на которых установлен бит безопасности. Эта функция связана с самим устройством, а также с контроллером флэш-памяти и не является частью ядра ARM.
Вывод ERASE НЕ является частью какого-либо заголовка отладки, и поэтому Atmel-ICE не может установить этот сигнал для разблокировки устройства. В таких случаях пользователь должен выполнить стирание вручную перед запуском сеанса отладки.
Физические интерфейсы JTAG интерфейс
Линия RESET всегда должна быть подключена, чтобы Atmel-ICE мог активировать JTAG интерфейс.
SWD-интерфейс
Линия RESET всегда должна быть подключена, чтобы Atmel-ICE мог включить интерфейс SWD.
4.3 Устройства AVR UC3 с JTAG/провод
Все устройства AVR UC3 имеют JTAG интерфейс для программирования и отладки. Кроме того, некоторые устройства AVR UC3 оснащены интерфейсом aWire с идентичными функциями, использующими один провод. Проверьте техническое описание устройства, чтобы узнать о поддерживаемых интерфейсах этого устройства.
4.3.1 Встроенная система отладки Atmel AVR UC3
Система OCD Atmel AVR UC3 разработана в соответствии со стандартом Nexus 2.0 (IEEE-ISTO 5001™-2003), который является очень гибким и мощным открытым стандартом отладки на кристалле для 32-разрядных микроконтроллеров. Он поддерживает следующие функции:
- Решение для отладки, совместимое с Nexus
- OCD поддерживает любую скорость процессора
- Шесть аппаратных точек останова счетчика команд
- Две точки останова данных
- Точки останова могут быть настроены как точки наблюдения
- Аппаратные точки останова можно комбинировать, чтобы разбивать диапазоны.
- Неограниченное количество точек останова пользовательской программы (используя BREAK)
- Трассировка счетчика программ в реальном времени, трассировка данных, трассировка процесса (поддерживается только отладчиками с параллельным портом захвата трассировки)
Для получения дополнительной информации о системе OCD AVR UC3 обратитесь к техническим справочным руководствам AVR32UC, расположенным на www.atmel.com/uc3.
4.3.2.ДжTAG Физический интерфейс
JTAG Интерфейс состоит из 4-проводного контроллера тестового порта доступа (TAP), совместимого с IEEE.® стандарт 1149.1. Стандарт IEEE был разработан, чтобы обеспечить стандартный для отрасли способ эффективного тестирования подключения печатной платы (Boundary Scan). Устройства Atmel AVR и SAM расширили эту функциональность, включив полную поддержку программирования и встроенной отладки.
Рисунок 4-5. ДжTAG Основы интерфейса
4.3.2.1 АРН JTAG Распиновка
При разработке прикладной печатной платы, которая включает в себя Atmel AVR с JTAG интерфейса рекомендуется использовать распиновку, как показано на рисунке ниже. Поддерживаются варианты этой распиновки как на 100, так и на 50 мил, в зависимости от кабелей и адаптеров, входящих в конкретный комплект.
Рисунок 4-6. АВР JTAG Распиновка заголовка
Стол 4-5. АВР JTAG Описание штифта
Имя | Приколоть |
Описание |
ТСК | 1 | Test Clock (тактовый сигнал от Atmel-ICE на целевое устройство). |
ТМС | 5 | Выбор режима тестирования (управляющий сигнал от Atmel-ICE на целевое устройство). |
ТДИ | 9 | Test Data In (данные, передаваемые из Atmel-ICE в целевое устройство). |
TDO | 3 | Test Data Out (данные, переданные с целевого устройства в Atmel-ICE). |
нТРСТ | 8 | Сброс теста (необязательно, только на некоторых устройствах AVR). Используется для сброса JTAG ТАП-контроллер. |
нСРСТ | 6 | Сброс (необязательно). Используется для сброса целевого устройства. Рекомендуется подключать этот контакт, поскольку он позволяет Atmel-ICE удерживать целевое устройство в состоянии сброса, что может быть необходимо для отладки в определенных сценариях. |
ВТГ | 4 | Целевой объемtagе ссылка. Atmel-ICE sampцелевой объемtage на этом контакте для правильного питания преобразователей уровня. Atmel-ICE потребляет от этого вывода менее 3 мА в режиме debugWIRE и менее 1 мА в других режимах. |
Земля | 2, 10 | Земля. Оба должны быть подключены, чтобы гарантировать, что Atmel-ICE и целевое устройство используют одну и ту же точку заземления. |
Кончик: Не забудьте включить развязывающий конденсатор между контактом 4 и GND.
4.3.2.2 ДжTAG Дэйзи Цепочка
JTAG Интерфейс позволяет подключать несколько устройств к одному интерфейсу в конфигурации гирляндной цепи. Все целевые устройства должны питаться от одного и того же источника питания.tage, имеют общий узел заземления и должны быть подключены, как показано на рисунке ниже.
Рисунок 4-7. ДжTAG Цепочка из гирлянд
При подключении устройств в гирляндную цепь необходимо учитывать следующие моменты:
- Все устройства должны иметь общее заземление, подключенное к GND на зонде Atmel-ICE.
- Все устройства должны работать на одном целевом томе.tagе. VTG на Atmel-ICE должен быть подключен к этому объему.tage.
- TMS и TCK подключены параллельно; TDI и TDO соединены в последовательную цепочку.
- nSRST на зонде Atmel-ICE должен быть подключен к RESET на устройствах, если какое-либо из устройств в цепочке отключает свой JTAG порт
- «Устройства до» относится к количеству JTAG устройств, через которые сигнал TDI должен пройти в гирляндной цепи, прежде чем достигнет целевого устройства. Точно так же «устройства после» — это количество устройств, через которые должен пройти сигнал после целевого устройства, прежде чем он достигнет TDO Atmel-ICE.
- «Биты инструкции «до» и «после» относятся к общей сумме всех JTAG длины регистров инструкций устройств, которые подключены до и после целевого устройства в гирляндной цепочке
- Общая длина IR (биты инструкции до + длина IR целевого устройства Atmel + биты инструкции после) ограничена максимум 256 битами. Количество устройств в цепочке ограничено 15 до и 15 после.
Кончик:
Дэйзи цепочка бывшаяampфайл: TDI → ATmega1280 → ATxmega128A1 → ATUC3A0512 → TDO.
Для подключения к Atmel AVR XMEGA® устройства, настройки гирляндной цепи следующие:
- Устройства до: 1
- Устройства после: 1
- Биты инструкции перед: 4 (8-битные устройства AVR имеют 4 бита IR)
- Биты инструкции после: 5 (32-битные устройства AVR имеют 5 битов IR)
Таблица 4-6. ИК длины Atmel MCUS
Тип устройства | ИК длина |
АВР 8-бит | 4 бит |
АВР 32-бит | 5 бит |
СЭМ | 4 бит |
4.3.3.Подключение к JTAG Цель
Atmel-ICE оснащен двумя 50-миллиметровыми 10-контактными разъемами типа J.TAG соединители. Оба разъема имеют прямое электрическое соединение, но соответствуют двум разным выводам; АВР JTAG заголовок и заголовок ARM Cortex Debug. Разъем следует выбирать на основе распиновки целевой платы, а не целевого типа MCU — например,ample устройство SAM, установленное в стеке AVR STK600, должно использовать заголовок AVR.
Рекомендуемая распиновка для 10-контактного AVR JTAG разъем показан на рис. 4-6.
Рекомендуемая разводка контактов для 10-контактного разъема отладки ARM Cortex показана на рис. 4-2.
Прямое подключение к стандартному 10-контактному разъему 50 mil
Используйте 50-миллиметровый 10-контактный плоский кабель (входит в некоторые комплекты) для прямого подключения к плате, поддерживающей этот тип разъема. Используйте порт разъема AVR на Atmel-ICE для заголовков с распиновкой AVR и порт разъема SAM для заголовков, соответствующих распиновке заголовка ARM Cortex Debug.
Распиновка обоих портов 10-контактного разъема показана ниже.
Подключение к стандартному 10-контактному разъему 100 mil
Используйте стандартный переходник с 50 мил на 100 мил для подключения к 100-миловым разъемам. Для этой цели можно использовать плату адаптера (входит в некоторые комплекты) или JTAGАдаптер ICE3 можно использовать для целей AVR.
Важный:
JTAGАдаптер ICE3 100 mil нельзя использовать с портом разъема SAM, так как контакты 2 и 10 (AVR GND) на адаптере соединены.
Подключение к пользовательскому 100-миловому заголовку
Если ваша целевая плата не имеет совместимого 10-контактного разъема JTAG разъема в 50 или 100 мил, вы можете сопоставить пользовательскую распиновку с помощью 10-контактного кабеля «мини-сквид» (входит в некоторые комплекты), который дает доступ к десяти отдельным 100-мильным разъемам.
Подключение к 20-контактному разъему 100 mil
Используйте плату адаптера (входит в некоторые комплекты) для подключения к мишеням с 20-контактным разъемом 100 mil.
Таблица 4-7. Атмел-ICE JTAG Описание штифта
Имя |
Контакт порта AVR | Контакт порта SAM |
Описание |
ТСК | 1 | 4 | Test Clock (тактовый сигнал от Atmel-ICE на целевое устройство). |
ТМС | 5 | 2 | Выбор режима тестирования (управляющий сигнал от Atmel-ICE на целевое устройство). |
ТДИ | 9 | 8 | Test Data In (данные, передаваемые из Atmel-ICE в целевое устройство). |
TDO | 3 | 6 | Test Data Out (данные, переданные с целевого устройства в Atmel-ICE). |
нТРСТ | 8 | – | Сброс теста (необязательно, только на некоторых устройствах AVR). Используется для сброса JTAG ТАП-контроллер. |
нСРСТ | 6 | 10 | Сброс (необязательно). Используется для сброса целевого устройства. Рекомендуется подключать этот контакт, поскольку он позволяет Atmel-ICE удерживать целевое устройство в состоянии сброса, что может быть необходимо для отладки в определенных сценариях. |
ВТГ | 4 | 1 | Целевой объемtagе ссылка. Atmel-ICE sampцелевой объемtage на этом контакте для правильного питания преобразователей уровня. Atmel-ICE потребляет от этого вывода менее 3 мА в режиме debugWIRE и менее 1 мА в других режимах. |
Земля | 2, 10 | 3, 5, 9 | Земля. Все они должны быть подключены, чтобы гарантировать, что Atmel-ICE и целевое устройство используют одну и ту же точку заземления. |
4.3.4 Проводной физический интерфейс
Интерфейс aWire использует провод RESET устройства AVR для обеспечения функций программирования и отладки. Atmel-ICE передает специальную последовательность включения, которая отключает функцию RESET по умолчанию для контакта. -4. Поддерживаются варианты этой распиновки как на 8, так и на 100 мил, в зависимости от кабелей и адаптеров, входящих в конкретный комплект.
Рисунок 4-8. Распиновка разъема aWire
Кончик:
Поскольку aWire является полудуплексным интерфейсом, рекомендуется использовать подтягивающий резистор на линии RESET порядка 47 кОм, чтобы избежать ложного обнаружения начального бита при изменении направления.
Интерфейс aWire можно использовать как для программирования, так и для отладки. Все функции системы OCD доступны через 10-контактный JTAG Доступ к интерфейсу также можно получить с помощью aWire.
4.3.5 Подключение к цели aWire
Для интерфейса aWire требуется только одна линия данных в дополнение к VCC и ЗЕМЛЯ. На цели эта строка является строкой nRESET, хотя отладчик использует JTAG Линия TDO как линия данных.
Рекомендуемая разводка контактов 6-контактного разъема aWire показана на рис. 4-8.
Подключение к 6-контактному разъему 100-mil aWire
Используйте 6-контактный 100-миллиметровый ответвитель на плоском кабеле (входит в некоторые комплекты) для подключения к стандартному 100-миллиметровому разъему aWire.
Подключение к 6-контактному разъему 50-mil aWire
Используйте плату адаптера (входит в некоторые комплекты) для подключения к стандартному 50-миллиметровому разъему aWire.
Подключение к пользовательскому 100-миловому заголовку
10-контактный кабель mini-squid следует использовать для соединения порта разъема Atmel-ICE AVR и целевой платы. Требуются три соединения, как описано в таблице ниже.
Таблица 4-8. Сопоставление контактов Atmel-ICE aWire
Контакты порта Atmel-ICE AVR | Целевые контакты | Мини-булавка кальмара |
распиновка провода |
Контакт 1 (ТКК) | 1 | ||
Pin 2 (GND) | Земля | 2 | 6 |
Контакт 3 (TDO) | ДАННЫЕ | 3 | 1 |
Контакт 4 (ВТГ) | ВТГ | 4 | 2 |
Контакт 5 (TMS) | 5 | ||
Контакт 6 (nSRST) | 6 | ||
Контакт 7 (не подключен) | 7 | ||
Контакт 8 (nTRST) | 8 | ||
Контакт 9 (ТДИ) | 9 | ||
Pin 10 (GND) | 0 |
4.3.6 Особые соображения
JTAG интерфейс
На некоторых устройствах Atmel AVR UC3 значок JTAG порт не включен по умолчанию. При использовании этих устройств необходимо подключить линию RESET, чтобы Atmel-ICE мог активировать JTAG интерфейс.
проводной интерфейс
Скорость передачи данных по сети aWire зависит от частоты системных часов, поскольку данные должны синхронизироваться между этими двумя доменами. Atmel-ICE автоматически обнаружит, что системные часы были понижены, и соответствующим образом повторно откалибрует свою скорость передачи данных. Автоматическая калибровка работает только до системной тактовой частоты 8 кГц. Переключение на более низкие системные часы во время сеанса отладки может привести к потере контакта с целью.
При необходимости скорость передачи aWire можно ограничить, установив параметр часов aWire. Автоматическое обнаружение по-прежнему будет работать, но к результатам будет применено максимальное значение.
Любой стабилизирующий конденсатор, подключенный к контакту RESET, должен быть отключен при использовании aWire, так как он будет мешать правильной работе интерфейса. Рекомендуется слабая внешняя подтяжка (10 кОм или выше) на этой линии.
Выключить спящий режим
Некоторые устройства AVR UC3 имеют внутренний стабилизатор, который можно использовать в режиме питания 3.3 В с регулируемыми линиями ввода-вывода 1.8 В. Это означает, что внутренний регулятор питает как ядро, так и большую часть ввода/вывода. Только Atmel AVR ONE! отладчик поддерживает отладку при использовании спящих режимов, в которых этот регулятор отключен.
4.3.7. Использование EVTI / EVTO
Контакты EVTI и EVTO недоступны на Atmel-ICE. Однако их по-прежнему можно использовать в сочетании с другим внешним оборудованием.
EVTI может использоваться для следующих целей:
- Цель может быть принудительно остановлена в ответ на внешнее событие. Если биты Event In Control (EIC) в регистре DC записаны в 0b01, переход с высокого на низкий уровень на выводе EVTI создаст состояние точки останова. EVTI должен оставаться низким в течение одного тактового цикла ЦП, чтобы гарантировать, что точка останова установлена. Когда это происходит, устанавливается бит внешней точки останова (EXB) в DS.
- Создание сообщений синхронизации трассировки. Не используется Atmel-ICE.
EVTO может использоваться для следующих целей:
- Указание того, что ЦП вошел в режим отладки. Установка битов EOS в DC на 0b01 приводит к тому, что на выводе EVTO устанавливается низкий уровень на один такт ЦП, когда целевое устройство входит в режим отладки. Этот сигнал можно использовать в качестве источника запуска для внешнего осциллографа.
- Указывает, что ЦП достиг точки останова или точки наблюдения. При установке бита EOC в соответствующем регистре управления точкой останова/точки наблюдения статус точки останова или точки наблюдения отображается на выводе EVTO. Биты EOS в DC должны быть установлены на 0xb10, чтобы включить эту функцию. Затем вывод EVTO можно подключить к внешнему осциллографу для проверки точки наблюдения.
- Генерация сигналов синхронизации трассировки. Не используется Atmel-ICE.
4.4 Устройства tinyAVR, megaAVR и XMEGA
Устройства AVR имеют различные интерфейсы программирования и отладки. Проверьте техническое описание устройства, чтобы узнать о поддерживаемых интерфейсах этого устройства.
- Какой-то крошечный АВР® устройства имеют TPI TPI можно использовать только для программирования устройства, и эти устройства вообще не имеют встроенных возможностей отладки.
- Некоторые устройства tinyAVR и некоторые устройства megaAVR имеют интерфейс debugWIRE, который подключается к встроенной системе отладки, известной как tinyOCD. Все устройства с debugWIRE также имеют интерфейс SPI для внутрисистемного
- Некоторые устройства megaAVR имеют JTAG интерфейс для программирования и отладки со встроенной системой отладки, также известной как Все устройства с буквой JTAG также имеют интерфейс SPI в качестве альтернативного интерфейса для внутрисистемного программирования.
- Все устройства AVR XMEGA имеют интерфейс PDI для программирования, а некоторые устройства AVR XMEGA также имеют интерфейс J.TAG интерфейс с идентичным функционалом.
- Новые устройства tinyAVR имеют интерфейс UPDI, который используется для программирования и отладки.
Таблица 4-9. Обзор интерфейсов программирования и отладки
|
УПДИ | ТПИ | СПИ | отладка WIR E | JTAG | ПДИ | провод |
SWD |
крошечный АВР | Новые устройства | Некоторые устройства | Некоторые устройства | Некоторые устройства | ||||
мегаАВ Р | Все устройства | Некоторые устройства | Некоторые устройства | |||||
АВР ХМЕГА | Некоторые устройства | Все устройства | ||||||
АВР УК | Все устройства | Некоторые устройства | ||||||
СЭМ | Некоторые устройства | Все устройства |
4.4.1.ДжTAG Физический интерфейс
JTAG Интерфейс состоит из 4-проводного контроллера тестового порта доступа (TAP), совместимого с IEEE.® стандарт 1149.1. Стандарт IEEE был разработан, чтобы обеспечить стандартный для отрасли способ эффективного тестирования подключения печатной платы (Boundary Scan). Устройства Atmel AVR и SAM расширили эту функциональность, включив полную поддержку программирования и встроенной отладки.
Рисунок 4-9. ДжTAG Основы интерфейса4.4.2. Подключение к JTAG Цель
Atmel-ICE оснащен двумя 50-миллиметровыми 10-контактными разъемами типа J.TAG соединители. Оба разъема имеют прямое электрическое соединение, но соответствуют двум разным выводам; АВР JTAG заголовок и заголовок ARM Cortex Debug. Разъем следует выбирать на основе распиновки целевой платы, а не целевого типа MCU — например,ample устройство SAM, установленное в стеке AVR STK600, должно использовать заголовок AVR.
Рекомендуемая распиновка для 10-контактного AVR JTAG разъем показан на рис. 4-6.
Рекомендуемая разводка контактов для 10-контактного разъема отладки ARM Cortex показана на рис. 4-2.
Прямое подключение к стандартному 10-контактному разъему 50 mil
Используйте 50-миллиметровый 10-контактный плоский кабель (входит в некоторые комплекты) для прямого подключения к плате, поддерживающей этот тип разъема. Используйте порт разъема AVR на Atmel-ICE для заголовков с распиновкой AVR и порт разъема SAM для заголовков, соответствующих распиновке заголовка ARM Cortex Debug.
Распиновка обоих портов 10-контактного разъема показана ниже.
Подключение к стандартному 10-контактному разъему 100 mil
Используйте стандартный переходник с 50 мил на 100 мил для подключения к 100-миловым разъемам. Для этой цели можно использовать плату адаптера (входит в некоторые комплекты) или JTAGАдаптер ICE3 можно использовать для целей AVR.
Важный:
JTAGАдаптер ICE3 100 mil нельзя использовать с портом разъема SAM, так как контакты 2 и 10 (AVR GND) на адаптере соединены.
Подключение к пользовательскому 100-миловому заголовку
Если ваша целевая плата не имеет совместимого 10-контактного разъема JTAG разъема в 50 или 100 мил, вы можете сопоставить пользовательскую распиновку с помощью 10-контактного кабеля «мини-сквид» (входит в некоторые комплекты), который дает доступ к десяти отдельным 100-мильным разъемам.
Подключение к 20-контактному разъему 100 mil
Используйте плату адаптера (входит в некоторые комплекты) для подключения к мишеням с 20-контактным разъемом 100 mil.
Таблица 4-10. Атмел-ICE JTAG Описание штифта
Имя | АВР штифт порта | СЭМ штифт порта | Описание |
ТСК | 1 | 4 | Test Clock (тактовый сигнал от Atmel-ICE на целевое устройство). |
ТМС | 5 | 2 | Выбор режима тестирования (управляющий сигнал от Atmel-ICE на целевое устройство). |
ТДИ | 9 | 8 | Test Data In (данные, передаваемые из Atmel-ICE в целевое устройство). |
TDO | 3 | 6 | Test Data Out (данные, переданные с целевого устройства в Atmel-ICE). |
нТРСТ | 8 | – | Сброс теста (необязательно, только на некоторых устройствах AVR). Используется для сброса JTAG ТАП-контроллер. |
нСРСТ | 6 | 10 | Сброс (необязательно). Используется для сброса целевого устройства. Рекомендуется подключать этот контакт, поскольку он позволяет Atmel-ICE удерживать целевое устройство в состоянии сброса, что может быть необходимо для отладки в определенных сценариях. |
ВТГ | 4 | 1 | Целевой объемtagе ссылка. Atmel-ICE sampцелевой объемtage на этом контакте для правильного питания преобразователей уровня. Atmel-ICE потребляет от этого вывода менее 3 мА в режиме debugWIRE и менее 1 мА в других режимах. |
Земля | 2, 10 | 3, 5, 9 | Земля. Все они должны быть подключены, чтобы гарантировать, что Atmel-ICE и целевое устройство используют одну и ту же точку заземления. |
4.4.3.Физический интерфейс SPI
Внутрисистемное программирование использует внутренний SPI (последовательный периферийный интерфейс) целевого AVR Atmel для загрузки кода во флэш-память и память EEPROM. Это не интерфейс отладки. При проектировании прикладной печатной платы, включающей в себя AVR с интерфейсом SPI, следует использовать распиновку, показанную на рисунке ниже.
Рисунок 4-10. Распиновка заголовка SPI4.4.4. Подключение к цели SPI
Рекомендуемая разводка контактов 6-контактного разъема SPI показана на рис. 4-10.
Подключение к 6-контактному разъему SPI 100 mil
Используйте 6-контактный разъем 100 mil на плоском кабеле (входит в некоторые комплекты) для подключения к стандартному разъему SPI 100 mil.
Подключение к 6-контактному разъему SPI 50 mil
Используйте плату адаптера (входит в некоторые комплекты) для подключения к стандартному разъему SPI 50 mil.
Подключение к пользовательскому 100-миловому заголовку
10-контактный кабель mini-squid следует использовать для соединения порта разъема Atmel-ICE AVR и целевой платы. Требуется шесть подключений, как описано в таблице ниже.
Важный:
Интерфейс SPI эффективно отключается, когда запрограммирован предохранитель включения debugWIRE (DWEN), даже если также запрограммирован предохранитель SPIEN. Чтобы снова включить интерфейс SPI, во время сеанса отладки debugWIRE необходимо выполнить команду «disable debugWIRE». Отключение debugWIRE таким образом требует, чтобы фьюз SPIEN уже был запрограммирован. Если в Atmel Studio не удается отключить отладку WIRE, возможно, это связано с тем, что предохранитель SPIEN НЕ запрограммирован. В этом случае необходимо использовать высоковольтныйtagИнтерфейс программирования для программирования предохранителя SPIEN.
Информация:
Интерфейс SPI часто называют «ISP», так как это был первый интерфейс системного программирования в продуктах Atmel AVR. Другие интерфейсы теперь доступны для системного программирования.
Таблица 4-11. Сопоставление выводов SPI Atmel-ICE
Контакты порта Atmel-ICE AVR | Целевые контакты | Мини-булавка кальмара |
Распиновка SPI |
Контакт 1 (ТКК) | SCK | 1 | 3 |
Pin 2 (GND) | Земля | 2 | 6 |
Контакт 3 (TDO) | МИСО | 3 | 1 |
Контакт 4 (ВТГ) | ВТГ | 4 | 2 |
Контакт 5 (TMS) | 5 | ||
Контакт 6 (nSRST) | / СБРОС НАСТРОЕК | 6 | 5 |
Контакт 7 (не подключен) | 7 | ||
Контакт 8 (nTRST) | 8 | ||
Контакт 9 (ТДИ) | MOSI | 9 | 4 |
Pin 10 (GND) | 0 |
4.4.5. ПДИ
Программный и отладочный интерфейс (PDI) — это собственный интерфейс Atmel для внешнего программирования и встроенной отладки устройства. PDI Physical — это 2-контактный интерфейс, обеспечивающий двунаправленную полудуплексную синхронную связь с целевым устройством.
При проектировании прикладной печатной платы, включающей в себя Atmel AVR с интерфейсом PDI, следует использовать распиновку, показанную на рисунке ниже. Затем можно использовать один из 6-контактных адаптеров, входящих в комплект Atmel-ICE, для подключения датчика Atmel-ICE к прикладной печатной плате.
Рисунок 4-11. Распиновка разъема PDI4.4.6.Подключение к цели PDI
Рекомендуемая разводка контактов 6-контактного разъема PDI показана на рис. 4-11.
Подключение к 6-контактному разъему PDI 100 mil
Используйте 6-контактный разъем 100 mil на плоском кабеле (входит в некоторые комплекты) для подключения к стандартному разъему PDI 100 mil.
Подключение к 6-контактному разъему PDI 50 mil
Используйте плату адаптера (входит в некоторые комплекты) для подключения к стандартному разъему PDI 50 mil.
Подключение к пользовательскому 100-миловому заголовку
10-контактный кабель mini-squid следует использовать для соединения порта разъема Atmel-ICE AVR и целевой платы. Требуется четыре соединения, как описано в таблице ниже.
Важный:
Требуемая распиновка отличается от JTAGДВС mkII JTAG датчик, где PDI_DATA подключен к контакту 9. Atmel-ICE совместим с распиновкой, используемой Atmel-ICE, JTAGICE3, AVR ONE! и AVR Dragon™ продукты.
Таблица 4-12. Сопоставление контактов Atmel-ICE PDI
Контакт порта Atmel-ICE AVR |
Целевые контакты | Мини-булавка кальмара |
Распиновка Atmel STK600 PDI |
Контакт 1 (ТКК) | 1 | ||
Pin 2 (GND) | Земля | 2 | 6 |
Контакт 3 (TDO) | PDI_DATA | 3 | 1 |
Контакт 4 (ВТГ) | ВТГ | 4 | 2 |
Контакт 5 (TMS) | 5 | ||
Контакт 6 (nSRST) | PDI_CLK | 6 | 5 |
Контакт 7 (не подключен) | 7 | ||
Контакт 8 (nTRST) | 8 | ||
Контакт 9 (ТДИ) | 9 | ||
Pin 10 (GND) | 0 |
4.4.7. Физический интерфейс UPDI
Унифицированный интерфейс программы и отладки (UPDI) — это собственный интерфейс Atmel для внешнего программирования и встроенной отладки устройства. Это преемник 2-проводного физического интерфейса PDI, который используется во всех устройствах AVR XMEGA. UPDI — это однопроводной интерфейс, обеспечивающий двунаправленную полудуплексную асинхронную связь с целевым устройством в целях программирования и отладки.
При проектировании прикладной печатной платы, включающей в себя Atmel AVR с интерфейсом UPDI, следует использовать схему выводов, показанную ниже. Затем можно использовать один из 6-контактных адаптеров, входящих в комплект Atmel-ICE, для подключения датчика Atmel-ICE к прикладной печатной плате.
Рисунок 4-12. Распиновка заголовка UPDI4.4.7.1 UPDI и /RESET
Однопроводной интерфейс UPDI может быть выделенным контактом или общим контактом, в зависимости от целевого устройства AVR. Для получения дополнительной информации обратитесь к техническому описанию устройства.
Когда интерфейс UPDI находится на общем выводе, этот вывод можно настроить как UPDI, /RESET или GPIO, установив фьюзы RSTPINCFG[1:0].
Фьюзы RSTPINCFG[1:0] имеют следующие конфигурации, как описано в техническом описании. Здесь приведены практические последствия каждого выбора.
Таблица 4-13. RSTPINCFG[1:0] Конфигурация предохранителя
РСТПИНФГ[1:0] | Конфигурация |
Использование |
00 | GPIO | Контакт ввода-вывода общего назначения. Чтобы получить доступ к UPDI, на этот контакт необходимо подать импульс 12 В. Внешний источник сброса недоступен. |
01 | УПДИ | Специальный вывод для программирования и отладки. Внешний источник сброса недоступен. |
10 | Перезагрузить | Входной сигнал сброса. Чтобы получить доступ к UPDI, на этот контакт необходимо подать импульс 12 В. |
11 | Сдержанный | NA |
Примечание: Старые устройства AVR имеют программный интерфейс, известный как «High-Vol.tage Programming» (существуют как последовательный, так и параллельный варианты). В общем, этот интерфейс требует подачи 12 В на контакт /RESET на время сеанса программирования. Интерфейс UPDI — это совершенно другой интерфейс. Вывод UPDI в первую очередь является выводом для программирования и отладки, который можно объединить для выполнения альтернативной функции (/RESET или GPIO). Если выбрана альтернативная функция, то на этом контакте требуется импульс 12 В, чтобы повторно активировать функцию UPDI.
Примечание: Если конструкция требует совместного использования сигнала UPDI из-за ограничений по выводам, необходимо предпринять шаги, чтобы гарантировать возможность программирования устройства. Чтобы убедиться, что сигнал UPDI может работать правильно, а также во избежание повреждения внешних компонентов от импульса 12 В, рекомендуется отключать любые компоненты на этом выводе при попытке отладки или программирования устройства. Это можно сделать с помощью резистора 0 Ом, который устанавливается по умолчанию и удаляется или заменяется контактным разъемом при отладке. Эта конфигурация фактически означает, что программирование должно быть выполнено до монтажа устройства.
Важный: Atmel-ICE не поддерживает 12 В на линии UPDI. Другими словами, если контакт UPDI настроен как GPIO или RESET, Atmel-ICE не сможет включить интерфейс UPDI.
4.4.8.Подключение к цели UPDI
Рекомендуемая разводка контактов 6-контактного разъема UPDI показана на рис. 4-12.
Подключение к 6-контактному разъему UPDI 100 mil
Используйте 6-контактный разъем 100 mil на плоском кабеле (входит в некоторые комплекты) для подключения к стандартному разъему UPDI 100 mil.
Подключение к 6-контактному разъему UPDI 50 mil
Используйте плату адаптера (входит в некоторые комплекты) для подключения к стандартному разъему UPDI 50 mil.
Подключение к пользовательскому 100-миловому заголовку
10-контактный кабель mini-squid следует использовать для соединения порта разъема Atmel-ICE AVR и целевой платы. Требуются три соединения, как описано в таблице ниже.
Таблица 4-14. Сопоставление контактов Atmel-ICE UPDI
Контакт порта Atmel-ICE AVR | Целевые контакты | Мини-булавка кальмара |
Распиновка Atmel STK600 UPDI |
Контакт 1 (ТКК) | 1 | ||
Pin 2 (GND) | Земля | 2 | 6 |
Контакт 3 (TDO) | УПДИ_ДАННЫЕ | 3 | 1 |
Контакт 4 (ВТГ) | ВТГ | 4 | 2 |
Контакт 5 (TMS) | 5 | ||
Контакт 6 (nSRST) | [/СБРОС] смысл] | 6 | 5 |
Контакт 7 (не подключен) | 7 | ||
Контакт 8 (nTRST) | 8 | ||
Контакт 9 (ТДИ) | 9 | ||
Pin 10 (GND) | 0 |
4.4.9 Физический интерфейс TPI
TPI — это интерфейс только для программирования для некоторых устройств AVR ATtiny. Это не интерфейс отладки, и эти устройства не имеют возможности OCD. При проектировании прикладной печатной платы, включающей в себя AVR с интерфейсом TPI, следует использовать распиновку, показанную на рисунке ниже.
Рисунок 4-13. Распиновка заголовка TPI4.4.10.Подключение к цели TPI
Рекомендуемая разводка контактов 6-контактного разъема TPI показана на рис. 4-13.
Подключение к 6-контактному разъему 100 mil TPI
Используйте 6-контактный разъем 100 mil на плоском кабеле (входит в некоторые комплекты) для подключения к стандартному разъему TPI 100 mil.
Подключение к 6-контактному разъему 50 mil TPI
Используйте плату адаптера (входит в некоторые комплекты) для подключения к стандартному разъему 50-mil TPI.
Подключение к пользовательскому 100-миловому заголовку
10-контактный кабель mini-squid следует использовать для соединения порта разъема Atmel-ICE AVR и целевой платы. Требуется шесть подключений, как описано в таблице ниже.
Таблица 4-15. Сопоставление выводов Atmel-ICE TPI
Контакты порта Atmel-ICE AVR | Целевые контакты | Мини-булавка кальмара |
распиновка TPI |
Контакт 1 (ТКК) | ЧАСЫ | 1 | 3 |
Pin 2 (GND) | Земля | 2 | 6 |
Контакт 3 (TDO) | ДАННЫЕ | 3 | 1 |
Контакт 4 (ВТГ) | ВТГ | 4 | 2 |
Контакт 5 (TMS) | 5 | ||
Контакт 6 (nSRST) | / СБРОС НАСТРОЕК | 6 | 5 |
Контакт 7 (не подключен) | 7 | ||
Контакт 8 (nTRST) | 8 | ||
Контакт 9 (ТДИ) | 9 | ||
Pin 10 (GND) | 0 |
4.4.11. Расширенная отладка (AVR JTAG устройства /debugWIRE)
Периферийные устройства ввода/вывода
Большинство периферийных устройств ввода-вывода будут продолжать работать, даже если выполнение программы остановлено точкой останова. Бывшийample: Если во время передачи UART достигается точка останова, передача завершается и устанавливаются соответствующие биты. Флаг TXC (передача завершена) будет установлен и доступен на следующем шаге кода, даже если обычно это происходит позже в реальном устройстве.
Все модули ввода/вывода будут продолжать работать в остановленном режиме за двумя следующими исключениями:
- Таймер/счетчики (настраивается с помощью внешнего интерфейса программного обеспечения)
- Сторожевой таймер (всегда останавливается, чтобы предотвратить сброс во время отладки)
Одношаговый доступ к вводу-выводу
Поскольку ввод-вывод продолжает работать в остановленном режиме, следует соблюдать осторожность, чтобы избежать определенных проблем с синхронизацией. Для бывшегоampле, код:
При обычном выполнении этого кода регистр TEMP не будет считывать обратно 0xAA, потому что данные еще не будут физически зафиксированы на выводе к моменту их выполнения.ampруководил операцией IN. Инструкция NOP должна быть помещена между инструкциями OUT и IN, чтобы гарантировать, что в регистре PIN присутствует правильное значение.
Однако при пошаговом выполнении этой функции через OCD этот код всегда будет давать 0xAA в регистре PIN, поскольку ввод-вывод выполняется на полной скорости, даже если ядро остановлено во время пошагового выполнения.
Один шаг и синхронизация
Некоторые регистры должны быть прочитаны или записаны в течение заданного количества циклов после включения управляющего сигнала. Поскольку часы ввода-вывода и периферийные устройства продолжают работать на полной скорости в остановленном режиме, пошаговое выполнение такого кода не будет соответствовать требованиям синхронизации. Между двумя одиночными шагами часы ввода-вывода могут пройти миллионы циклов. Для успешного чтения или записи регистров с такими временными требованиями вся последовательность чтения или записи должна выполняться как атомарная операция, запускающая устройство на полной скорости. Это можно сделать с помощью макроса или вызова функции для выполнения кода или с помощью функции запуска к курсору в среде отладки.
Доступ к 16-битным регистрам
Периферийные устройства Atmel AVR обычно содержат несколько 16-битных регистров, к которым можно получить доступ через 8-битную шину данных (например, TCNTn 16-битного таймера). Доступ к 16-битному регистру должен осуществляться с помощью двух операций чтения или записи. Прерывание в середине 16-битного доступа или пошаговое выполнение этой ситуации может привести к ошибочным значениям.
Ограниченный доступ к регистрам ввода/вывода
Некоторые регистры не могут быть прочитаны без изменения их содержимого. К таким регистрам относятся те, которые содержат флаги, которые очищаются при чтении, или буферизованные регистры данных (например, UDR). Программный интерфейс предотвратит чтение этих регистров в остановленном режиме, чтобы сохранить предполагаемый ненавязчивый характер отладки OCD. Кроме того, некоторые регистры нельзя безопасно записывать без возникновения побочных эффектов — эти регистры доступны только для чтения. Для бывшегоampль:
- Флаговые регистры, где флаг очищается записью «1» в любой из этих регистров. Эти регистры доступны только для чтения.
- Регистры UDR и SPDR не могут быть прочитаны, не влияя на состояние модуля. Эти регистры не
4.4.12. megaAVR Особые соображения
Программные точки останова
Поскольку он содержит раннюю версию модуля OCD, ATmega128[A] не поддерживает использование инструкции BREAK для программных точек останова.
JTAG часы
Целевая тактовая частота должна быть точно указана во внешнем интерфейсе программного обеспечения перед началом сеанса отладки. Для синхронизации JTAG Сигнал TCK должен быть меньше одной четверти целевой тактовой частоты для надежной отладки. При программировании через JTAG интерфейс, частота TCK ограничена максимальной номинальной частотой целевого устройства, а не фактической используемой тактовой частотой.
При использовании внутреннего RC-генератора имейте в виду, что частота может варьироваться от устройства к устройству и зависит от температуры и напряжения.CC изменения. Будьте осторожны при указании целевой тактовой частоты.
JTAGПредохранители EN и OCDEN
JTAG интерфейс включается с помощью JTAGПредохранитель EN, который запрограммирован по умолчанию. Это позволяет получить доступ к JTAG интерфейс программирования. С помощью этого механизма можно запрограммировать предохранитель OCDEN (по умолчанию OCDEN не запрограммирован). Это позволяет получить доступ к OCD для облегчения отладки устройства. Интерфейс программного обеспечения всегда гарантирует, что предохранитель OCDEN останется незапрограммированным при завершении сеанса, тем самым ограничивая ненужное потребление энергии модулем OCD. Если ДжTAGПредохранитель EN непреднамеренно отключен, его можно повторно включить только с помощью SPI или High Vol.tagе методы программирования.
Если ДжTAGПредохранитель EN запрограммирован, предохранитель JTAG Интерфейс по-прежнему можно отключить в прошивке, установив бит JTD. Это сделает код недоступным для отладки, и его не следует делать при попытке сеанса отладки. Если такой код уже выполняется на устройстве Atmel AVR при запуске сеанса отладки, Atmel-ICE установит линию RESET при подключении. Если эта линия подключена правильно, она принудительно перезагрузит целевое устройство AVR, что позволит JTAG связь.
Если ДжTAG интерфейс включен, JTAG контакты не могут использоваться для альтернативных функций контактов. Они останутся преданными JTAG булавки до тех пор, пока JTAG интерфейс отключается установкой бита JTD в программном коде или сбросом JTAGEN предохранитель через интерфейс программирования.
Кончик:
Обязательно установите флажок «использовать внешний сброс» как в диалоговом окне программирования, так и в диалоговом окне параметров отладки, чтобы позволить Atmel-ICE установить линию RESET и снова включить JTAG интерфейс на устройствах, на которых запущен код, отключающий JTAG интерфейса, установив бит JTD.
События IDR/OCDR
IDR (In-Out Data Register) также известен как OCDR (On Chip Debug Register) и широко используется отладчиком для чтения и записи информации в MCU, когда он находится в остановленном режиме во время сеанса отладки. Когда прикладная программа в режиме выполнения записывает байт данных в регистр OCDR отлаживаемого устройства AVR, Atmel-ICE считывает это значение и отображает его в окне сообщений интерфейса программного обеспечения. Регистр OCDR опрашивается каждые 50 мс, поэтому запись в него с более высокой частотой НЕ даст надежных результатов. Когда устройство AVR теряет питание во время отладки, могут быть зарегистрированы ложные события OCDR. Это происходит потому, что Atmel-ICE все еще может опрашивать устройство как целевой том.tage падает ниже минимального рабочего объема AVRtage.
4.4.13. Особенности AVR XMEGA
ОКР и часы
Когда MCU переходит в режим остановки, часы OCD используются в качестве часов MCU. Часы OCD - это либо JTAG TCK, если JTAG используется интерфейс, или PDI_CLK, если используется интерфейс PDI.
Модули ввода/вывода в остановленном режиме
В отличие от более ранних устройств Atmel megaAVR, в XMEGA модули ввода-вывода останавливаются в режиме остановки. Это означает, что передача USART будет прервана, таймеры (и ШИМ) будут остановлены.
Аппаратные точки останова
Имеется четыре компаратора аппаратных точек останова — два компаратора адресов и два компаратора значений. У них есть определенные ограничения:
- Все точки останова должны быть одного типа (программа или данные).
- Все точки останова данных должны находиться в одной и той же области памяти (ввод-вывод, SRAM или XRAM).
- Может быть только одна точка останова, если используется диапазон адресов.
Вот различные комбинации, которые можно установить:
- Две точки останова с одним адресом данных или адресом программы
- Одна точка останова диапазона адресов данных или программы
- Сравнение двух точек останова с одним адресом данных и сравнением одного значения
- Одна точка останова данных с диапазоном адресов, диапазоном значений или и тем, и другим
Atmel Studio сообщит вам, если точка останова не может быть установлена, и почему. Точки останова данных имеют приоритет над точками останова программы, если доступны программные точки останова.
Внешний сброс и физический PDI
Физический интерфейс PDI использует линию сброса в качестве часов. Во время отладки подтяжка сброса должна составлять 10 КБ или более или быть удалена. Любые конденсаторы сброса должны быть удалены. Другие внешние источники сброса должны быть отключены.
Отладка со сном для ATxmegaA1 rev H и более ранних версий
В ранних версиях устройств ATxmegaA1 существовала ошибка, которая препятствовала включению OCD, когда устройство находилось в определенных спящих режимах. Есть два обходных пути для повторного включения OCD:
- Войдите в Atmel-ICE. Параметры в меню «Инструменты» и включите «Всегда активировать внешний сброс при перепрограммировании устройства».
- Выполнить стирание чипа
Спящие режимы, вызывающие эту ошибку:
- Выключить
- Энергосбережение
- Поддерживать
- Расширенный режим ожидания
4.4.1.debugWIRE Особые соображения
Контакт связи debugWIRE (dW) физически расположен на том же контакте, что и внешний сброс (RESET). Поэтому внешний источник сброса не поддерживается, когда включен интерфейс debugWIRE.
Предохранитель включения debugWIRE (DWEN) должен быть установлен на целевом устройстве, чтобы интерфейс debugWIRE функционировал. Этот предохранитель по умолчанию не запрограммирован, когда устройство Atmel AVR отгружается с завода. Сам интерфейс debugWIRE не может использоваться для установки этого фьюза. Чтобы установить предохранитель DWEN, необходимо использовать режим SPI. Внешний интерфейс программного обеспечения обрабатывает это автоматически при условии, что необходимые контакты SPI подключены. Его также можно установить с помощью программирования SPI из диалогового окна программирования Atmel Studio.
Или: Попытка запустить сеанс отладки в части debugWIRE. Если интерфейс debugWIRE не включен, Atmel Studio предложит повторить попытку или попытается включить debugWIRE с помощью программирования SPI. Если у вас подключен полный заголовок SPI, отладка WIRE будет включена, и вам будет предложено переключить питание на цели. Это необходимо для того, чтобы изменения предохранителя были эффективными.
Или: Откройте диалоговое окно программирования в режиме SPI и убедитесь, что подпись соответствует правильному устройству. Проверьте предохранитель DWEN, чтобы включить debugWIRE.
Важный:
Важно оставить предохранитель SPIEN запрограммированным, а предохранитель RSTDISBL незапрограммированным! Если этого не сделать, устройство застрянет в режиме отладки WIRE, а High VoltagДля сброса настройки DWEN потребуется программирование.
Чтобы отключить интерфейс debugWIRE, используйте High VoltagПрограммирование для депрограммирования предохранителя DWEN. В качестве альтернативы используйте сам интерфейс debugWIRE, чтобы временно отключить его, что позволит выполнять программирование SPI при условии, что предохранитель SPIEN установлен.
Важный:
Если предохранитель SPIEN НЕ был запрограммирован, Atmel Studio не сможет выполнить эту операцию, и High Vol.tagНеобходимо использовать программирование.
Во время сеанса отладки выберите пункт меню «Отключить отладку и закрыть» в меню «Отладка». DebugWIRE будет временно отключен, и Atmel Studio будет использовать SPI-программирование, чтобы депрограммировать предохранитель DWEN.
Запрограммированный предохранитель DWEN позволяет некоторым частям системы часов работать во всех спящих режимах. Это увеличит энергопотребление AVR в спящих режимах. Поэтому предохранитель DWEN всегда должен быть отключен, если не используется debugWIRE.
При проектировании печатной платы целевого приложения, где будет использоваться debugWIRE, для правильной работы необходимо принять во внимание следующие соображения:
- Подтягивающие резисторы на линии dW/(RESET) не должны быть меньше (сильнее) 10 кОм. Подтягивающий резистор не требуется для функции debugWIRE, так как инструмент отладчика обеспечивает
- Любые стабилизирующие конденсаторы, подключенные к контакту RESET, должны быть отключены при использовании debugWIRE, так как они будут мешать корректной работе интерфейса.
- Все внешние источники сброса или другие активные драйверы на линии RESET должны быть отключены, так как они могут мешать корректной работе интерфейса
Никогда не программируйте биты блокировки на целевом устройстве. Интерфейс debugWIRE требует, чтобы биты блокировки были очищены для правильной работы.
4.4.15. Программные точки останова debugWIRE
OCD debugWIRE значительно уменьшен по сравнению с Atmel megaAVR (JTAG) ОКР. Это означает, что он не имеет каких-либо компараторов точек останова программных счетчиков, доступных пользователю для целей отладки. Один такой компаратор существует для выполнения операций с курсором и пошаговых операций, но дополнительные пользовательские точки останова аппаратно не поддерживаются.
Вместо этого отладчик должен использовать инструкцию AVR BREAK. Эта инструкция может быть помещена во флэш-память, и когда она загружается для выполнения, она переводит ЦП AVR в режим останова. Для поддержки точек останова во время отладки отладчик должен вставить инструкцию BREAK во FLASH в точке, в которой пользователи запрашивают точку останова. Исходная инструкция должна быть кэширована для последующей замены.
При пошаговом выполнении инструкции BREAK отладчик должен выполнить исходную кэшированную инструкцию, чтобы сохранить поведение программы. В крайних случаях BREAK должен быть удален из FLASH и заменен позже. Все эти сценарии могут вызывать явные задержки при пошаговом переходе от точек останова, которые будут усугубляться, когда целевая тактовая частота очень низкая.
Таким образом, рекомендуется по возможности соблюдать следующие рекомендации:
- Всегда запускайте цель с максимально возможной частотой во время отладки. Физический интерфейс debugWIRE синхронизируется с целевыми часами.
- Постарайтесь свести к минимуму количество добавлений и удалений точек останова, так как каждое из них требует замены FLASH-страницы на целевой
- Попробуйте добавить или удалить небольшое количество точек останова за раз, чтобы свести к минимуму количество операций записи FLASH-страницы.
- Если возможно, избегайте размещения точек останова на инструкциях с двойным словом.
4.4.16. Что такое debugWIRE и предохранитель DWEN
При включении интерфейс debugWIRE берет на себя управление выводом /RESET устройства, что делает его взаимоисключающим по отношению к интерфейсу SPI, которому также нужен этот вывод. При включении и отключении модуля debugWIRE используйте один из следующих двух подходов:
- Пусть Atmel Studio позаботится обо всем (рекомендуется)
- Установите и очистите DWEN вручную (соблюдайте осторожность, только для опытных пользователей!)
Важный: При манипулировании DWEN вручную важно, чтобы предохранитель SPIEN оставался установленным, чтобы избежать необходимости использовать High-Vol.tagэлектронное программирование
Рисунок 4-14. Что такое debugWIRE и предохранитель DWEN4.4.17.TinyX-OCD (UPDI) Особые соображения
Контакт данных UPDI (UPDI_DATA) может быть выделенным контактом или общим контактом, в зависимости от целевого устройства AVR. Общий контакт UPDI устойчив к напряжению 12 В и может быть настроен для использования в качестве /RESET или GPIO. Дополнительные сведения об использовании вывода в этих конфигурациях см. в разделе Физический интерфейс UPDI.
На устройствах, которые включают модуль CRCSCAN (циклическое сканирование памяти с проверкой избыточности), этот модуль не следует использовать в непрерывном фоновом режиме во время отладки. Модуль OCD имеет ограниченные ресурсы компаратора аппаратных точек останова, поэтому инструкции BREAK могут быть вставлены во флэш-память (программные точки останова), когда требуется больше точек останова или даже во время пошагового выполнения кода на уровне исходного кода. Модуль CRC может ошибочно определить эту точку останова как повреждение содержимого флэш-памяти.
Модуль CRCSCAN также можно настроить для выполнения сканирования CRC перед загрузкой. В случае несоответствия CRC устройство не загрузится и будет находиться в заблокированном состоянии. Единственный способ вывести устройство из этого состояния — выполнить полное стирание чипа и либо запрограммировать допустимый образ флэш-памяти, либо отключить предварительную загрузку CRCSCAN. (Простое стирание чипа приведет к созданию пустой флэш-памяти с недопустимым CRC, и, таким образом, деталь все равно не загрузится.) Atmel Studio автоматически отключит фьюзы CRCSCAN при стирании чипа устройства в этом состоянии.
При проектировании печатной платы целевого приложения, в которой будет использоваться интерфейс UPDI, для правильной работы необходимо принять во внимание следующие соображения:
- Подтягивающие резисторы на линии UPDI не должны быть меньше (мощнее) 10 кОм. Подтягивающий резистор не следует использовать или его следует удалить при использовании UPDI. Физический интерфейс UPDI является двухтактным, поэтому требуется только слабый подтягивающий резистор, чтобы предотвратить срабатывание бита ложного пуска, когда линия
- Если контакт UPDI будет использоваться как контакт RESET, любой стабилизирующий конденсатор должен быть отключен при использовании UPDI, поскольку он будет мешать правильной работе интерфейса.
- Если контакт UPDI используется как контакт RESET или GPIO, все внешние драйверы на линии должны быть отключены во время программирования или отладки, поскольку они могут мешать правильной работе интерфейса.
Описание оборудования
5.1. светодиоды
На верхней панели Atmel-ICE есть три светодиода, которые показывают состояние текущих сеансов отладки или программирования.
Стол 5-1. светодиоды
ВЕЛ | Функция |
Описание |
Левый | Целевая мощность | ЗЕЛЕНЫЙ, когда целевая мощность в норме. Мигание указывает на ошибку целевого питания. Не загорается, пока не будет запущено соединение сеанса программирования/отладки. |
Середина | Основная мощность | КРАСНЫЙ, когда питание материнской платы в норме. |
Верно | Статус | Мигает ЗЕЛЕНЫМ, когда цель движется/шагает. ВЫКЛ, когда цель остановлена. |
5.2 . Задняя панель
На задней панели Atmel-ICE находится разъем Micro-B USB.5.3. Нижняя панель
На нижней панели Atmel-ICE есть наклейка, на которой указан серийный номер и дата изготовления. При обращении за технической поддержкой укажите эти данные.5.4. Описание архитектуры
Архитектура Atmel-ICE показана на блок-схеме на рис. 5-1.
Рисунок 5-1. Блок-схема Atmel-ICE5.4.1. Основная плата Atmel-ICE
Питание на Atmel-ICE подается по шине USB, регулируемое до 3.3 В с помощью понижающего импульсного регулятора. Вывод VTG используется только как опорный вход, а отдельный источник питания питает переменную громкость.tage сторона бортовых преобразователей уровня. В основе основной платы Atmel-ICE лежит микроконтроллер Atmel AVR UC3 AT32UC3A4256, работающий на частоте от 1 до 60 МГц в зависимости от обрабатываемых задач. Микроконтроллер включает в себя встроенный высокоскоростной модуль USB 2.0, обеспечивающий высокую скорость передачи данных в отладчик и обратно.
Связь между Atmel-ICE и целевым устройством осуществляется через группу преобразователей уровней, которые сдвигают сигналы между рабочими уровнями целевого устройства.tage и внутренний объемtage уровень на Atmel-ICE. Также на пути прохождения сигнала имеются перегрузки стабилитрона.tage защитные диоды, последовательные согласующие резисторы, индуктивные фильтры и диоды для защиты от электростатических разрядов. Все сигнальные каналы могут работать в диапазоне от 1.62 В до 5.5 В, хотя аппаратное обеспечение Atmel-ICE не может вытеснить более высокое напряжение.tagе, чем 5.0 В. Максимальная рабочая частота зависит от используемого целевого интерфейса.
5.4.2. Целевые разъемы Atmel-ICE
Atmel-ICE не имеет активного зонда. Кабель IDC длиной 50 мил используется для подключения к целевому приложению либо напрямую, либо через адаптеры, входящие в некоторые комплекты. Дополнительные сведения о кабелях и адаптерах см. в разделе «Сборка Atmel-ICE».
5.4.3. Каталожные номера целевых разъемов Atmel-ICE
Для подключения кабеля IDC Atmel-ICE 50 mil напрямую к целевой плате подойдет любой стандартный 50-контактный разъем 10 mil. Рекомендуется использовать разъемы с ключами для обеспечения правильной ориентации при подключении к мишени, например те, которые используются на плате адаптера, входящей в комплект.
Номер детали для этого заголовка: FTSH-105-01-L-DV-KAP от SAMTEC.
Интеграция программного обеспечения
6.1. Студия Атмел
6.1.1.Интеграция программного обеспечения в Atmel Studio
Atmel Studio — это интегрированная среда разработки (IDE) для написания и отладки приложений Atmel AVR и Atmel SAM в средах Windows. Atmel Studio предоставляет инструмент управления проектами, источник file редактор, симулятор, ассемблер и интерфейс для C/C++, программирование, эмуляция и встроенная отладка.
Atmel Studio версии 6.2 или более поздней версии необходимо использовать вместе с Atmel-ICE.
6.1.2. Опции программирования
Atmel Studio поддерживает программирование устройств Atmel AVR и Atmel SAM ARM с помощью Atmel-ICE. Диалоговое окно программирования можно настроить для использования JTAG, aWire, SPI, PDI, TPI, SWD в зависимости от выбранного целевого устройства.
При настройке тактовой частоты для разных интерфейсов и целевых семейств применяются разные правила:
- Программирование SPI использует целевые часы. Настройте тактовую частоту так, чтобы она была ниже одной четвертой частоты, на которой в данный момент работает целевое устройство.
- JTAG программирование на устройствах Atmel megaAVR тактируется Это означает, что тактовая частота программирования ограничена максимальной рабочей частотой самого устройства. (Обычно 16 МГц.)
- Программирование AVR XMEGA на обоих JTAG и интерфейсы PDI тактируются программатором. Это означает, что тактовая частота программирования ограничена максимальной рабочей частотой устройства (обычно 32 МГц).
- Программирование AVR UC3 на JTAG интерфейс тактируется программатором. Это означает, что тактовая частота программирования ограничена максимальной рабочей частотой самого устройства. (Ограничено 33 МГц.)
- Программирование AVR UC3 на интерфейсе aWire синхронизируется по тактовой частоте. Оптимальная частота определяется скоростью шины SAB в целевом устройстве. Отладчик Atmel-ICE автоматически настроит скорость передачи данных aWire в соответствии с этим критерием. Хотя обычно в этом нет необходимости, при необходимости пользователь может ограничить максимальную скорость передачи данных (например, в шумной среде).
- Программирование устройства SAM на интерфейсе SWD синхронизируется программатором. Максимальная частота, поддерживаемая Atmel-ICE, составляет 2 МГц. Частота не должна превышать целевую частоту ЦП, умноженную на 10, fSWD ≤ 10fSYSCLK.
6.1.3.Параметры отладки
При отладке устройства Atmel AVR с помощью Atmel Studio вкладка «Инструмент» в свойствах проекта view содержит некоторые важные параметры конфигурации. Опции, требующие дальнейшего пояснения, подробно описаны здесь.
Целевая тактовая частота
Точная установка целевой тактовой частоты жизненно важна для обеспечения надежной отладки устройства Atmel megaAVR по JTAG интерфейс. Этот параметр должен быть меньше одной четверти самой низкой рабочей частоты вашего целевого устройства AVR в отлаживаемом приложении. Дополнительные сведения см. в разделе «Особые рекомендации megaAVR».
Сеансы отладки на целевых устройствах debugWIRE синхронизируются самим целевым устройством, поэтому настройка частоты не требуется. Atmel-ICE автоматически выберет правильную скорость передачи данных для связи в начале сеанса отладки. Однако, если у вас возникают проблемы с надежностью, связанные с шумной средой отладки, некоторые инструменты предлагают возможность принудительно установить скорость debugWIRE в несколько раз меньше «рекомендуемой» настройки.
Сеансы отладки на целевых устройствах AVR XMEGA могут работать на максимальной частоте самого устройства (обычно 32 МГц).
Сеансы отладки на целевых устройствах AVR UC3 через JTAG интерфейс может работать на максимальной скорости самого устройства (ограничено 33 МГц). Однако оптимальная частота будет немного ниже текущих часов SAB на целевом устройстве.
Сеансы отладки на целевых устройствах UC3 через интерфейс aWire будут автоматически настроены на оптимальную скорость передачи самой Atmel-ICE. Однако, если у вас возникают проблемы с надежностью, связанные с шумной средой отладки, некоторые инструменты предлагают возможность принудительно установить скорость aWire ниже настраиваемого предела.
Сеансы отладки на целевых устройствах SAM через интерфейс SWD могут выполняться с тактовой частотой, в десять раз превышающей тактовую частоту ЦП (но не более 2 МГц).
Сохранить EEPROM
Выберите эту опцию, чтобы избежать стирания EEPROM во время перепрограммирования цели перед сеансом отладки.
Использовать внешний сброс
Если ваше целевое приложение отключает JTAG интерфейс, внешний сброс должен быть установлен на низком уровне во время программирования. Выбор этого параметра позволяет избежать повторного запроса на использование внешнего сброса.
6.2 Утилита командной строки
Atmel Studio поставляется с утилитой командной строки под названием atprogram, которую можно использовать для программирования целей с помощью Atmel-ICE. Во время установки Atmel Studio ярлык «Atmel Studio 7.0. Командная строка» были созданы в папке Atmel в меню «Пуск». Двойной щелчок по этому ярлыку открывает командную строку и позволяет вводить команды программирования. Утилита командной строки устанавливается по пути установки Atmel Studio в папку Atmel/Atmel Studio 7.0/atbackend/.
Чтобы получить дополнительную справку по утилите командной строки, введите команду:
atprogram -помощь
Расширенные методы отладки
7.1. Цели Atmel AVR UC3
7.1.1. Использование EVTI / EVTO
Контакты EVTI и EVTO недоступны на Atmel-ICE. Однако их по-прежнему можно использовать в сочетании с другим внешним оборудованием.
EVTI может использоваться для следующих целей:
- Цель может быть принудительно остановлена в ответ на внешнее событие. Если биты Event In Control (EIC) в регистре DC записаны в 0b01, переход с высокого на низкий уровень на выводе EVTI создаст состояние точки останова. EVTI должен оставаться низким в течение одного тактового цикла ЦП, чтобы гарантировать, что точка останова установлена. Когда это происходит, устанавливается бит внешней точки останова (EXB) в DS.
- Создание сообщений синхронизации трассировки. Не используется Atmel-ICE. EVTO может использоваться для следующих целей:
- Указание того, что ЦП вошел в режим отладки. Установка битов EOS в DC на 0b01 приводит к тому, что на выводе EVTO устанавливается низкий уровень на один такт ЦП, когда целевое устройство входит в режим отладки. Этот сигнал можно использовать в качестве источника запуска для внешнего осциллографа.
- Указывает, что ЦП достиг точки останова или точки наблюдения. При установке бита EOC в соответствующем регистре управления точкой останова/точки наблюдения статус точки останова или точки наблюдения отображается на выводе EVTO. Биты EOS в DC должны быть установлены на 0xb10, чтобы включить эту функцию. Затем вывод EVTO можно подключить к внешнему осциллографу для проверки точки наблюдения.
- Генерация сигналов синхронизации трассировки. Не используется Atmel-ICE.
7.2 Цели debugWIRE
7.2.1. Точки останова программного обеспечения debugWIRE
OCD debugWIRE значительно уменьшен по сравнению с Atmel megaAVR (JTAG) ОКР. Это означает, что он не имеет каких-либо компараторов точек останова программных счетчиков, доступных пользователю для целей отладки. Один такой компаратор существует для выполнения операций с курсором и пошаговых операций, но дополнительные пользовательские точки останова аппаратно не поддерживаются.
Вместо этого отладчик должен использовать инструкцию AVR BREAK. Эта инструкция может быть помещена во флэш-память, и когда она загружается для выполнения, она переводит ЦП AVR в режим останова. Для поддержки точек останова во время отладки отладчик должен вставить инструкцию BREAK во FLASH в точке, в которой пользователи запрашивают точку останова. Исходная инструкция должна быть кэширована для последующей замены.
При пошаговом выполнении инструкции BREAK отладчик должен выполнить исходную кэшированную инструкцию, чтобы сохранить поведение программы. В крайних случаях BREAK должен быть удален из FLASH и заменен позже. Все эти сценарии могут вызывать явные задержки при пошаговом переходе от точек останова, которые будут усугубляться, когда целевая тактовая частота очень низкая.
Таким образом, рекомендуется по возможности соблюдать следующие рекомендации:
- Всегда запускайте цель с максимально возможной частотой во время отладки. Физический интерфейс debugWIRE синхронизируется с целевыми часами.
- Постарайтесь свести к минимуму количество добавлений и удалений точек останова, так как каждое из них требует замены FLASH-страницы на целевой
- Попробуйте добавить или удалить небольшое количество точек останова за раз, чтобы свести к минимуму количество операций записи FLASH-страницы.
- Если возможно, избегайте размещения точек останова на инструкциях с двойным словом.
История выпусков и известные проблемы
8.1 .История выпусков прошивки
Таблица 8-1. Общедоступные версии прошивки
Версия прошивки (десятичная) | Дата |
Соответствующие изменения |
1.36 | 29.09.2016 | Добавлена поддержка интерфейса UPDI (устройства TinyX) Настраиваемый размер конечной точки USB |
1.28 | 27.05.2015 | Добавлена поддержка интерфейсов SPI и USART DGI. Улучшена скорость SWD. Мелкие исправления. |
1.22 | 03.10.2014 | Добавлено профилирование кода. Исправлена проблема, связанная с JTAG гирляндные цепочки с более чем 64 командными битами. Исправление для расширения сброса ARM. Исправлена проблема с индикатором питания цели. |
1.13 | 08.04.2014 | JTAG исправление тактовой частоты. Исправление для debugWIRE с длинным SUT. Исправлена команда калибровки осциллятора. |
1.09 | 12.02.2014 | Первый выпуск Atmel-ICE. |
8.2. Известные проблемы, связанные с Atmel-ICE
8.2.1.Общие сведения
- Первоначальные партии Atmel-ICE имели слабый USB. Новая версия была сделана с новым и более надежным разъемом USB. В качестве временного решения на уже изготовленные узлы первой версии нанесен эпоксидный клей для повышения механической прочности.
8.2.2. Специфические проблемы Atmel AVR XMEGA OCD
- Для семейства ATxmegaA1 поддерживается только версия G или более поздняя.
8.2.1. Atmel AVR — проблемы, связанные с устройством
- Включение и выключение питания ATmega32U6 во время сеанса отладки может привести к потере связи с устройством.
Соответствие продукции требованиям
9.1. RoHS и WEEE
Atmel-ICE и все аксессуары производятся в соответствии как с директивой RoHS (2002/95/EC), так и с директивой WEEE (2002/96/EC).
9.2. CE и FCC
Блок Atmel-ICE был протестирован в соответствии с основными требованиями и другими соответствующими положениями Директив:
- Директива 2004/108/EC (класс B)
- FCC, часть 15, подраздел B
- 2002/95/ЕС (RoHS, WEEE)
Для оценки используются следующие стандарты:
- ЕН 61000-6-1 (2007)
- EN 61000-6-3 (2007) + А1(2011)
- FCC CFR 47, часть 15 (2013 г.)
Техническая конструкция File находится по адресу:
Были предприняты все усилия, чтобы свести к минимуму электромагнитное излучение этого продукта. Однако при определенных условиях система (данный продукт, подключенный к цепи целевого приложения) может излучать частоты отдельных электромагнитных компонентов, превышающие максимальные значения, разрешенные вышеупомянутыми стандартами. Частота и величина выбросов будут определяться несколькими факторами, в том числе компоновкой и маршрутизацией целевого приложения, с которым используется продукт.
История изменений
Док. Ред. |
Дата |
Комментарии |
42330С | 10/2016 | Добавлен интерфейс UPDI и обновлена история выпусков прошивки. |
42330Б | 03/2016 | • Пересмотренная глава «Отладка на кристалле» • Новое форматирование истории выпусков встроенного ПО в главе «История выпусков и известные проблемы». • Добавлена распиновка отладочного кабеля. |
42330А | 06/2014 | Первоначальный выпуск документа |
Атмел®, логотип Atmel и их комбинации, открывая неограниченные возможности®, АВР®, мегаАВР®, СТК®, тиниАВР®, ХМЕГА®и другие являются зарегистрированными товарными знаками или товарными знаками корпорации Atmel в США и других странах. РУКА®, АРМ подключен® логотип, Кортекс®, и другие являются зарегистрированными товарными знаками или товарными знаками ARM Ltd. Windows® является зарегистрированным товарным знаком Microsoft Corporation в США и/или других странах. Другие термины и названия продуктов могут быть товарными знаками других лиц.
ОТКАЗ ОТ ОТВЕТСТВЕННОСТИ. Информация в этом документе относится к продуктам Atmel. Настоящим документом или в связи с продажей продуктов Atmel не предоставляется никакая лицензия, явная или подразумеваемая, посредством эстоппеля или иным образом, на какое-либо право на интеллектуальную собственность. ЗА ИСКЛЮЧЕНИЕМ ИЗЛОЖЕННЫХ В ПОЛОЖЕНИЯХ И УСЛОВИЯХ ПРОДАЖИ ATMEL, РАСПОЛОЖЕННЫХ НА ATMEL WEBСАЙТА, ATMEL НЕ НЕСЕТ НИКАКОЙ ОТВЕТСТВЕННОСТИ И ОТКАЗЫВАЕТСЯ ОТ ЛЮБЫХ ЯВНЫХ, ПОДРАЗУМЕВАЕМЫХ ИЛИ УСТАНОВЛЕННЫХ ЗАКОНОМ ГАРАНТИЙ В ОТНОШЕНИИ СВОИХ ПРОДУКТОВ, ВКЛЮЧАЯ, ПОМИМО ПРОЧЕГО, ПОДРАЗУМЕВАЕМЫЕ ГАРАНТИИ КОММЕРЧЕСКОЙ ПРИГОДНОСТИ, ПРИГОДНОСТИ ДЛЯ ОПРЕДЕЛЕННОЙ ЦЕЛИ ИЛИ НЕНАРУШЕНИЯ ПРАВ. НИ ПРИ КАКИХ ОБСТОЯТЕЛЬСТВАХ ATMEL НЕ НЕСЕТ ОТВЕТСТВЕННОСТИ ЗА ЛЮБОЙ ПРЯМОЙ, КОСВЕННЫЙ, КОСВЕННЫЙ, ШТРАФНЫЙ, ОСОБЫЙ ИЛИ СЛУЧАЙНЫЙ УЩЕРБ (ВКЛЮЧАЯ, ПОМИМО ПРОЧЕГО, УЩЕРБ И ПРИБЫЛЬ, ПРИБЫЛЬ В ДЕЯТЕЛЬНОСТИ ИЛИ ПОТЕРЮ ИНФОРМАЦИИ), ВОЗНИКШИЙ В РЕЗУЛЬТАТЕ ИСПОЛЬЗОВАНИЯ ИЛИ НЕВОЗМОЖНОСТИ ИСПОЛЬЗОВАНИЯ ЭТОТ ДОКУМЕНТ, ДАЖЕ ЕСЛИ ATMEL БЫЛ РЕКОМЕНДОВАН
ВОЗМОЖНОСТИ ТАКИХ ПОВРЕЖДЕНИЙ. Atmel не делает никаких заявлений и не дает гарантий в отношении точности или полноты содержания этого документа и оставляет за собой право вносить изменения в спецификации и описания продуктов в любое время без предварительного уведомления. Atmel не берет на себя никаких обязательств по обновлению содержащейся здесь информации. Если специально не указано иное, продукты Atmel не подходят и не должны использоваться в автомобильной промышленности. Продукты Atmel не предназначены, не разрешены и не имеют гарантии для использования в качестве компонентов в приложениях, предназначенных для поддержания жизни.
ОТКАЗ ОТ ОТВЕТСТВЕННОСТИ ДЛЯ ВАЖНЫХ ДЛЯ БЕЗОПАСНОСТИ, ВОЕННЫХ И АВТОМОБИЛЬНЫХ ПРИЛОЖЕНИЙ: Изделия Atmel не предназначены и не будут использоваться в связи с какими-либо приложениями, в которых отказ таких продуктов может привести к значительным травмам или смерти («Критически важные для безопасности Applications») без специального письменного согласия сотрудника Atmel. Критические с точки зрения безопасности приложения включают, помимо прочего, устройства и системы жизнеобеспечения, оборудование или системы для эксплуатации ядерных установок и систем вооружений. Продукция Atmel не предназначена и не предназначена для использования в военных или аэрокосмических приложениях или средах, если только Atmel специально не обозначена как военная. Продукция Atmel не предназначена и не предназначена для использования в автомобильной промышленности, если только Atmel специально не указала ее как предназначенную для автомобилей.
Корпорация Atmel
1600 Technology Drive, Сан-Хосе, Калифорния 95110 США
Т: (+1)(408) 441.0311
Факс: (+1)(408) 436.4200-XNUMX
www.atmel.com
© 2016 Корпорация Атмел.
Ред.: Atmel-42330C-Atmel-ICE_User Guide-10/2016
Документы/Ресурсы
![]() |
Atmel Разработчики отладчика Atmel-ICE [pdf] Руководство пользователя Программисты-отладчики Atmel-ICE, Atmel-ICE, программисты-отладчики, программисты |