Микроконтролери и електроника
http://mcu-bg.com/mcu_site/

jtag wiggler?
http://mcu-bg.com/mcu_site/viewtopic.php?f=2&t=5871
Страница 1 от 3

Автор:  head_up [ Пет Юни 20, 2008 10:51 am ]
Заглавие:  jtag wiggler?

здравейте! някой правил ли е такъв емулатор и ако да доволен ли е от него? трявбва ми за арм. пробвахме една негова разновидност ,но нещо не щеше да програмира макар че си разпознаваше таргета. ако някои има схема на такъв работещ може ли да я сподели? в интернет много такива, но коя работи коректно...

Автор:  miro_atc [ Пет Юни 20, 2008 11:25 am ]
Заглавие: 

ако е wiggler на паралелен порт е класика в жанра ;-)
По-добре се ориентирай към USB варианта (OCD) което е с един FTDI чип. Така или иначе и двата се продават от Olimex и мисля че на сайта им има схемите или поне линкове. Но щом виждаш таргета значи проблема ти не е в кабела ;-)

Проблемът на всички тия евтинджос решения е че трудно се подкарват софтуерно. То не са драйвери, то не са конфиг файлове и кво ли не... Та от тая гледа точка те съветвам да си купиш от Olimex или да клонираш техен че долу-горе в нета има описание как се подкарват техните. Те също са направени ужасно зле.... USB-Tiny идва с един диск е едно ехе 200МБ. Пускаш го и то без да те пита нищо ти инсталира 1000 неща, повечето от които са допотопни версии - кошмар. Не случайно се казваше "нещо си фор дъмис". Заради един драйвер който всъщност е стандартен, сами inf файла е уникален ти омазва компютъра. Някъде бях изолирал мисля драйвера и ако тръгнеш по тоя път мога да ти го изровя, иначе трябва да им инсталираш простотиите, после да ги махаш и да ги славаш новите версии. А ти трябват новите версии на OCD щото старите не поддържат флашване - само дебъг...

Приготви се да утрепеш няколко дена докато подкараш всичко... Ако ти трябва помощ мисля ще се намери, ама трябва да кажеш на кой точно хардуер (usb/lpt) стъпваш, с каква среда ще бачкаш и стъпка по стъпка докъде си стигнал с инсталацията/проблемите...

Автор:  head_up [ Пет Юни 20, 2008 11:42 am ]
Заглавие: 

такаа... е сега ме стресна :) мислех че ще е по лесно. добре де, по принцип през параления порт нещата трябва да станат по лесно. поне на теория. Идеята е че този wiggler се разпознава директно от средата CrossStudio for ARM и мога да го изплозвам по пълноценно. ако тръгне. за усб варианта - е, има си предимствата, блазнещо е , но както го описваш от към драйвери - не звучи като да става. мислех да пробвам с евтинджоса. но ти благодаря , ще погледна тези на олимекс. ако си правил въпросната "класика" ще ми е интересно да разбера как си я подкарал.

Автор:  шопов [ Пет Юни 20, 2008 11:55 am ]
Заглавие: 

хм, странно, щом се вижда target-а, кабелът изглежда да е наред наистина, поне jtag пиновете са коректно опроводени (TMS, TDI, TDO, TCK, евентуално би могло да има проблем с TRST)

може да провериш дали SRST е опроводен правилно; ако е wiggler на паралeлен порт, SRST трябва да е хардуерно инвертиран (във wiggler-a); аз досега съм нямал възможност да работя с АРМ с нещо различно от wiggler на паралелен порт, но този на Olimex си работи стабилно, пробвал съм го и под Windows XP, и под линукс

сега видях, че ползваш CrossStudio; аз също го ползвам, и под него wiggler-а работи много добре (поне за мен); нямам схема под ръка, но ако можеш, пусни твоята схема; wiggler-а на Olimex работи стабилно и с openocd / gdb (поне при мен работи добре)

много хора не го харесват тоя wiggler, обаче за мен той досега е работил много добре, включително и под линукс

ако можеш, напиши каква грешка ти дава CrossStudio

Автор:  head_up [ Пет Юни 20, 2008 12:09 pm ]
Заглавие: 

