Author Topic: EZ-USB FX2LP CY7C68013A USB Развојна околина  (Read 2181 times)

Offline Devil

  • Администратор
  • Топ Експерт
  • *****
  • Posts: 5329
  • Gender: Male
    • Македонски форум за електроника
Развојната околина која последно време прилично се повеќе и повеќе е достапна во работилниците на хоби електроничарите, ама и кај оние кој се занимаваат со дизајн и производство за продажба на одредени склопови (понатаму ќе објаснам зошто е толку сакана оваа развојна „плоча“).
   Да напоменам јас ќе ја презентирам развојната плоча на LCSoft која не е производ на Cypress.

CY7C68013A е производ на познатата фирма Cypress. Ова е мал моќен микроконтролер со прилично големи можности. Микроконтролерот се базира на познатиот 8051 микроконтролер, но во својот состав има и некои плус додатоци кој го прават на свој начин единствен. Софтверот за 8051 и за CY7C68013A е компатабилен, така што програмите од едниот би одговарале и би можеле да се извршуваат и на другиот (и обратно).
CY7C68013A припаѓа на фамилијата EZ-USB® FX2LP™, USB микроконтролери од производителот Cypress. Овие микроконтролери се со вграден High-Speed USB контролер.

Карактеристики на овај микроконтролер се:
-   Мала потрошувачка на струја при кој и да било мод на работа, околу 85mA
-   Интегриран индустриски стандард базиран на 8051
-   Работна фреквенција на јадрото, 48MHz, 24MHz и 12MHz
-   Четири такта при извршување на единечна инструкција
-   Вградени два USART контролери
-   Три бројачи/ тајмери
-   Проширен Interrupt систем
-   Два дата поинтери
-   3,3V работен напон со 5V толерантни влезови
-   Интегриран I2C контролер со можност за работа на 100kHz и 400kHz

Вградениот USB контролер има можност за два од три работи режими (стандардизирани со USB
Specification Revision 2.0, dated April 27, 2000) и тоа:
-   Full Speed со брзина на пренос од 12Mbps
-   High Speed со брзина на пренос од 480Mbps
-   Третата брзина за пренос на податоци (од 1,5Mbps) не е опфатена и не може да се користи

Микроконтролерот 8051 на кој се базира CY7C68013A има 256 бита RAM меморија проширен систем на interrupt-и. FX2LP има вграден осцилатор кој работи со надворешен 24MHz кристал (±100ppm).
   Во делот на микроконтролерот кој се грижи околу тактот и осцилаторот има вграден PLL множител кој работната фреквенција може да ја менува од 24MHz па се до 480MHz. Основната фреквенција на која што работи 8051 е 12MHz, но таа може да се менува преку регистарот CPUCS кој се грижи за неа.
   
Слика од блок дијаграмот од градбата на микроконтролерот

Jас не сум себичен, помагам. Помагај и ти !

Секоја куќа си има свои куќни правила.Почитувај ги куќните правила!

Offline Devil

  • Администратор
  • Топ Експерт
  • *****
  • Posts: 5329
  • Gender: Male
    • Македонски форум за електроника
Одг: EZ-USB FX2LP CY7C68013A USB Развојна околина - логички анализатор
« Reply #1 on 01.05.2012, Tuesday, 19:11:45 (Edited 01.05.2012, Tuesday, 19:23:43) »
Сега да објаснам зошто во насловот има логички анализатор додадено  ;D



