Sida 1 av 1

[LÖST] Vilka pinnar behövs på ett JTAG-interface?

Postat: 16 augusti 2017, 14:01:13
av jesse
Jag ska kunna programmera och debugga en ARM-processor med JTAG-interface, men med så få pinnar som möjligt p.g.a. brist på GPIO. När jag letar lite på nätet ser jag en 6-polig JTAG-connector som ser ut så här:
JTAG_PINOUT.png
Men i alla dokument jag läser behövs minst två ledare till, nämligen TDO och TDI.
Det är lite dumt eftersom just dessa pinnar på processorn delar funktion med andra IO som jag vill använda på kretskortet.

Stämmer det att jag måste använda båda dessa också?

Re: Vilka pinnar behövs på ett JTAG-interface?

Postat: 16 augusti 2017, 14:31:32
av lillahuset
Vilken processor? Det varierar mellan olika familjer.

Re: Vilka pinnar behövs på ett JTAG-interface?

Postat: 16 augusti 2017, 14:53:23
av sodjan
TDO och TDI verkar (bara) användas då man ansluter flera kretsar
i serie efter varandra. För en krets (eller flera i en "star" koppling)
så behövs bara TMS och TCK, så som jag förstår det...

https://en.wikipedia.org/wiki/JTAG

Re: Vilka pinnar behövs på ett JTAG-interface?

Postat: 16 augusti 2017, 15:26:29
av limpan4all
Om man planerar sitt I/O användande "rätt" så kan man dubblera funktioner utan att det "kostar" något, lite mera tänk och planering men funkar så gott som alltid.
Bara ett litet tips i all välmening.

Re: Vilka pinnar behövs på ett JTAG-interface?

Postat: 16 augusti 2017, 15:34:15
av lillahuset
För "standard standard" JTAG behövs TCK, TMS, TDI och TDO.

De "flesta moderna" ARM processorer, i alla fall i Cortex-M familjen har någon sorts förenklat debuginterface.
STM32 har något som kallas "single wire debug" som inte nöjer sig med en tråd utan vill ha fyra trådar, SWCLK, SWDIO, NRST och SWO där NRST är reset. Det är möjligt att det går att utesluta någon men det vet jag inte.
Andra familjer har andra lösningar.

Som limpan4all skriver så brukar det alltid finnas något som kan dela pinnar med debugporten. LEDar tex. Men med viss eftertanke.

Re: Vilka pinnar behövs på ett JTAG-interface?

Postat: 16 augusti 2017, 16:09:08
av jesse
Tack.

Sodjans länk löste problemet... Där fanns beskrivning av cJTAG vilket är vad jag vill använda.
Jag kollade att min processor (CC2640R2F) stödjer cJTAG samt den programmerare jag tänkt använda också gör det, så det verkar som om det bara är att köra!
Ville ju veta i förväg då jag inte skulle stå med ett prototypkort utan möjlighet att programmera...

Re: Vilka pinnar behövs på ett JTAG-interface?

Postat: 16 augusti 2017, 16:44:17
av thebolt
lillahuset skrev: STM32 har något som kallas "single wire debug" som inte nöjer sig med en tråd utan vill ha fyra trådar, SWCLK, SWDIO, NRST och SWO där NRST är reset. Det är möjligt att det går att utesluta någon men det vet jag inte.
SWO och nRST är optional, däremot behöver du GND så tre totalt :)