ммм щом при теб работи стабилно wiggler-a, значи става :) него ще го работя. за съжаление не мога да ти пратя схемата с която сме опитвали - един от колегите се занимаваше да прави платка за него и не знам на коя машина го е затрил. ще преровя мрежата,но може и да не я намеря. Този който използвахме за опита бе някаква "самоделка" - разбирай кълбо от жици, спуснато ни някаде от "горе". никва идея как се е държал при предишния му собственик. като гледам основната рализка м/у разните wiggler-и е стойности на резистори. а има няколко "перверз-шалтунг" схеми, тях ги изключвам. ако случайно ти попадне схемата на този който използваш - много ще е добре, аман от гадаене. не че ще е за първи или последен път :P

Автор:  шопов [ Пет Юни 20, 2008 12:50 pm ]
Заглавие: 

успях да изкопая следните сорсове; по спомени, взел съм ги от openocd; това долу е пробвано за wiggler на Olimex, и работи

имай впредвид, обаче, че в CrossStudio-то има някои настройки, които може да ти се наложи да пипнеш (напр. честота на TCK (jtag clock), допълнителни битове ако имаш нещо друго закачено на jtag веригата и др., не помня всички)

Код:
/*
  * The following table shows the pin assignment of 25-pin  Parallel Printer Port
  * please refer to IEEE 1284 standard for detailed description.
  * data port (Out)                  status port (In)
  * bit[7] -- pin9 (Out)         bit[7] -- pin11 (In), busy (Hardware Inverted
  * bit[6] -- pin8 (Out)         bit[6] -- pin10 (In), Ack
  * bit[5] -- pin7 (Out)         bit[5] -- pin12 (In), Paper out
  * bit[4] -- pin6 (Out)         bit[4] -- pin13 (In), Select
  * bit[3] -- pin5 (Out)         bit[3] -- pin15 (In), Error
  * bit[2] -- pin4 (Out)         bit[2] -- IRQ(Not)
  * bit[1] -- pin3 (Out)         bit[1] -- Reserved
  * bit[0] -- pin2 (Out)         bit[0] -- Reserved
  */

#define JTAG_SRST       0x01    /* pin is hardware inverted */
#define JTAG_TMS        0x02
#define JTAG_CLK        0x04
#define JTAG_TDI        0x08
#define JTAG_NTRST      0x10

#define JTAG_TDO        0x80    /* remember this signal is inverted */


така, ако не съм объркал нещо, опроводяването трябва да е следното (може да го провериш за всеки случай):

tck - bit2 - pin4
tdi - bit3 - pin5
tdo - bit7 (вход за PC) - pin11
tms - bit1 - pin3
trst - bit4 - pin6
srst - bit0 - pin2

сигнали dbgrq, dbgack, rtck няма да ти трябват, rtck би могъл да ти трябва в някои случаи (АРМ9 и нагоре), обаче аз не съм работил с нещо различно от ARM7TDMI(-S), така че не мога да дам мнение

най-добре все пак ще е ако можеш да кажеш какво съобщение за грешка получаваш от CrossStudio, щом target-а се открива, може би хардуерът ти е наред

Автор:  Nikola Kirov [ Пет Юни 20, 2008 3:49 pm ]
Заглавие: 

Eдинствения долу горе стабилен начин да работиш с Wiggler-a е чрез RDI i H-Jitag
http://www.hjtag.com/

Автор:  miro_atc [ Пет Юни 20, 2008 3:49 pm ]
Заглавие: 

