Novinka:miniLA - logický analyzátor snadno, levně a rychle II.
(Kategorie: Konstrukce)
Napsal Kosta
18.12.2002 00:00

Tento článek navazuje na popis hardware k logickému analyzátoru, uveřejněný v minulém týdnu. Jeho cílem je seznámit budoucí uľivatele s moľnostmi a funkcemi ovládacího software. Program je určen uľivatelům operačního systému Windows 95/98/ME/NT/2000/XP a v současné verzi (1.03) je dostupný pouze v angličtině

Logický analyzátor je přístroj určený k naměření, zobrazení a analýze naměřených průběhů v číslicových systémech. K tomuto účelu musí být přizpůsoben i ovládací software, který komunikuje s měřicím přístrojem, v konkrétním případě s miniLA. Poľadavkem na něj je, aby byl uľivatelsky přívětivý, snadno ovladatelný, spolehlivý a poskytoval uľivateli vysoký komfort, běľný u vyspělých přístrojů.

Software podporuje 32 vstupních datových signálů. Každý z nich lze použít pro definici spouštěcí podmínky (X, L, H, L-H, H-L). Program zvládá plynulé zvětšení detailů a přesouvání ve vzorkovaných datech, obsahuje celkem tři časové a jeden kombinovaný kurzor: dva pohyblivé časové kurzory, kurzor ukazující okamžik spouštěcí podmínky a záměrný kříž, který se pohybuje současně s kurzorem myši. Najednou jsou zobrazeny pozice všech kurzorů v počtech vzorků i v čase od pozice kurzoru spouštěcí podmínky, dále pak vzdálenost mezi posuvnými kurzory v čase i ve vzorcích. Záměrný kříž umožňuje zjistit aktuální hodnotu jednotlivých signálů a skupin signálů na pozici záměrného kříže. Pro snadnější orientaci lze každý signál pojmenovat a určit mu specifickou barvu.

Jména signálů jsou zobrazena vlevo od displeje průběhů logických signálů ve dvou režimech: první zobrazuje umístění signálů a skupin na displeji, druhý pak zobrazuje pořadí a strukturu signálů a jejich rozmístění ve skupinách, včetně váhy jednotlivých signálů. Jak již bylo výše zmíněno, program podporuje sdružování signálů do pojmenovaných skupin. To umožňuje v grafu odlišit např. signály datové sběrnice od jednotlivých řídicích signálů, přímé odečítání hodnoty skupiny signálů ve čtyřech číselných soustavách (binární, oktalová, desítková a hexadecimální) a volbu spouštěcí podmínky poľadovanou hodnotou (opět v nastavené číselné soustavě) a hledání v datech. Sdružení signálů do skupin, jejich pojmenování a barevné nastavení lze uložit jako projekt či „layout“ s každým vytvořeným datovým souborem nebo zvlášť. Naměřená data lze uložit na disk pro další zpracování, vytisknout na tiskárně systému Windows, lze v nich hledat podle různých kritérií. Další funkce se připravují (export dat do databáze, …). Program je navržen tak, aby uživatel měl většinu ovládacích prvků a nastavení „při ruce“. Tomu odpovídá jednoduše strukturované menu, toolbar, podpora „horkých“ kláves a kontextová konfigurace pomocí myši.

Nyní podrobně popíšeme jednotlivé části programu. Vzhled a rozmístění ovládacích prvků je patrný z obrázků. Největší plochu obrazovky zaujímá displej s navzorkovanými daty. Zobrazení dat je možno upravit několika způsoby. Po obsahové stránce je nejdůležitější možnost plynule měnit lupu (Zoom) (v měřítku 1:1 až 1000:1) a, pokud nejsou zobrazena všechna data, také plynule posouvat daty s rozlišením jednoho vzorku, což umožňuje pohodlně zobrazit a zvětšit libovolnou část dat tak, aby si ji mohl uživatel podrobně prohlédnout. Po stránce logické lze přiřadit jednotlivým signálům názvy a sdružit je do skupin. Po vzhledové stránce je možné upravit barevné vyznění jednotlivých prvků displeje, včetně jednotlivých zobrazených signálů.

