Поиск по сайту:

 


По базе:  

микроэлектроника, микросхема, микроконтроллер, память, msp430, MSP430, Atmel, Maxim, LCD, hd44780, t6963, sed1335, SED1335, mega128, avr, mega128  
  Главная страница > Программы > HT-3000

реклама

 




Мероприятия:




Трассировка отлаживаемой программы

Программа HT-IDE3000 обладает мощным механизмом трассировки, позволяющим фиксировать весь процесс выполнения и сопутствующую информацию в процессе отладки пользовательской программы в среде HT-IDE3000. Трассировщик обладает возможностью установки квалификаторов на определённые фильтром инструкции, а также позволяет задавать условия срабатывания для остановки трассировки. Также можно записать определённое количество событий до или после точки срабатывания.

Примечание: При запуске эмуляции в среде HT-IDE3000 (см. Главу Эмуляция прикладных программ), трассировщик автоматически начнёт запись отладочной информации, но обратное неверно.

Запуск механизма трассировки

Основным требованием для запуска механизма трассировки является установка режима трассировки Trace Mode с квалификатором Qualify или без него. Режим Trace Mode определяет варианты трассировки пользовательской программы, а квалификатор Qualify определяет условия трассировки.

Существуют следующие режимы трассировщика:

  • Обычный (Normal)

    Режим по умолчанию, включает режим трассировки для всех пользовательских программ.

  • Трассировка основной программы (Trace Main)

    Включает режим трассировки для всей программы за исключением обработчиков прерываний.

  • Трассировка обработчиков прерываний (Trace INT)

    Включает режим трассировки для обработчиков прерываний.

В соответствии с заданными квалификаторами Qualify, трассировщик определяет, какие инструкции и связанная с ними отладочная информация будет записана в буфере трассировщика в процессе эмуляции программы. Выбор инструкции, информация о которой будет записана, определяется удовлетворением условий одного из разрешённых квалификаторов. Формат квалификаторов аналогичен формату точек останова. Если требуется записать все шаги программы, в таком случае квалификаторы не используются (не устанавливать опцию Qualify). По умолчанию квалификаторы отключены. В отличие от квалификаторов режима трассировки, определяющих условия записи трассировочной информации, режим триггера (Trigger Mode) и Объём последующей информации (Forward Rate) определяют условие остановки трассировки.

Режим триггера (Trigger Mode) определяет тип условия срабатывания и используется для определения точки останова трассировки. Объём последующей информации (Forward Rate) задаёт режим трассировки между точкой срабатывания триггера и точкой остановки.

Существуют следующие режимы триггера:

  • Нет точки срабатывания (No Trigger)
    Режим по умолчанию. Нет останова трассировки.
  • Точка срабатывания по условию А (Trigger at Condition A)
    Точка срабатывания по выполнению условия А.
  • Точка срабатывания по условию В (Trigger at Condition B)
    Точка срабатывания по выполнению условия B.
  • Точка срабатывания по условию А или В (Trigger at Condition A or B)
    Точка срабатывания по выполнению любого из условий A или B.
  • Точка срабатывания по условию В после условия А (Trigger at Condition B after A)
    Точка срабатывания по выполнению условия B после условия А
  • Точка срабатывания по условию А к раз (Trigger when meeting condition A for k times)
    Точка срабатывания по выполнению условия А k раз.
  • Точка срабатывания по условию В после условия А k раз (Trigger at Condition B after meeting A for k times)
    Точка срабатывания по выполнению условия B после условия А k раз

Условие A и Условие B определяют точку срабатывания триггера. Формат условий A и B идентичен формату точек останова.

Счётчик Loop Count определяет число пропусков выбранного условия. Он активен только для двух последних из приведенных выше режимов триггера.

Объём последующей информации Forward Rate определяет примерный объём записи информации трассировщика между точкой срабатывания и точкой останова в буфере трассировщика. Точка срабатывания делит буфер трассировщика на две части, до и после точки срабатывания. Опция Объём последующей информации используется для ограничения объёма записываемой информации трассировщика после точки срабатывания. Объём может варьироваться от 0 до 100%.

