Последние комментарии

Стартовый набор разработчика от компании ATMEL - Внутрисхемные эмуляторы

Внутрисхемные эмуляторы

Принцип внутрисхемной эмуляции состоит в замене целевого микроконтроллера неким устройством, поведение которого с точки зрения отлаживаемой системы соответствует поведению целевого микроконтроллера. Это устройство, называемое внутрисхемным эмулятором, должно не только адекватно отражать поведение целевого микроконтроллера, но и предоставлять разработчику возможность управления процессом отладки и контроля за состоянием реальной отлаживаемой микропроцессорной системы. Для управления процессом отладки при использовании современных внутрисхемных эмуляторов, как правило, используется персональный компьютер с соответствующим программным обеспечением. 

В настоящий момент компания Atmel предлагает 2 типа внутрисхемных эмуляторов. 

Первый тип подразумевает полную замену микроконтроллера на некое устройство, которое эмулирует поведение реального микроконтроллера на целевой плате. Данный тип, на сегодняшний день, представлен двумя внутрисхемными эмуляторами ICE40 и ICE50. 

Второй тип подразумевает использование микроконтроллера AVR, имеющего все необходимые для внутрисхемной отладки аппаратные блоки и управляемого внешним отладчиком. На данный момент этот тип отладчиков представлен устройством ATJTAGICE mkII (читается "Марк два"). 

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

Внутрисхемные эмуляторы ICE40, ICE50. 

Внутрисхемные эмуляторы ICE40 и ICE50 представляют собой классические внутрисхемные эмуляторы. Различие эмуляторов состоит в количестве поддерживаемых микроконтроллеров. 

Список поддерживаемых эмулятором ICE50 микроконтроллеров очень широк: ATmega128/CAN128, ATmega165/325, ATmega169/329/649, ATmega48/88/168, ATmega162, ATmega8/16/32/64, Atmega8515/8535, ATtiny26, ATtiny13, ATtiny2313. 

Эмулятор ICE40 поддерживает гораздо меньшее количество микроконтроллеров, а именно микроконтроллеры ATtiny26, ATmega8, ATtiny13.

Рисунок 11. Внешний вид внутрисхемных эмуляторов ICE40/ICE50

Для поддержки различных микроконтроллеров, имеется набор выносных плат (адаптеров) для пайки либо установки в DIP-панель для микроконтроллера на целевой плате (см. рис. 9). Для микроконтроллеров AVR, которые не выпускаются в DIP-корпусах, адаптер (ATADAP64BOT) предназначен для припаивания на площадку под корпус TQFP. По типу подключенного адаптера ICE40/50 автоматически определяет, какой микроконтроллер будет эмулироваться. Адаптеры для поддержки микроконтроллеров ATtiny13, ATmega169/329/649, ATmega165/325 в комплект эмулятора ICE40/50 не входят, а заказываются отдельно.

 

Рисунок 12. Внешний вид выносных плат эмулятора ICE40/50

Эмуляторы ICE40 и ICE50 выполняют следующие функции: 
- Эмуляция аналоговой и цифровой периферии микроконтроллера 
- Работа в диапазоне напряжений от 2.2В до 5.5В 
- Просмотр значений регистров ввода/вывода 
- Просмотр регистрового файла, памяти программ, данных и EEPROM 
- Запись трассы 
- Неограниченное количество точек останова 
- Отладка по тексту программы на языке высокого уровня 
- Счетчик времени исполнения программы 

Управление отладкой производится в интегрированной среде разработки AVR Studio. В качестве программы для работы микроконтроллера может использоваться отладочный объектный код в формате UBROF8 либо COFF, а также программа на ассемблере. Подключение эмулятора к компьютеру производится через COM-порт. 

Одной из удобных функций, реализованных в ICE40/50, является возможность записи трассы, то есть сохранение последовательности исполнения инструкций микроконтроллером. Анализ записанной трассы позволяет выявить участки кода, исполнение которых по тем или иным причинам не происходит (Code Coverage Analysis). Такой анализ очень полезен при отладке программ, содержащих несколько процедур обработки прерываний, особенно если вложенность прерываний не разрешена.

В ICE50 реализован режим диагностики узлов внутрисхемного эмулятора. Для осуществления диагностики необходимо установить тестовую панель на плату отладочного кристалла и в AVR Studio выбрать пункт меню Tools -> ICE50 Selftest. После запуска процесса диагностирования (кнопка Run) последовательно проверяются все узлы и режимы внутрисхемного эмулятора. Если при этом определяется, что на плате управления содержится устаревший вариант внутреннего микрокода (firmware), то программа диагностики предложит автоматически обновить конфигурацию ПЛИС и памяти программ микроконтроллера. Также возможно произвести ручное обновление микрокода ICE50, выбрав пункт меню Tools -> ICE50 Upgrade.

Tags: STK500

Печать

  • Просмотров: 36144

Советуем посмотреть...

Авторизация