Dále jsou na displeji zobrazeny kurzory a záměrný kříž. Za referenční je považován kurzor, který ukazuje místo spouštěcí podmínky. Jeho poloha se nastavuje, narozdíl od všech ostatních kurzorů, v menu Trigger a od ní se počítá pozice všech ostatních kurzorů. Další dva kurzory se nastavují tažením myší po displeji, případně je lze nastavit na konkrétní místo v kontextovém menu. Ve stavovém pruhu je zobrazena jejich vzájemná vzdálenost (ve vzorcích i v čase), což umožňuje stanovit periodu opakujících se dějů (zápis do paměti, hodinový signál, výskyt rušení, …). Posledním kurzorem je záměrný kříž, který sleduje stopu myši. Jeho pozice je zobrazena v informačním řádku nad posuvníkem dat. Pozici tohoto kurzoru odpovídá i hodnota kanálu zobrazovaná v levém svyslém sloupci vedle názvu kanálu. Tím je možno sledovat, jak se mění stav ve skupinách sdružených např. ze signálů adresové sběrnice.

Pod plochou zobrazující navzorkované průběhy se nachází hrubá stupnice, kalibrovaná v počtu vzorků. V jemném zobrazení, kdy jsou patrné konkrétní odměry, se na ní zobrazuje i poloha jednotlivých vzorků. Kliknutím pravým tlačítkem myši na ploše displeje zobrazíte kontextové menu, které vám umožňuje přesunout jeden nebo druhý kurzor na místo záměrného kříže místo jeho složitého „lovení“ při zobrazení v malém detailu, změnu lupy, pozice začátku zobrazení apod. Taktéž ovládací prvky lupy a pozice mají své kontextové menu, pomocí něhož lze vyvolat okno, v němž s přesností na jednotky zvětšení nebo pozice můžete měnit zobrazení a bez jeho opuštění se přesvědčit o vašem nastavení.

Vlevo od displeje se nachází informační panel, rozdělený do dvou částí. Každá část se nachází na jedné záložce. První, pojmenovaná Signal Tree, obsahuje rozbalovací seznam všech signálů, setříděných do větví Active Signals and Groups, Disabled Signals a Empty Defined Groups. V první větvi jsou seřazeny všechny zobrazené skupiny a signály v tom pořadí, v jakém je nalezneme pod sebou na displeji. Jednotlivé skupiny lze také rozbalit, v nich nalezneme všechny signály přiřazené této skupině v pořadí nejnižší váha (LSB) první, nejvyšší váha (MSB) poslední. Ve druhé větvi se nachází seznam všech signálů, které nejsou zobrazeny (ať už je jejich zobrazení vypnuto nebo jsou hardwarově nedostupné). Ve třetí větvi je seznam všech skupin, které byly vytvořeny, ale nebyly jim přiřazeny žádné signály.

V záložce pojmenované Active signals je přehledný seznam, ve kterém naleznete korespondující rozmístění všech signálů, zobrazených na displeji. Názvy signálů a skupin jsou zobrazeny v barvách jednotlivých signálů. Ve spodní části této záložky je možné zvolit jaká informace bude zobrazována vedle názvu kanálu. Je možné zobrazit hodnotu nebo počet náběžných (sestupných, všech) hran v intervalu mezi posuvnými kurzory.

