Преобразователь JTAG 20 pin -> (JTAG 10 pin + DBGU + SAM-BA) Печать
Добавил(а) microsin   

Пользователи платформы ARM наверное не раз замечали, что стандартный 20-pin коннектор JTAG (через который обычно отлаживают разрабатываемое устройство, а иногда и программируют) слишком громоздко, чтобы его устанавливать в готовую конструкцию.

Кроме JTAG хотелось бы иметь на отлаживаемой плате ещё и DBGU, а иногда и возможность прошивать устройство через загрузчик USB SAM-BA... Все вышеперечисленные задачи с успехом решает описываемое устройство. Благодаря тому, что стандартный 20-pin JTAG имеет много избыточных контактов (половина из них земля и питание +5 вольт), удалось количество контактов разъема уменьшить вдвое, и даже 2 провода использовать под дополнительные функции - передаются либо сигналы DBGU (TXD и RXD), либо сигналы USB (D+ и D-). На рисунке показано, как соединяются компоненты системы между собой.

JTAG-DBGU-connections.jpg

Маленькая платка посередине - простая переходная плата (назовем её условно JTAG10-DBGU), организующая преобразование сигналов разъема стандартного 20-pin JTAG в модифицированный 10-pin JTAG. Преобразование (цоколевка) ножек интерфейсов показано в таблице ниже.

20-pin JTAG standard 10-pin JTAG modified
GND 4, 6, 8, 10, 12, 14, 16, 20 GND 7
VCC 1, 2 VCC 1, 10
TDI 5 TDI 2
TMS 7 TMS 3
TCK 9, 11 TCK 4
TDO 13 TDO 5
RST 15 RST 6
 - (RXD DBGU или D- USB SAM-BA) 8
 - (TXD DBGU или D+ USB SAM-BA) 9

Теперь не нужно на целевой плате устанавливать громоздкий 20-pin разъем, достаточно ограничиться более компактным 10-pin разъемом. Кроме того, добавились сигналы (RXD DBGU или D- USB SAM-BA) - ножка 8 и (TXD DBGU или D+ USB SAM-BA) ножка 9. Сигналы, которые передаются через ножки 8 и 9 разъема, зависят от положения перемычек JP1..JP4. Можно выбрать либо DBGU (перемычки JP1 и JP2 сняты, а перемычки JP3 и JP4 установлены), либо USB отлаживаемого чипа (перемычки JP1 и JP2 установлены, а перемычки JP3 и JP4 сняты). В первом случае можно получить отладочный ввод/вывод DBGU через виртуальный COM-порт, организованный с помощью чипа FTDI, а во втором случае - можно воспользоваться загрузчиком USB SAM-BA для загрузки программы в чип. Какой будет конкретно использоваться вариант, будет зависеть не только от положения перемычек JP1..JP4, но и от разводки 10-pin JTAG на целевой печатной плате (т. е. как используются контакты 8 и 9).

Светодиод VD2 служит для индикации трафика DBGU, исходящего от кристалла ARM, а светодиод VD1 - для трафика DBGU, входящего в кристалл ARM (на схеме они подписаны как RXD LED и TXD LED по отношению к компьютеру, а не к кристаллу ARM).

Вот так выглядит готовая печатная плата переходника.

JTAG-DBGU-top-IMG_0728.JPG JTAG-DBGU-bottom-IMG_0734.JPG

А вот принципиальная схема:

JTAG-DBGU-SCH-IMG_0741.JPG

[Ссылки]

1. IAR EW ARM: DBGU, хитрости в использовании printf.
2. IAR EW ARM: как перенаправить вывод printf и putchar.
3. Макетная плата AT91SAM7X.
4. Цоколевка интерфейсов JTAG - распиновка JTAG различных платформ и производителей.
5HappyJTAG: простой интерфейс JTAG для AVR.
6HappyJTAG2: JTAG и ISP для AVR.