В HTML      В PDF
микроэлектроника, микросхема, транзистор, диод, микроконтроллер, память, msp430, Atmel, Maxim, LCD, hd44780, t6963, sed1335, avr, mega128
Предприятия Компоненты Документация Применения Статьи Новости

  • ACE
  • AVR
  • Altera
  • Fujitsu
  • HC05-08
  • Holtek
  • 68300
  • MCS-51
  • MCS-96
  • MSP430
  • DSP 320CXX
  • PIC
  • Siemens
  • Zilog
  • ТЕСЕЙ
  • Программаторы
  • Разное
  •  
    Пересюхтюмя


    13-я Международная выставка электронных компонентов и комплектующих для электронной промышленности





    Выставка Передовые Технологии Автоматизации





    Главная страница > Программы > HT-3000
    Пересюхтюмя


    13-я Международная выставка электронных компонентов и комплектующих для электронной промышленности





    Выставка Передовые Технологии Автоматизации


    Командный режим отладчика

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

    Вход/выход из командного режима

    • Вход в командный режим
      • В меню Отладка (Debug) программы HT-IDE3000 выберите команду Командный режим (Command Mode). При входе в командный режим появится новое окно, в котором можно набирать команды в командной строке после сиvволов "HT8>". (Рис. 5-8).
    • Окно командного режима
      • В заголовке окна командного режима отображается название текущего файла проекта.
      • После появления в командной строке символов "HT8>" можно набирать команды.
      • После ввода команды её полный синтаксис будет отображён в статусной строке внизу окна.
      • После ввода команды в командной строке "HT8> xxxx" в следующей строке будет отображён результат её выполнения. (Рис. 5-9)
      • После этого будет отображено следующее приглашение "HT8>", при том можно набирать следующую команду.
    • Выход из командного режима

      Для выхода из командного режима в обычное окно следует набрать в командной строке команду Q[uit] или использовать обычный способ выхода из окна Windows.

    Функции, поддерживаемые в командном режиме

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

    Команда Описание функции Синтаксис
    ! Выполнение предыдущей команды !dd
    ; Комментарий ;
    BP Команды точек останова BP {-C|-D|-E|-L} [список|*]. _ список =11 12...
    BP Установить точку останова BP Область [,RW], Расположение [,Содержимое] [,Внеш. Сигнал]
    Дамп программной памяти DB [банк.адрес [,диапазон] ]
    DR Дамп памяти данных DR [банк.адрес [,диапазон] ]
    FA Заполнить область строкой FA {банк.адрес|символ} список._ список =11 12...
    FB Заполнить область байтами FB {банк.адрес|символ} список._ список =11 12...
    GO Запуск программы в свободном режиме либо запуск до определённого адреса GO [адрес]
    JP Непосредственный переход на определённый адрес JP адрес
    H Помощь H
    HIS История команд HIS
    LF Загрузить и выполнить лог-файл LF [-V] [имя лог-файла]
    LP Загрузить проект LP имя проекта
    Q Выход Q
    R Сброс R
    POR Сброс по включению питания POR
    S Пошаговый режим (вход в процедуру / перешагивание / выход из процедуры) W {-S|-C} [Имя лог-файла]

    В синтаксисе команд отладки скобки { } означают, что параметры являются обязательными, в противном случае возникнет ошибка. Параметры разделяются символом |.


    Рис. 5-8

    Команды точек останова

    Существует два типа команд точек останова, их синтаксис выглядит следующим образом:

    • BP - Снять / Разрешить / Запретить / Вывести список
      Синтаксис: BP [-C | -D | -E | -L ] [список | *]

    Параметр -C означает очистку точки останова. При этом будет удалена выделенная точка останова либо удаляются все точки останова в списке. В списке может присутствовать от 1 до 20 точек, которые уже установлены. Можно выбирать одновременно несколько точек.

    Например, три цифры 1 3 8, разделённые пробелом, означают, что будут удалены точки с порядковыми номерами 1, 3 и 8. Операция идентична функции Удалить (Delete) меню Отладка/Точки останова (Debug/Breakpoint). Символ звёздочки * означает, что все установленные точки останова будут удалены. Эта операция идентична функции Очистить всё (Clear All) меню Отладка/Точки останова (Debug/Breakpoint).

    Параметр -D позволяет сделать все выделенные точки останова неактивными, при этом очки останова останутся в списке. Такая операция идентична функции Запретить (Disable) меню Отладка/Точки останова (Debug/Breakpoint). Символ звёздочки * имеет такое же значение, как описано выше.

    Параметр -E позволяет сделать все выделенные точки останова активными. Такая операция идентична функции Разрешить (Enable) меню Отладка/Точки останова (Debug/Breakpoint). Символ звёздочки * имеет такое же значение, как описано выше.

    Параметр -L позволяет отобразить в окне все установленные точки останова, в соответствии с содержимым окна Отладка/Точки останова (Debug/Breakpoint), где первая колонка отображает номер точки останова. Пользователь может впоследствии использовать этот номер совместно с командами BP -C, BP -D, BP -E.


    Рис. 5-9

    Примечания

    1. Для параметра BP-L список не требуется
    2. Программа HT-IDE3000 допускает до 3 активных точек останова одновременно.

    Если параметры C, D, E или L не заданы, то команда Точки останова трактуется как:

    • BP - Установить точку останова
      Синтаксис: BP Область [,RW], Расположение [,Содержимое] [,Внеш. Сигнал]

    Параметры в скобках не являются обязательными, однако при определённых условиях может потребоваться их указание.

    Параметр Область может принимать значения С или D. Буква C означает расположение точки останова в программной памяти, а D означает расположение точки останова в области данных (ОЗУ)

    Если в качестве параметра области выбрано D, следует также указать опцию "чтение/запись" [,RW]. Эта опция может принимать значения R, W или RW. Смысл этой опции заключается в том, что когда точка останова расположена в области данных, пользователь может выбрать условие активизации точки останова по чтению, записи, либо чтению и записи. Если в качестве параметра области выбрано C, что означает программную память, параметр RW необязателен.

    Параметр Расположение определяет положение точки останова, его формат выглядит следующим образом:

    [имя исходного файла!].номер строки или [имя исходного файла!].имя символа
    

    Если < имя исходного файла > не определено, по умолчанию будет использован текущий открытый файл.

    Если в качестве параметра области выбрано D, следует указать параметр Содержимое. Точка останова будет установлена по указанному адресу в памяти данных и инициирует останов при чтении или записи с указанным содержимым.

    Информацию по использованию параметра Внеш. Сигнал см. в руководстве пользователя HT-IDE3000 User's Guide

    Команда комментарий

    • Синтаксис: ; строка комментария

      Команда предназначена для записи пояснений в лог-файл. Любые символы после значка ";" не имеют никакого функционального воздействия.

    Команды дампа

    • Синтаксис:
      DB банк.адрес,диапазон
      DB диапазон
      DB

      При помощи этой команды можно отобразить в окне содержимое заданной области программной памяти.

      Область отображаемой памяти задаётся при помощи адреса, банка и диапазона. Данные отображаются в шестнадцатеричном виде. Если адрес задан, а банк - нет, по умолчанию будет использован текущий банк. Если не заданы ни адрес, ни банк, в качестве банка будет использован текущий, а в качестве адреса - текущее значение программного счётчика. Если не задан диапазон, то по умолчанию будет выведен диапазон в 16 слов. Значение диапазона не должно превышать объёма одного банка (2000h). Пример такого использования параметров команды - 1.0f00, где номер банка равен 1, а адрес равен 0f00h.

    • Синтаксис:
      DR банк.адрес,диапазон
      DR адрес

    При помощи этой команды можно отобразить в окне содержимое заданной области памяти данных. Область отображаемой памяти задаётся при помощи адреса, банка и диапазона. Данные отображаются в шестнадцатеричном виде. Если диапазон не задан, то по умолчанию будет выведен диапазон в 16 слов. Значение диапазона не должно превышать объёма одного банка (100h), адрес банка также имеет шестнадцатеричный формат.

    Команды заполнения

    При помощи этих команд изменяется содержимое памяти данных

    • Синтаксис: FB {банк.адрес | символ} ,список

      Этой командой записываются байты, определённые в списке в память данных в определённый банк по определённому начальному адресу либо символу.

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

      Обратите внимание, что список не должен перекрывать границу банка.

    • Синтаксис: FA {банк.адрес | символ}, "строка"

      Команда FA аналогична команде FB за исключением того, что данные передаются в формате ASCII Пользователь может использовать следующие форматы символа:

      .var
      имя файла!.var
      путь\имя файла!.var
      

      Примечание: Если путь содержит пробелы, имя файла следует указывать в кавычках, в противном случае возникнет ошибка.

    • Пример: FA "d:\tmp\test cmd\test1.asm!.count", "test1"

    Команды запуска/перехода

    • Синтаксис: GO [ адрес ]

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

    • Синтаксис: JP адрес

      Осуществляет принудительный переход на указанный адрес. Указание адреса обязательно.

    Команда помощь

    • Синтаксис: H

      По этой команде в окно будет выведен список всех отладочных команд, их синтаксис и описание.

    Команды истории

    • Синтаксис: HIS

      По этой команде в окно выводится 20 последних выполненных команд, не включая собственно команду HIS. В первой колонке отображается порядковый номер.

    • Синтаксис: !dd

      Где dd это отображённый при помощи команды HIS порядковый номер команды. Эта команда осуществляет повторное выполнение заданной команды. Использование номера команды в последовательности совместно с символом "!" позволяет сэкономить время на набор команд и параметров. Если порядковый номер команды не указан, будет повторно выполнена последняя из выполненных команд.

    Команды загрузки

    • Синтаксис: LF [-V] [Имя лог-файла]

      По этой команде будут загружены и выполнены все отладочные команды из лог-файла, заданного при помощи его имени.

    Если имя файла не задано, по умолчанию будет использовано имя файла текущего проекта.

    Параметр -V обозначает отображение командной строки и результата выполнения в окне.

    Если команда LF выполняется без параметра -V, то результат выполнения будет записан в лог-файл с именем, идентичным имени исходного файла и расширением .res.

    Для создания лог-файла используется команда W. Содержимое файла можно редактировать при помощи команд Файл (File) и Редактировать (Edit) программы HT-IDE3000.

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

    Примечания

    1. Если путь содержит пробелы, имя файла следует указывать в кавычках, в противном случае возникнет ошибка.
    2. Лог-файл не должен содержать команд LF, W или Q.

    Команда выхода

    • Синтаксис: Q

      Эта команда завершает командный режим и возвращается в текущее окно.

    Примечания

    1. В режиме выполнения лог-файла эта команда игнорируется.
    2. После выхода из командного режима все файлы, открытые командами "LF" и "W -S" будут закрыты, выполнение команд - остановлено.

    Команды сброса

    • Синтаксис: R

      Действие этой команды аналогично действию команды Отладка/Сброс (Debug/Reset)

    • Синтаксис: POR

      Действие этой команды аналогично действию команды Отладка/Сброс по включению питания (Debug/Power-On Reset)

    Команды пошаговой отладки

    Существует 3 типа команд пошаговой отладки; после их выполнения отображается состояние PC, STATUS и ACC

    • Синтаксис: S {-I | -O | -V }

      Команда пошаговой отладки.

      -I означает Вход в процедуру (Step Into), функция аналогична команде Отладка/Вход в процедуру (Debug/Step Into)
      -V означает Перешагивание, функция аналогична команде Отладка/Перешагивание (Debug/Step Over)
      -O означает выход из процедуры, функция аналогична команде Отладка/Выход из процедуры (Debug/Step Out)

    Если параметры не указаны, по умолчанию будет использовано "S -V"

    Команда трассировки

    • Синтаксис: TR [-L] [ длина]

      Команда трассировки отображает в окне содержимое буфера трассировщика.

    Параметр -L означает, что будут отображены все записи, включая Номер последовательности, Программный счётчик, Машинный код, Дизассемблированную инструкцию, Данные, Внешний сигнал и Имя исходного файла с номером строки. Если параметр -L не задан, по умолчанию будут записаны только Номер последовательности, Программный счётчик, Машинный код, Дизассемблированная инструкция и Имя исходного файла с номером строки.

    Параметр "длина" задаёт глубину отображаемой информации трассировщика. Отображаемая информация начинается с номера последовательности 0 и продолжается на заданную глубину. Этим параметром также можно задать глубину отображения буфера пост-трассиировки. Для этого следует предварительно задать Объём последующей информации. По умолчанию длина равна 5.

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

    Команда записи

    • Синтаксис: W [-S | -C ] [имя лог-файла]

      По этой команде отладочные команды и сопутствующая информация записываются в лог-файл. Лог-файл закрывается при выполнении команд W -C или Q или по выходу из командного режима.

      -S означает создание лог-файла с последующей записью всех команд и результатов выполнения
      -C означает закрытие предварительно созданного лог-файла, последующие команды записаны в лог-файл не будут

    Если указанный лог-файл уже однажды был сохранён, система потребует подтверждения перед перезаписью файла и выполнением следующего шага. Добавлять к имени файла расширение не обязательно.

    Если лог-файл не существует, то он будет создан с именем, идентичным имени проекта и расширением .CMD.

    Примечания :

    1. Если путь содержит пробелы, имя файла следует указывать в кавычках, в противном случае возникнет ошибка.
    2. После выполнения команды "W -S" невозможно выполнение команд "LF" и "W -S".

    Формат лог-файла

    Лог-файл представляет собой текстовый файл, который можно редактировать любым текстовым редактором, включая встроенный редактор пакета HT-IDE3000. Этот редактор вызывается командой Редактировать (Edit) из основного меню. Каждая отладочная команда занимает одну строку лог-файла.

    Команда "W-S имя лог-файла" очищает содержимое лог-файла, после чего в него записываются новые команды и их результаты.

    Если файл создан из командной строки с помощью команды "W -S", то он будет содержать также значки командной строки. При использовании этого файла командами отладчика эти значки автоматически игнорируются. В том случае, если файл создаётся с помощью редактора, набирать значки командной строки не требуется.

    Если лог-файл создан при помощи команды "W -S", то перед каждым из результатов выполнения команды будет автоматически вставлен символ ";" переводящий результат выполнения в комментарий. В этом случае, при последующей загрузке файла будут выполняться только команды, результаты выполнения будут игнорированы.

    Сообщения об ошибках HT-COMMAND

    Сообщение об ошибке Описание
    Invalid Command/Неверная команда Набранная команда не существует
    Can not find HT-IDE/Не могу найти HT-IDE Текущая среда не является средой HT-IDE3000
    Syntax error/Ошибка синтаксиса Неверный синтаксис набранной команды
    No project for debug/Отсутствует проект для отладки Ни один проект не был открыт в среде HT-IDE3000
    ROM bank out of range/Банк ПЗУ вышел за пределы Дамп программной памяти превысил допустимые размеры
    RAM bank out of range/Банк ОЗУ вышел за пределы Дамп памяти данных превысил допустимые размеры
    Can not run xxx command in emulation mode/Команда ххх не может быть выполнена в режиме эмуляции Команда ххх не может быть выполнена
    Can not run xxx command in load file mode/ Команда ххх не может быть выполнена в режиме загрузки файла Команда ххх не может быть выполнена
    Can not run xxx command in write file mode/ Команда ххх не может быть выполнена в режиме записи файла Команда ххх не может быть выполнена
    Unterminated string/Незавершённая строка Строковые параметры требуется помещать в закрытые скобки
    No Command in history buffer/Нет команд в буфере истории Буфер истории пуст
    Open xxx log file error/Ошибка открытия лог-файла ххх Ошибка при открытии лог-файла ххх
    Close xxx log file error/Ошибка закрытия лог-файла ххх Ошибка при закрытии лог-файла ххх
    Read xxx log file error/Ошибка чтения лог-файла ххх Ошибка при чтении лог-файла ххх
    Write xxx log file error/Ошибка записи лог-файла ххх Ошибка при записи лог-файла ххх
    Not in emulation status/Не в состоянии эмуляции Перед выполнением этой команды следует перейти в режим эмуляции
    Sources have been modified, please rebuild/Исходные файлы изменены, требуется повторное выполнение проекта Исходные файлы проекта были изменены, для вступления изменений в силу требуется повторное выполнение проекта
    Stop by user/Остановлено пользователем Выполнение остановлено пользователем
    Get PC failed/Сбой при чтении PC Произошла ошибка при чтении Программного счётчика PC
    Stack overflow/Переполнение стека Размер стека превысил допустимые переделы
    No debug info/Отсутствует отладочная информация Отладочная информация для установленных точек останова отсутствует
    Cannot find the symbol/Невозможно найти символ Невозможно найти указанный символ
    Cannot find the register/Невозможно найти регистр Невозможно найти указанный регистр


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