Примечание: Степень заполнения буфера трассировщика не обязательно должна достигнуть значения Объём последующей информации (Forward Rate). Если была достигнута точка останова или выполнена команда останова трассировки (см. главу Останов механизма трассировки), запись информации трассировщика будет немедленно прекращена.

Все квалификаторы, используемые при трассировке, записываются и отображаются в окне Список квалификаторов (Qualify list). В список можно добавить до 20 квалификаторов, при этом до 6 из них могут быть активными. Любой из квалификаторов можно запретить либо удалить из списка. Формат каждого из квалификаторов идентичен формату точек останова (см. главы Точки останова, Описание точек останова)

Останов механизма трассировки

Существует 3 способа останова механизма трассировки:

  • Установка точки срабатывания (Trigger Mode) и Объёма последующей информации (Forward Rate), как показано выше.
  • Установка точки останова для прекращения отладки и трассировки.
  • Выполнение команды Останов трассировки (Trace Stop) меню Отладка (Debug) (Рис. 5-2).

На Рис. 5-4 показаны все требования, предъявляемые при использовании механизма трассировки. Отображён результат команды Трассировка (Trace) меню Отладка (Debug).

Настройка запуска/остановки трассировки

  • Выберите команду Трассировка (Trace) меню Отладка (Debug)
    При этом должно появиться диалоговое окно трассировщика, как показано на Рис.5-4.
  • Выберите требуемый режим трассировщика в выпадающем окне Trace Mode
  • Нажмите кнопку OK


Рис. 5-4

Для установки режима срабатывания триггера

  • Выберите команду Трассировка (Trace) меню Отладка (Debug)
    При этом должно появиться диалоговое окно трассировщика, как показано на Рис.5-4.
  • Выберите требуемый режим срабатывания триггера в выпадающем окне Trigger Mode
  • Нажмите кнопку OK

Для установки Объёма последующей информации

  • Выберите команду Трассировка (Trace) меню Отладка (Debug)
    При этом должно появиться диалоговое окно трассировщика, как показано на Рис.5-4.
  • Выберите требуемый объём последующей информации с помощью скроллинга Forward Rate
  • Нажмите кнопку OK

Для установки Условия A / Условия B

  • Выберите команду Трассировка (Trace) меню Отладка (Debug)
    При этом должно появиться диалоговое окно трассировщика, как показано на Рис.5-4.
  • Отметьте Условие А / Условие В (Condition A/Condition B)
  • Нажмите кнопку Установить условие (Set Condition)
    Диалоговое окно квалификаторов Set Qualify показано на Рис. 5-5.
  • Введите информацию об условиях
  • Нажмите кнопку OK для закрытия диалогового окна Set Condition
  • Нажмите OK для закрытия диалогового окна трассировщика


Рис. 5-5

Для добавления квалификатора трассировщика

  • Выберите команду Трассировка (Trace) меню Отладка (Debug)
    При этом должно появиться диалоговое окно трассировщика, как показано на Рис.5-4.
  • Нажмите кнопку Квалификатор (Qualify)
  • Нажмите кнопку Установить квалификатор (Set Qualify)
    При этом должно появиться диалоговое окно Установка квалификатора (Set Qualify), как показано на Рис.5-5.
  • Заполните информацию о квалификаторе
  • Нажмите кнопку OK для закрытия диалогового окна Set Qualify
  • Нажмите кнопку Добавить (Add) для добавления квалификатора в список Qualify list
  • Нажмите OK для закрытия диалогового окна трассировщика

Для удаления квалификатора трассировщика

  • Выберите команду Трассировка (Trace) меню Отладка (Debug)
    При этом должно появиться диалоговое окно трассировщика, как показано на Рис.5-4.
  • Выберите в списке Qualify list квалификатор, который требуется удалить
  • Нажмите кнопку Удалить (Delete) для удаления квалификатора
  • Нажмите OK для подтверждения

