Пользователи платформы ARM наверное не раз замечали, что стандартный 20-pin коннектор JTAG (через который обычно отлаживают разрабатываемое устройство, а иногда и программируют) слишком громоздко, чтобы его устанавливать в готовую конструкцию.
Кроме JTAG хотелось бы иметь на отлаживаемой плате ещё и DBGU, а иногда и возможность прошивать устройство через загрузчик USB SAM-BA... Все вышеперечисленные задачи с успехом решает описываемое устройство. Благодаря тому, что стандартный 20-pin JTAG имеет много избыточных контактов (половина из них земля и питание +5 вольт), удалось количество контактов разъема уменьшить вдвое, и даже 2 провода использовать под дополнительные функции - передаются либо сигналы DBGU (TXD и RXD), либо сигналы USB (D+ и D-). На рисунке показано, как соединяются компоненты системы между собой.
Маленькая платка посередине - простая переходная плата (назовем её условно 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).
Вот так выглядит готовая печатная плата переходника.
А вот принципиальная схема:
[Ссылки]
1. IAR EW ARM: DBGU, хитрости в использовании printf. 2. IAR EW ARM: как перенаправить вывод printf и putchar. 3. Макетная плата AT91SAM7X. 4. Цоколевка интерфейсов JTAG - распиновка JTAG различных платформ и производителей. 5. HappyJTAG: простой интерфейс JTAG для AVR. 6. HappyJTAG2: JTAG и ISP для AVR. |