Мне было очень интересно взглянуть на кишочки этого JTAG-адаптера, и я конечно же его разобрал.
Очевидно, что это переработанная в сторону упрощения схема JTAG-адаптера XDS100 version 2, любезно опубликованная Texas Instruments (см. архив [4]). Отсутствует коннектор JTAG20 pin и операционный усилитель, отслеживающий питание отлаживаемого устройства, остальное по мелочи. Схема работает, адаптер своих денег стоит, и это главное.
Поскольку на плате BBB [1] находится 20-пиновый коннектор JTAG, а у нашего эмулятора коннектор 14-пиновый, необходимо изготовить простейший переходной кабель:
На плате BBB предусмотрено посадочное место SMD для 20-контактного разъема с шагом выводов 1.27 мм, но сам коннектор не запаян. 20-контактный кабель с шагом выводов 1.27 мм и соответствующий коннектор можно недорого купить на AliExpress. Как вариант, можно напрямую припаять тонкие провода от 14-контактного шлейфа XDS100v2, и для надежности зафиксировать их термоклеем.
[Запуск на IAR8.1]
1. Загрузите в IAR пакет поддержки TI через меню Windows -> IAR Information Center for Arm (по умолчанию это появляется при первом запуске IAR) -> Example Projects -> Example projects that can be downloaded -> Texas Instruments, нужно кликнуть на значок загрузки. После нескольких минут пакет примеров установится.
2. В том же самом IAR Information Center for Arm, в разделе Installed example projects -> Texas Instruments выберите AM3xxx Cortex-A8 -> AM335x Starter Kit -> Getting Started, и кликните на значок запуска проекта. Предложат выбрать папку для проекта, выберите любую пустую папку на диске.
3. В свойствах проекта, раздел General Options проверьте, что выбран процессор TexasInstruments AM3358 (на платке BBB [1] как раз установлен такой процессор).
3. В разделе Debugger выберите Driver -> TI XDS, в разделе Driver -> TI XDS выберите Emulator -> TI XDS100v2 USB Emulator. Остальные настройки оставьте по умолчанию.
4. Проверьте, что в каталог по умолчанию для пакета эмуляции TI (C:\ti\ccs_base\) установлены драйвера XDS. Если это не так, то скачайте и установите XDS Emulation Software [3]. Как альтернативу можно установить пакет из дистрибутива ti_emupack_setup.exe IAR, который лежит в его корневом каталоге (см. папку C:\Program Files (x86)\IAR Systems\Embedded Workbench 8.1\arm\drivers\ti-xds\).
5. Соедините кабелем платку BBB с эмулятором, подайте питание +5V через джек, запустите отладку.
[Устранение ошибок]
1. Не найден пакет драйверов.
Sun Nov 15, 2020 14:46:08: IAR Embedded Workbench 8.30.1 (C:\Program Files
(x86)\IAR Systems\Embedded Workbench 8.1\arm\bin\armproc.dll)
Sun Nov 15, 2020 14:46:09: Connecting to TI XDS100v2 ( Probe no: USB100V2 ) COM[--/--]
Sun Nov 15, 2020 14:47:02: Fatal error: The path 'C:\ti\ccs_base' to the Texas
Instruments emulation package was not found. This package must be installed
before you can use the XDS emulator. The package installer is found in
...\arm\drivers\ti-xds
If the package is already installed, then check that the path (which should end
with \ccs_base) is valid in the project settings. Session aborted!
Установите пакет эмуляторов XDS с помощью инсталлятора ti_emupack_setup.exe (см. выше шаг 4).
2. Не загружается драйвер ядра CPU.
Sun Nov 15, 2020 14:50:22: IAR Embedded Workbench 8.30.1 (C:\Program Files
(x86)\IAR Systems\Embedded Workbench 8.1\arm\bin\armproc.dll)
Sun Nov 15, 2020 14:50:22: Connecting to TI XDS100v2 ( Probe no: USB100V2 ) COM[--/--]
Sun Nov 15, 2020 14:50:26: Fatal error: Failed to load the CPU core driver
Session aborted!
Другой подобный вариант ошибки:
Sun Nov 15, 2020 16:22:36: IAR Embedded Workbench 8.30.1 (C:\Program Files
(x86)\IAR Systems\Embedded Workbench 8.1\arm\bin\armproc.dll)
Sun Nov 15, 2020 16:22:37: Connecting to TI XDS100v2 ( Probe no: USB100V2 ) COM[--/--]
Sun Nov 15, 2020 16:24:33: Fatal error: Failed to connect to the XDS emulator (connect
CPU)... (Error -1170 @ 0x0) Unable to access the DAP. Reset the device, and retry the
operation. If error persists, confirm configuration, power-cycle the board, and/or
try more reliable JTAG settings (e.g. lower TCLK). (Emulation package 8.0.27.9)
Session aborted!
К сожалению, эта ошибка устраняется костылем. Нужно нажать кнопку S1 RESET, после чего быстро запустить сессию отладки. Если все прошло хорошо, то отладка запустится.