Pro rychlou práci s programem a orientaci v datech je nad displejem umístěn toolbar. Krátce popíšu jeho funkce.

  • První tři tlačítka se vztahují k práci se souborem dat (načtení dat a konfigurace z disku, uložení dat a tisk aktuálního výřezu dat, zobrazeného na displeji).
  • Následující dvě tlačítka společně s výběrovým menu volí hodnotu vzorkovací frekvence
  • Další tři tlačítka nastavují pozici zobrazení dat tak, aby byly viditelné kurzory v pořadí R – levý, T – trigger, S – pravý. Tato funkce umožňuje rychlou orientaci v datech, takže lze jednotlivé kurzory použít jako „záložky“.
  • Následující tlačítko umožňuje rychlé nastavení takového rozlyšení, kdy je viditelný interval mezi levým a pravým kurzorem
  • Dalších dvě tlačítka s posuvníkem se týkají lupy a mají tento význam: zmenšení, plynulé nastavení zvětšení, zvětšení.
  • Poslední tlačítko spouští (příp. předčasně ukončuje) odměr dat.

Program podporuje tzv. layout handling, takže ke každému souboru dat lze přiřadit jeho vlastní konfiguraci skupin a signálů (tzv. layout). Layout lze uložit či načíst z disku, stejně jako data, položkami v menu File. Dále lze z tohoto menu nastavit tiskárnu a data zobrazená na displeji společně s jejich krátkým popisem vytisknout.

Menu Edit nabízí možnost prohledávat data na výskyt zadané masky nebo sekvence.

Menu View je ekvivalentní části toolbaru a nabízí změnu velikosti lupy a přesun na „záložky“ – kurzory R, T a S.

V menu Setup se nacházejí položky, užitečné při konfiguraci vzhledu a nastavení programu. Konkrétně položka General zobrazí okno pro obecná nastavení programu .

Položka Colors umožní nastavit barvu pozadí, kurzorů a všech signálů.

Položka Channels pak otevře okno ve kterém lze nastavit jména signálů, jejich barvu a příslušnost k jednotlivým skupinám, definovat skupiny, jejich pořadí zobrazení na obrazovce, dále váhu jednotlivých signálů přiřazených skupině a číselnou soustavu, ve které budou zobrazeny a čteny informace, náležící této skupině (hledání v datech, trigger, zobrazení hodnoty na displeji).

Poslední položkou je Hardware, která aktivuje nastavení aspektů komunikace s logickým analyzátorem (komunikační port, způsob komunikace).

Položka menu Trigger zobrazí okno pro nastavení spouštěcí podmínky. Na první záložce, pojmenované Channels (viz obr. lze pro každý signál v něm nastavit, zda se bude účastnit spouštěcí podmínky, a v případě, že ano, pak jakou logickou úroveň nebo hranu musí mít v okamžiku spuštění vzorkování. Signálům lze také změnit jméno.

Je-li signál přiřazen nějaké skupině, před vstupní řádkou pro jméno se nachází tlačítko, jehož stiskem se přepnete na druhou záložku Groups, v níž se aktivuje vstupní řádka korespondující skupiny. Do ní lze zadat v číselné soustavě, nastavené v okně Channel Setup, číslo odpovídající požadovanému stavu jejích signálů. Ke každé skupině v tomto okně lze zobrazit i informační okno s výpisem všech přiřazených (i pro spouštění nedostupných) signálů v pořadí LSB první, MSB poslední. Zadané hodnoty se mezi oběma záložkami automaticky aktualizují.

V menu Help se dozvíte něco o autorech programu. Nápověda se zatím připravuje.


Základ tohoto programu vytvořil Tomáš "Edison" Drexler na podzim roku 1999 . Od té doby prošel program několika úpravami a přepracováním některých částí. Předpokládal jsem, že program převedu pod Kilix, aby byl dostupný i pro Linux, ale díky značným odlišnostem bude jednodušší napsat program nový.  Program je napsán v Delphi 3 a v průběhu ledna bude volně dostupný včetně zdrojových souborů pod GNU licencí. Doufám, že se najdou další nadšenci, kteří doplní některé další zajímavé funkce:

  • analýzu a zobrazování I2C
  • analýzu a zobrazování SPI
  • analýzu a zobrazování asynchronního sériového přenosu
  • ...............



Tato novinka je z -MCU-mikroelektronika
( http://mcu.cz/news.php?extend.280 )