Интерфейс режима фоновой отладки
Интерфейс фонового режима отладки ( BDM ) — это электронный интерфейс, позволяющий отлаживать встроенные системы . В частности, он обеспечивает функцию внутрисхемной отладки в микроконтроллерах. Для этого требуется один провод и специализированная электроника в отлаживаемой системе. Он присутствует во многих Freescale Semiconductor продуктах . Фоновые команды делятся на два типа: неинтрузивные команды и активные фоновые команды. Во время работы пользовательской программы можно выдавать неинтрузивные команды, включая команды доступа к памяти. [1]
Интерфейс позволяет хосту управлять целью и запрашивать ее . В целевом устройстве требуется специализированное оборудование. Никакого специального оборудования на хосте не требуется; простого двунаправленного контакта ввода-вывода достаточно .
Сигналы ввода/вывода
[ редактировать ]Сигналы, используемые BDM для передачи данных в цель и обратно, инициируются хост-процессором. Хост инвертирует линию передачи, а затем либо
- Утверждает строку раньше, чтобы вывести 1,
- Утверждает строку позже, чтобы вывести 0,
- Три состояния его выхода, позволяя цели вести линию. Хост может воспринимать 1 или 0 как входное значение.
В начале следующего битового времени хост инвертирует линию передачи, и процесс повторяется. Каждый бит передается таким образом.
Другими словами, растущая сложность современных программных и аппаратных средств приводит к появлению новых подходов к отладке. Производители микросхем предлагают все больше и больше встроенных функций отладки для эмуляции новых процессоров .
Эта возможность, реализованная в различных процессорах под такими названиями, как фоновый режим отладки (BDM), JTAG и внутрисхемная эмуляция , помещает базовые функции отладки в сам чип. BDM (1-проводной интерфейс) или JTAG (стандартный JTAG) Благодаря порту отладки вы управляете и контролируете микроконтроллер исключительно с помощью стабильных встроенных служб отладки.
Этот режим отладки работает даже в случае сбоя целевой системы и позволяет разработчикам продолжить расследование причины сбоя.
Разработка приложений для микроконтроллеров
[ редактировать ]Хорошая среда инструментов разработки важна для сокращения общего времени и затрат на разработку. Пользователи хотят отлаживать свои прикладные программы в условиях, имитирующих реальную настройку их системы. По этой причине требуется возможность отладки пользовательской программы в реальной целевой системе. Это известно как внутрисхемная отладка . Более того, большинство новых микроконтроллеров имеют энергонезависимую память, например флэш-память, поэтому также требуется программный код в целевой системе. Это известно как внутрисхемное программирование .
Для поддержки требований внутрисхемной отладки и программирования семейство HC08 имеет режим монитора, а HCS08 и RS08 используют режим фоновой отладки (BDM). Аппаратное обеспечение фоновой отладки на HCS08 состоит из контроллера фоновой отладки (BDC) и модуля отладки (DBG). Аппаратное обеспечение фоновой отладки на RS08 состоит только из контроллера фоновой отладки (BDC).
БДМ-команды
[ редактировать ]Хост BDM может выдавать целевому объекту команды с параметрами. Некоторые команды позволяют читать или записывать блоки памяти цели, отдельные регистры ЦП или регистры, недоступные цели.
Примеры включают в себя:
READ_BYTE |
Прочитать байт из памяти |
WRITE_BYTE |
Записать байт в память |
GO |
Запуск/возобновление выполнения с текущего местоположения счетчика программ. |
WRITE_PC |
Записать значение в программный счетчик |
READ_PC |
Считать значение счетчика программ |
WRITE_X |
Записать значение в индексный регистр |
READ_X |
Чтение значения индексного регистра |
READ_SP |
Прочитайте значение указателя стека |
Функции БДМ
[ редактировать ]В зависимости от целевой части контроллер BDM может иметь аппаратный регистр точки останова . Регистр содержит значение, указывающее адрес в памяти. Когда ЦП целевой части обращается к этому месту в памяти, оборудование BDM может взять на себя управление целевой частью, остановить выполнение программы и начать работу в фоновом режиме.
Ссылки
[ редактировать ]- ^ «Справочное руководство по семейству HCS08» . стр. 34–35 . Проверено 6 февраля 2024 г.
Внешние ссылки
[ редактировать ]- Freescale Semiconductor Inc. MC9RS08KA2 (MC9RS08KA2, версия 4.0) Техническое описание
- компании Freescale Semiconductor Inc. Справочное руководство CPU12 [ мертвая ссылка ]
- компании Freescale Semiconductor Inc. Справочное руководство CPU12
- компании Freescale Semiconductor Inc. Справочное руководство по ядру RS08 [ мертвая ссылка ]
- компании Freescale Semiconductor Inc. Справочное руководство по ядру RS08
- компании Freescale Semiconductor Inc. Справочное руководство по семейству HCS08 [ мертвая ссылка ]
- компании Freescale Semiconductor Inc. Справочное руководство по семейству HCS08