Fórum témák

» Több friss téma
Fórum » OpenOCD JTAG programozó
Lapozás: OK   1 / 1
(#) nrg hozzászólása Okt 5, 2010 /
 
Üdv Kedves Fórumozók!

OpenOCD kompatibilis JTAG programozó építését tervezem Cortex-M3 (ARM) mikrovezérlőhöz FT2232HL ic-vel. Van itt valaki, aki már csinált ilyen programozót, vagy esetleg tudna kapcsolási rajzot adni hozzá?
(#) dpeti válasza nrg hozzászólására (») Okt 5, 2010 /
 
szia,

letöltöd az ft2232 datasheetjét, benne van a mintakapcsolás.
a kimenet/bemenetre meg teszel szintillesztőt

megtervez, beszerez, marat, épít, örül
(#) Hooligan01 válasza nrg hozzászólására (») Okt 5, 2010 / 4
 
Szia!

Itt nézz körül: Link
Nekem bevált, igaz azóta már mást használok.
(#) nrg válasza nikolatesla hozzászólására (») Okt 5, 2010 /
 
Hi!

legközelebb olvasd el kétszer, mi a kérdés, ahelyett, hogy adsz egy kapcsolást valamivel, forráskód nélkül.
Mégegyszer:
1. OpenOCD kompatibilis
2. FT2232HL
3. Cortex-M3 (ARM)

u.i.:ismerem a google-t...
(#) nrg hozzászólása Okt 6, 2010 /
 
köszönöm a válaszokat!
(#) vtsoftware hozzászólása Okt 6, 2010 /
 
Sziasztok

Nem akarok ennyiért egy új témát nyitni, kb. ide tartozik...
Arra lennék kíváncsi hogy hogy működik a JTAG.
Nem is hogy hogy működik, csak szimplán nem értem a dolgokat.

Tehát kérdezném hogy bármilyen IC-hez jó bármelyik JTAG égető? Pl.: Mint Ez... (Prototype 2)

Ha ezt a kapcsolást vesszük, akkor ezt használhatom a Texas MSP430, a Maxim MAXQ3000-esekhez, az ST ARM, stb... procijaihoz?

Találtam ezen a kapcsoláson kívül jó pár LPT portos JTAG kapcsolást (g00gle, "jtag", képek), de nem tudom hogy (ha minden gyártó IC-jéhez más-más JTAG kell) akkor melyikhez melyik lenne jó, ha pedig a JTAG "univerzális" akkor melyik lenne működőképes. (ha ez az "igaz" és valaki használ ilyet kérem ne fogja vissza az infót )

Azon is gondolkodtam hogy lehet-e az hogy az IC-khez külön-külön program "jár" vagy való, és az "mondja meg az égetőnek mit csináljon".
És így ugye univerzális lenne a kapcsolás...

Melyik az "igaz"?

Előre is köszi
(#) Hooligan01 válasza vtsoftware hozzászólására (») Okt 7, 2010 /
 
Idézet:
„Nem akarok ennyiért egy új témát nyitni, kb. ide tartozik...
Arra lennék kíváncsi hogy hogy működik a JTAG.
Nem is hogy hogy működik, csak szimplán nem értem a dolgokat.


Nem nagyon olvastál utána. Ejnye.
A JTAG egy ánglius betűszó, Joint Test Action Group (JTAG)

Idézet:
„Azon is gondolkodtam hogy lehet-e az hogy az IC-khez külön-külön program "jár" vagy való, és az "mondja meg az égetőnek mit csináljon".
És így ugye univerzális lenne a kapcsolás...

Melyik az "igaz"?


Ha elolvasod a wiki oldalt, rájössz a válaszra magad is.
(#) vtsoftware válasza Hooligan01 hozzászólására (») Okt 10, 2010 /
 
Hát igazából egyáltalán nem néztem utána, mert elindulni sem tudok... adtál egy támpontot, de sajna az angol nem az erősségem...
De a lényeg hogy elég rendesen el vagyok tévedve a témával... ... vagy nem?
(#) vtsoftware válasza vtsoftware hozzászólására (») Okt 10, 2010 /
 
Egy kicsit jobban beleástam magam a dologba...
Magyar-fordítás, plusz ez.
Nem tudom hogy "mennyire értettem meg", erősítsetek meg ha így van...

A JTAG-al tesztelni, programozni, debuggolni lehet.

Idézet:
„Vannak mind a "buta" adapter, ahol a házigazda mellett dönt, és elvégzi az összes JTAG műveletek és "intelligens" is, ahol bizonyos, hogy a munkát végzik belül adaptert, gyakran hajtott egy mikrokontroller.”
(G00gle fordító...)
Vagyis a "buta" adapter univerzális, de vannak konkrét típusokhoz valók is...

Végülis arra jutottam hogy a kapcsolás amit a kettővel ezelőtti hsz-emben írtam, az jó lenne több IC-hez.
Pont eltaláltam a topikot - tudatlanul - mert találtam egy tutorialt is OpenOCD & Eclipse-vel való debuggoláshoz...
Úgyhogy van mit kipróbálni és keresgélni.

Ha valamiben tévedek javítást kérnék...
Előre is köszönöm...
(#) Hooligan01 válasza vtsoftware hozzászólására (») Okt 10, 2010 /
 
Jó úton haladsz! Csak így tovább!
(#) vtsoftware válasza Hooligan01 hozzászólására (») Okt 10, 2010 /
 
Az út oké, de szoftverben elakadtam.
Emiatt linuxot nem nagyon akarok "indítani", jobb lenne Windows alatt elintézni, de ahogy nézem az OpenOCD-nek csak a forrását lehet letölteni. Meg is van.
De a build már más tészta, van pár leírás, mire mindet kipróbálnám, beleőszülnék plusz teleszemetelném a gépet...

Vagyis, tudnál nekem segíteni, milyen progival használhatom a cókmókot?
(#) nrg válasza vtsoftware hozzászólására (») Okt 10, 2010 /
 
Mind az Eclipse, mind pedig az OpenOCD le van fordítva windowsra is. OpenOCD ITT , Eclipse ITT
(#) vtsoftware válasza nrg hozzászólására (») Okt 11, 2010 /
 
Az Eclipse már megvan, és mostmár az OpenOCD is.
Nagyon szépen köszönöm a segítséget mindkettőtöknek.
(#) Pter válasza nrg hozzászólására (») Okt 11, 2010 /
 
Szia nrg!

Igaz, nem OpenOCD és nem is kell megépíteni, viszont olcsó ... Van itt egy kész STM32 debugger, amivel akár azonnal el is kezdheted a fejlesztést:

STM32 Discovery

Én még tavaly a 8 bites változatát vettem meg, és nagyon beleszerettem.

Üdv, P
(#) MaSTeRFoXX hozzászólása Dec 1, 2011 /
 
Sziasztok!

Azokat kérdezném elsősorban, akinek volt már dolga openocd-vel és cortexM3-mas procival.

Építettem egy jtag programozót, FT2232H-val. A kapcsolás teljesen ugyanaz mint itt. Bővebben: Link

LPC1756-os IC-hez akarok csatlakozni. Odáig nem jutottam még el hogy az eclipse-t beállítsam teljesen debuggolásra, mert először ezt akarom megoldani.

A gépe felraktam az openocd 0.5.0-t, elindítom a
  1. openocd-0.5.0.exe -f /interface/oocdlink.cfg -f /target/lpc1756.cfg

paranccsal.

Válaszként megjelenik a végén hogy
  1. Info : JTAG tap: lpc1756.cpu tap/device found: 0x4ba00477 (mfg: 0x23b, part: 0xb
  2. a00, ver: 0x4)


Tehát elvileg az eszköz eddig tök jól megvan, viszont itt lefagy az egész.
A -d3 paraméterrel (debug mód) kiderül hogy ennél a sornál akad el:
  1. Debug: 221 1031 arm_adi_v5.c:987 ahbap_debugport_init():


Tovább sehogy se akar jutni a szerencsétlen openocd. Most az nem tudom hogy ilyenkor az a gond hogy a kontrollernél megszűnik az órajel ellátás, bár nem láttam az adatlapban hogy a jtag interfész külön kapna órajelet, vagy a másik tippem hogy az openocd0.5-nél már elkezdék az SWD buszos debugot és nincs befejezve, és valamiért ez kavar be.

Valaki dolgozott már LPC1700-rel és openocd-vel?
(#) nrg válasza MaSTeRFoXX hozzászólására (») Dec 1, 2011 /
 
A JTAG portnak van saját órajele, de amúgy sem állítja le az órajel generátort. Ha így lenne, akkor meg kommunikációs hibával le kellene állnia az OpenOCD-nek.
Én is a 0.5.0-t használom, ilyen problémával nem találkoztam, és kevés az esélye, hogy ilyen hibával release-elték volna ezt a verziót.
A probléma kiderítéséhez egy kicsit több infóra van szükség:
milyen oprendszert használsz?
melyik driverrel van fordítva az OpenOCD (libFTDI vagy gyári)?
Van USB hub a PC és az adapter között?
Használja az adapter az automatikus órajel beállítást?
Milyen gyártmányú a PC USB host-ja, ill. milyen driver van hozzá telepítve?
Hogy kapcsolódsz hozzá GDB-vel (pipe vagy tcp)?
Mit jelent az, hogy lefagy az OpenOCD (normál működés mellett is úgy tűnik mintha lefagyna, mivel szerverként viselkedik és várja a bejövő tcp kapcsolatokat a .cfg-ben megadott porton)?
Telnet-tel tudsz kapcsolódni az OOCD portjához?

Személyesen a Win7 32bit és Intel IHC9 host-al sokat szívtam, mert mindig eldobta a kapcsolatot valami USB Read error-al.
(#) MaSTeRFoXX válasza nrg hozzászólására (») Dec 2, 2011 /
 
Windows XP-t használok, elvileg libftdi-re fordított openocd-vel.
Közvetlen a gépre van dugva, valamilyen nvidia vezérlővel (laptop).

Úgy értve áll meg ahogy írtam, hogy benne marad valamilyen inicializációban, telnettel így nem lehet értlemsen csatlakozni mert nem csinál semmit. Target megadása nélkül elindul valamennyire, ott tudok telnetelni, de maga a rádugott eszközzel értelmesen nem tudok kommunikálni.

De most ahogy nézem és méregetek szkóppal, olyan mintha nem működne a trst és az srst vonal. Illetve TDI, TMS, TCK vonalakra kötve egy led-et akkor megvillan, de a reseteknél semmi változás.

Azt nem tudom hogy pontosan hogyan kell bekonfigurálni a reset vonalakat, de mint ha itt lenne valami baja.
(#) nrg válasza MaSTeRFoXX hozzászólására (») Dec 3, 2011 /
 
Nekem XP-n fel sem ismeri a programozót libFTDI-al. Én leszednék egy repo-t git-tel, majd fordítanék egy saját OOCD-t, az ftdi oldaláról leszedett driverrel.

A resetről annyit, hogy 2 féle reset van, SRST és TRST, ezek a targetet resetelik vagy csak a Debug portot, általában össze vannak kötve. Ezek kialakítását, és egyéb konfig opciókat meg lehet adni valamelyik .cgf fájlban.
Elvileg nem is kell egyik reset sem, mert valami jelváltás a jtag lábakon szintén reset értelmű.
Nekem működött reset lábak nélkül is, igaz a procit utána kellett resetelni, mert nem kezdte a 0-ról a programot.

Fordításban tudok segíteni.
(#) kisjoke91 hozzászólása Jún 22, 2015 /
 
Egy avr jtagice -al is lehet arm chipeket programozni?
(#) kisjoke91 hozzászólása Jún 22, 2015 /
 
Persze hülye kérdésnek tűnhet. De nem tudom hogyan van ez az egész arm dolog. Milyen otthon elkészíthető usb-s eszközt lehet csinálni?
(#) Lucifer hozzászólása Nov 12, 2015 /
 
Helló mindenki,

Remélem van itt openocd guru aki tud segíteni.
Egy Nuvoton M0517LBN alapú liion töltőt szeretnék újraprogramozni egy Ulink2-vel (CMSIS FW-vel).

A következő parancsot használnám
  1. /home/mm/Projektek/openocd/src/openocd -f $PROGRAMMER  -f $TARGET -c "init; dump_image aprom.bin 0x0 0x10000; dump_image flash_data.bin 0x1f000 0x1000; shutdown " || exit_backup

aminek a kimenete:

  1. Open On-Chip Debugger 0.10.0-dev-00001-g70a14db-dirty (2015-11-12-20:52)
  2. Licensed under GNU GPL v2
  3. For bug reports, read
  4.         http://openocd.org/doc/doxygen/bugs.html
  5. Info : only one transport option; autoselect 'swd'
  6. adapter speed: 1000 kHz
  7. adapter_nsrst_delay: 100
  8. cortex_m reset_config sysresetreq
  9. Info : CMSIS-DAP: SWD  Supported
  10. Info : CMSIS-DAP: JTAG Supported
  11. Info : CMSIS-DAP: Interface Initialised (SWD)
  12. Info : CMSIS-DAP: FW Version = 1.0
  13. Info : SWCLK/TCK = 0 SWDIO/TMS = 0 TDI = 0 TDO = 0 nTRST = 0 nRESET = 0
  14. Info : CMSIS-DAP: Interface ready
  15. Info : clock speed 1000 kHz
  16. in procedure 'init'
  17. in procedure 'ocd_bouncer'

És a visszatérési érték nem 0.
Hogyan lehetne kideríteni mi kínja van? Ha jól sejtem az init már valami TCL szkript, de nem találtam meg ezt a függvényt.
Az openocd kódja Gitből van pörgetve frissen ropogósan (repóban nincs CMSIS-DAP support).


Tudja valaki, hogy mi a különbség a hla_swd és az swd transport protokollok közt?
A hozzászólás módosítva: Nov 12, 2015
(#) Lucifer válasza Lucifer hozzászólására (») Nov 12, 2015 /
 
Közben megtaláltam a --debug 3 paraméter ami után elmondta, hogy egy SWD transzferre nem jön válasz.
Következő: »»   1 / 1
Bejelentkezés

Belépés

Hirdetés
XDT.hu
Az oldalon sütiket használunk a helyes működéshez. Bővebb információt az adatvédelmi szabályzatban olvashatsz. Megértettem