Интерфейс режима фоновой отладки
Интерфейс фонового режима отладки ( 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 [ править ]
Хост BDM может выдавать целевому объекту команды с параметрами. Некоторые команды позволяют читать или записывать блоки памяти цели, отдельные регистры ЦП или регистры, недоступные цели.
Примеры включают в себя:
READ_BYTE | Прочитать байт из памяти |
WRITE_BYTE | Записать байт в память |
GO | Запуск/возобновление выполнения с текущего местоположения счетчика программ. |
WRITE_PC | Записать значение в программный счетчик |
READ_PC | Считать значение счетчика программ |
WRITE_X | Записать значение в индексный регистр |
READ_X | Чтение значения индексного регистра |
READ_SP | Прочитайте значение указателя стека |
Функции BDM [ править ]
В зависимости от целевой части контроллер 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