Како што напоменав на почетокот, оваа плоча се повеќе се користи во работилниците, но не како развојна околина, туку како логички анализатор.
   Можностите кој ги нуди оваа плоча се многу подобри за да се изгради логички анализатор отколку да се работи како развојна околина. Не сакам да кажам дека и како развојна околина дека не е можно да се користи, напротив можно е и како минијатурна развојна околина да ни послужи, но не верувам дека има некој кој би се занимавал со тоа.
   Плочата ја нарачав од интернет (eBay) за околу 13$ со платена поштарина (околу 600 денари). Оваа плоча е производ на кинеската фирма LCSoft, не сакам да навлегувам што и како произведува оваа фирма, но меѓу другото произведува вакви склопови.
   Наводно оваа плоча треба да биде копија на познатиот производител на логички анализатори Saleae, кој произведуваат прилично скапа опрема. Епа оваа плоча требаше да биде копија на еден нивни логички анализатор кој се заснова на гореспоменатиот процесор.
   Откако се изначекав да ми стигне плочата од кина (скоро 35 дена), разгледав по интернет и го симнав програмот од Saleae кој наводно треба да работи со оваа развојна околина, инаку да напоменам дека оваа плоча е веќе препрограмирана (има еден мал EEPROM) со потребните VID и PID податоци од логичкиот анализатор на Saleae, ја отворив огромната кутија во која беше спакувана оваа развојна околина, убаво обложено со онаа пластичната фолија со обложени перничиња, во средината се наоѓаше едно минијатурно пакување, кое ја содржи само плочата со потребните елементи залемени на неа. Малку беше разочарувачки што платив 13$ а не добив ни USB кабле, инаку користи мини USB-B тип на приклучок.
   Отворив се, најдов кабел и приклучив на компјутер, претходно ја инсталирав потребната програма на компјутер и го притиснав прекинувачот на плочата (има мини прекинувач на плоча инаку), скокна некое чудно прозорче во кое пишува дека инсталира драјвери, заврши се тоа инсталацијата успешно, нареден чекор стартување на потребниот софтвер...
И.......................... ТАДА............................................ креш, програмата не сака да се вклучи!!!
   Малку гуглање на интернет доведе до резултат дека не сум ни прв ни последен на кој ова чудо не му работи и дека скоро кај сите го вади истиот проблем. Откако се изначитав и изнабарав како може да се реши проблемот, и симнав и инсталирав уште 10-тина различни програми драјвери и слично, но оваа чудото никако да проработи.
   После нов бран на пребарувања налетав на една кинеска страна, каде што читав само хиероглифи, ама арно имаше некој линкови ставено па со рандом кликање на нив стигнав до страната на Cypress и до едни не многу разбирливи информации.
   Потрошив уште 1 час додека да го совладам тој процес со чудни информации и дојдов до заклучок дека оваа плоча НЕ може да се користи како што ја замислил производителот. Иако производителот нигде не наведува официјално дека ова е клон на Saleae логичките анализатори, тоа не официјално се проширува на интернет, а и плочите така се продаваат, како клонови на скапата опрема од Saleae.
   Шетајќи по ова кинескиве налетав на интересни податоци, оваа плоча не може да се користи како Saleae логички анализатор, но наводно тоа било резултат од тоа што EEPROM меморијата била спора (?!) наведена беше замена демек таа е побрза меморија и со неа би требало да работи, е ама таа наведената меморија и оваа која што беше поставена на плочата се потполно исти!
   Кликајќи рандом по тоа наведените линкови, налетав на една друга страна каде што се користи brute force метод за поправка, со тоа што треба да се буши и модифицира плочата, да се додаваат додатни компоненти и слично, и на крај пак не е сигурно дали ќе проработи.
   На еден блог налетав на сличен проблем како мојот само што човекот имаше друга плоча за друга намена но со истиот микроконтролер од Cypress.
   Таму беше наведена метода за софтверски да се реши проблемот, отако се изначитав и истренирав (едно 2-3 часа) се фатив за работа.
Cypress на својата страна за еден сличен производ (исто развојна околина) која користи ист микроконтролер како оваа плоча имаат тотално бесплатно дадено софтвер за контрола на нивниот склоп, но истата може да се користи и за било кој друг склоп со оваај програм може да се менуваат софтверски одредени податоци, баш тие податоци кој се потребни за да може да работи склопов.
   Софтверскиот пакет се вика CyConsole, како додатна алатка на оваа програма е и EZ-USB Interface.
Она што треба да се симни е со име cy3684_ez_usb_fx2lp_development_kit_15.exe
Може да се симне од следнава адреса
Code: [Select]
http://dlm.cypress.com.edgesuite.net/akdlm/downloadmanager/documents/cy3684_ez_usb_fx2lp_development_kit_15.exe

   Еве како оди постапката за да си го модифицирате овај клон за да може да работи (доколку сте несреќен како мене и не ви проработи од прва).
