Przejściówka, której schemat ideowy pokazano na rysunku 1, natomiast montażowy na rysunku 2, umożliwia programowanie do 8 mikrokontrolerów ATmega lub do 6 Xmega zamontowanych w różnych urządzeniach lub na jednej płycie, ale niepołączonych w łańcuch. Warunkiem poprawnej pracy przejściówki jest zasilanie wszystkich programowanych mikrokontrolerów tym samym napięciem.
Do złącza „Master” dołączamy programator. Do „Slave” kolejne programowane mikrokontrolery. Jeśli złącze mikrokontrolera jest nieużywane, to przy nim musi być założona zworka, a samo złącze puste. Na przykład przy 2 układach programowanych zajęte są złącza „Slave 1”…„Slave 3” i zdjęte zworki JP1 i JP2. Programatorowi trzeba wskazać, który układ chcemy programować. Można to zrobić za pomocą menu „Connect” (rysunek 3).
W łańcuchu JTAG pierwszym urządzeniem jest to, którego linia TDI jest bezpośrednio połączona z programatorem, czyli ostatni układ slave na płytce. Aby zaprogramować mikrokontroler dołączony do „Slave 1”, wpisujemy parametry interfejsu pokazane na rysunku 4.
Po zmianie ustawień należy zamknąć okno, ponieważ wprowadzone ustawienia są uwzględnianie dopiero po tym, jak okno zniknie z ekranu. Teraz można odczytać ID programowanych układów. Na rysunku 5 pokazano wynik odczytu sygnatury – widać na nim sygnaturę układu i ID JTAG.
Jeśli w łańcuchu znajdują się mikrokontrolery Xmega, to liczbę bitów dla nich należy ustawić na 5. Dla „Slave 2” (pierwszy w łańcuchu) wprowadzamy parametry jak na rysunku 6. Odczytaną sygnaturę układu pokazano na rysunku 7. Jeśli źle ustawimy parametr „instructions bits before” lub „instructions bits after” (rysunek 8), to ID JTAG będzie poprawne, natomiast sygnatura układu już nie (rysunek 9).
Maksymalna liczba programowanych układów jest ograniczona liczbą bitów rozkazu (32) i wynosi 8 dla Mega i 6 dla Xmega (rozkaz 5-bit). Płytki można łączyć szeregowo. Ostatnie złącze „Slave” doprowadza się do złącza „Master” następnej płytki. Dwie płytki dadzą możliwość programowania 7 złączy „Slave”, 3 płytki – 10 złączy. Zaletą JTAG jest fakt, że podczas programowania wybranego mikrokontrolera pozostałe pracują bez zakłóceń.
- R1: 560 Ω
- D1: LED
- JP1…JP3: zwora