[quote="head_up"ако си правил въпросната "класика" ще ми е интересно да разбера как си я подкарал.[/quote]

Не съм подкарвал... по стечение на обстоятелствата имам различни емулатори и не ми се е налагало да правя сам. Пък и не е добра идея да се прави с хвърчащи жици. JTAG е капризен (разбирай зле замислен) интерфейс и ако вкараш различни закъснения по различните сигнали се губи синхронизацията и почва ту да работи, ту да не работи, особено при флашване с агент който вдига клока.
Най-добре дай 50лв и си го вземи направен, в краен случай се постарай да го направиш по-добре и без дълги или хвърчащи жици.

По принцип щом разпознава таргета значи кабела е наред поне за ниски честоти. Би трябвало да може да дебъгваш ако не вдигаш jtag клока. Флашването може да не работи поради конкуренция на сигнали в кабела или поради кофти настройки...

Автор:  head_up [ Пет Юни 20, 2008 6:12 pm ]
Заглавие: 

хм, интересно го описвате, в крайна сметка да разбирам че може и да не е най-добрия вариант за работа с wiggler-a. мисля да пробвам да си го сделам но в краина сметка може и да ми излезе почти колкото да си го купя - някаде го видях за 19лв, ако още го продават. а тогава какъв друг поносимо скъп вариант на jtag емулатор за арм можете да препоръчате? не някаква екзотика, нещо което може да се закупи в бг? съвместим с crossworks имам превид.

Автор:  Nikola Kirov [ Пет Юни 20, 2008 7:28 pm ]
Заглавие: 

Що не пробаваш с Keil или IAR. И двете поддържат RDI и работят с H-Jtag. С CrossWorks май никой тук не работи с ARM. Преди си играх малко с него да го видя що за чудо е но мисля че тогава,преди година,година и половина не поддържаше RDI.

Автор:  Цецо [ Пет Юни 20, 2008 7:34 pm ]
Заглавие: 

Ами аз съм си правил експерименти с риглера и кроса преди 2 години. Работеше си. А ти сигурен ли си че виждаш таргета? Щото наистина ми се струва странно да познава таргета, ама да не ще да по-натам.

Автор:  шопов [ Съб Юни 21, 2008 12:49 am ]
Заглавие: 

все пак, ако искаш, мога да ти дам wiggler; ако си близо до софия, май това ще ти свърши най-много работа

Автор:  head_up [ Съб Юни 21, 2008 12:50 pm ]
Заглавие: 

да конкретизирам - разпознава си таргета, пише в него, проверява и там гърми - вика "проверката не мина". и таргета се държи разбира се като не програмиран :) Пробван е при различни скорости и разни дребни настройки и даже на различни PC-та ... все тая... сега като се загледах в няколко схеми на wiggler забелязах че разлика има в един мост между 8 и 15 извод на параления порт, но той служи само за идентификация на емулатора (мисля...) и не би трябвало да е причина за такова държание при условие че веднъж вече го е разпознало. Шопов, благодаря ти за предложението, хубаво е, но съм от пловдив, не че няма начин, но живот и здраве ако му разберем каде е проблема на този wiggler ще се пуснат платките (които вече са начертани) и тогава няма да има нужда да жертваш лична собственост :D но пак ти благодаря. в случай на огромна нужда може и да помрънкам разбира се... :P

Автор:  Zdrav [ Съб Юни 21, 2008 1:43 pm ]
Заглавие: 

Повече от година работих с OLIMEX клонинг на wriggler за паралелен порт. Като среда ползвах YAGARTO. Там wiggler-a се ползва чрез OpenOCD. Според мен wiggler-a е добро решение за почти без пари. Щом като си седнал да лепиш жици значи точно това търсиш. Не се отказвай. Работи и то стабилно.
С CrossWorks за ARM работих известно време всичко вървеше добре, но в един момент се отказах защото исках да правя малко по-сложни неща с дебъгера, които не бяха описани добре в наличната документация. Ако имаш легално закупен CrossWorks от съпорта на Rowley ще ти помогнат и нямаш проблеми. Освен това интеграцията на дебъгера в IDE-тo, както е при CrossWorks-a, скрива какво точно прави при ресет, при свързване с таргета и т.н.
Няма да те агитирам за YAGARTO щото там има също много трески за дялане и липса на документация. Но ако продължаваш да удряш на камък може да опиташ www.yagarto.de
Винаги има и специфични неща около процесора, който стои от другата страна на JTAG-a. Така че проблема ти може да е че трябва да промениш нещо в конфигурацията. CrossWorks ползваше ресет скриптове в които за LPC2000 серията например, с която го ползвах, се налагаше да се дописват някои неща - ремапване на вектори и т.н.

Автор:  head_up [ Съб Юни 21, 2008 5:34 pm ]
Заглавие: 

zdrav: ха така ти оправи работата... какво имаш предвид си дописавал за CrossWorks-а? опита го направихме с два проца от серията lpc23xx и там нямахме никакъв успех. дали това което ти казаваш - ремапване-то не е причина? пробвахме го с 1.7 build 8 версия, не знам дали при твоята като да е била по-стара? разбирай некоригирана, ако в тази въобще са си направили този труд? би ли описал по подробно какво си правил за да стане? лошото е че каквото и да посъветваш преди сряда няма да мога да го пробвам. но пък е нещо за дялкане :)

Страница 1 от 3 Часовете са според зоната UTC + 2 часа [ DST ]
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/