•   Приклучете го склопот во компјутерот
•   Одете во Device Manager пронајдете го и избришете го драјверот (претходно мора да ја имате и програмата од Saleae избришано).
•   Претпоставувам дека ја симнавте програмата од Cypress, доколку не ја имате симнато симнете ја и инсталирајте ја.
•   Лоцирајте го фајлот cyusb.inf (сместен е во C:\Program Files\Cypress\USB\Drivers\CyUsb (барем кај мене тоа е стандардна локација каде што се сними програмава).
•   Пронајдете го cyusb.inf фајлот и отворете го со некој текст едитор.
•   Одете повторно во Device Manager, пошто ви се избришани драјверите за оваа плоча, ќе ја прикажува како непознат уред, отворете го со десен клик на Properties  Details  тука ќе пронајдите нешто слично на ова VID_08A9&PID_0005 (вака е кај мене, од Saleae клонот има VID_0925&PID_3881).
•   Копирајте го тоа VID_08A9&PID_0005
•   Во фајлот cyusb.inf сегде кај што пишува нешто поврзано со VID и PID треба да го замените со вашите VID и PID (пр. %VID_0925&PID_3881.DeviceDesc%=CyUsb, USB\VID_0925&PID_3881 со   % VID_08A9&PID_0005.DeviceDesc%=CyUsb, USB\ VID_08A9&PID_0005 ) неколку пати го има тоа и сегде треба да се промени.
•   После ова зачувајте го фајлот со .inf екстензија, мене ми правеше проблем пошто беше некој бекап фајл а не .inf, ако имате таков проблем копирајте се од тој фајл снимете во текст едиторот и зачувајте го како ime.inf со ова ќе направите .inf фајл кој ќе ви треба подоцна.
•   Дисконектирајте го и реконектирајте го нанова уредот (плочата (можете да ја исклучите и вклучите на прекинувачот )).
•   Ќе ви побара да инсталирате драјвер, изберете опцијата сами да го пронајдете драјверот и пронајдете го тој .inf фајл, кој претходно го креиравте, ако е се добро направено ќе се инсталира драјверот. Ако има проблем некој, негде заборавивте нешто да додадите или да смените.

Откако се инсталиравте како што треба на ред е да промениме некој вредности на микроконтролерот
•   Стартовајте ја програмата CyConsole и од паѓачките миа најдете EZ-USB Interface и кликнете на тоа, доколку претходно се направивте како што треба ќе ви ја детектира плочата.
•   Притиснете на копчето Download, ќе се отвори прозорец од каде што треба да изберите некој .hex фајл, појдете во „\Cypress\USB\Examples\FX2LP\Vend_ax\ “ тука ќе најдите еден фајл со име „Vend_Ax.hex“ селектирајте го него и кликнете на тоа копчето за отворање
•   Програмата автоматски ќе се сними во микроконтролерот
•   Во полето Req внесете 0xA2 (се наоѓа покрај Vend Req копчето)
•   Изберете од полето Dir, 1 IN
•   Во полето Length наместете 8
•   Кликнете на Vend Req
•   Ќе ви излиста некој 8 бита HEX код, кај мене овај код е C0 А9 08 05 00 01 00 00
•   Ако заприметите подобро тоа се VID и PID кој се во додатната EEPROM меморија на самата плоча (распоредот само малку му е измешан), C0 е од Cypress, а 01 незнам што е
•   VID и PID на USBee ZX во овај формат е C0 A9 08 05 00 84 23 00
•   Копирајте го ова во полето Hex Bytes
•   Променете го Dir во 0 OUT
•   Кликнете на Vend Req

Со оваа постапка (доколку е се успешно) вие го клониравете USBee ZX логичкиот анализатор на вашата плоча.
Клонирањето на продукти за продажба е Нелегално, внимавајте на тоа. Доколку сте против клонирање и сакате да си купите некој логички анализатор, спремете си неколку стотини $ и купете си оригинал. Јас не можам да издвојам толкава сума на пари.
Инаку да напоменам, клонот има скоро исти перформанси како и оригиналот  ;D

Слика од она што ми правеше мене проблеми :)



продолжува ...
Jас не сум себичен, помагам. Помагај и ти !

Секоја куќа си има свои куќни правила.Почитувај ги куќните правила!