Для удаления всех квалификаторов

  • Выберите команду Трассировка (Trace) меню Отладка (Debug)
    При этом должно появиться диалоговое окно трассировщика, как показано на Рис.5-4.
  • Нажмите кнопку Очистить все (Clear All)
  • Нажмите OK для подтверждения

Примечание: Если квалификаторы не заданы, по умолчанию все инструкции являются квалифицируемыми.

Для разрешения/запрета квалификатора трассировщика

  • Выберите команду Трассировка (Trace) меню Отладка (Debug)
    При этом должно появиться диалоговое окно трассировщика, как показано на Рис.5-4.
  • Выберите в списке Qualify list квалификатор, который требуется разрешить/запретить
  • Нажмите кнопку Разрешить/запретить (Enable/Disable)
  • Нажмите OK для подтверждения

Примечание: Одновременно может быть разрешено не более 6 квалификаторов трассировщика.

Формат записи трассировщика

После установки квалификаторов трассировщика и условий срабатывания триггера, те инструкции, которые удовлетворяют условиям квалификации, будут записаны в буфер трассировщика. При помощи команды Листинг трассировщика (Trace List) меню Окно (Window) пользователь имеет доступ к записям трассировщика в процессе отладки программы. На экране могут отображаться не все поля записей трассировщика, обязательным является только номер последовательности. Остальные поля зависят от настроек в подменю Отладка (Debug) меню Опции (Options). Текст, заключенный в круглые скобки, представляет собой заголовки, заданные командой Листинг трассировщика (Trace List) меню Окно (Window). На Рис. 5-6 и 5-7 показано содержимое листинга трассировщика при разных настройках опций отладки.


Рис. 5-6

  • Номер последовательности (No)

    Для любого режима срабатывания триггера, номер последовательности для точки срабатывания равен +0. Записи трассировщика до и после точки срабатывания имеют, соответственно, отрицательные и положительные номера. Если выбраны все возможные опции Полей записи трассировщика (Trace Record Fields) (в подменю Опции отладки (Debug Option) меню Опции (Option)), результирующее окно будет выглядеть, как изображено на Рис. 5-7. Если режим срабатывания триггера не выбран, либо точка срабатывания триггера не достигнута, последовательность начинается с номера -00001 и уменьшается с каждым шагом трассировщика на 1 (Рис. 5-6).

  • Программный счётчик (PC)

    Значение программного счётчика для инструкции в записи трассировщика.

  • Машинный код (CODE)

    Машинный код данной инструкции.

  • Дизассемблированная инструкция (INSTRUCTION)

    Мнемоническое обозначение инструкции, дизассемблированной при помощи утилиты пакета HT-IDE3000.

  • Данные (DAT)

    Результат выполнения (чтение либо запись).

  • Состояние внешних сигналов (0 1 2 3)

    Соответствует состоянию внешних линий ET0~ET3.

  • Имя исходного файла и номер строки (FILE-LINE)

    Имя исходного файла и номер строки для данной инструкции.

  • Исходная строка (SOURCE)

    Строка исходного файла (включая символы).

Все перечисленные выше поля являются необязательными, за исключением номера последовательности, который отображается всегда.


Рис. 5-7

Примечание: Для задания полей записи трассировщика используйте команду Отладка (Debug) меню Опции (Options). Для просмотра записей трассировщика используйте команду Листинг трассировщика (Trace List) меню Окно (Window).

Очистка буфера трассировщика

Для очистки буфера трассировщика используется команда Reset Trace. После её использования, отладочная информация будет сохраняться с начала буфера трассировщика. Обратите также внимание на то, что команды Сброс (Reset) и Сброс по включению питания (Power-On Reset) очищают буфер трассировщика.



<-- Предыдущая страница Оглавление Следующая страница -->

    Получить консультации и преобрести компоненты вы сможете у официального дистрибьютора фирмы Holtek Semiconductor компании ChipSelect,






 
Впервые? | Реклама на сайте | О проекте | Карта портала
тел. редакции: +7 (995) 900 6254. e-mail:info@eust.ru
©1998-2023 Рынок Микроэлектроники