Micro ScopeIkona uScope

ZÁKLADNÍ  VLASTNOSTI  

Micro Scope Professional poskytuje komfortní vývojové a ladící prostředí pro tvorbu rozsáhlých projektů pro MCS51 a Microchip PIC. Nastavení velkého množství parametrů umožňuje vytvoření prostředí pro různé typy aplikací a projektů "šitých na míru". Umožňuje komunikovat s hardware ( modul UMON52, modul ADuC ), ladit aplikace pro MCS51 a Microchip PIC v simulačním režimu ( modul SIM51 a PIC ) - viz Simulátor, jeho součástí je Designer .

Micro Scope Standard je plně funkční verze programu Micro Scope určená "bastlířům", začátečníkům a školám. Na rozdíl od verze Professional neobsahuje některé rozšiřující speciální funkce. Stejně jako verze Professional umožňuje komunikovat s hardware ( modul UMON52, modul ADUC ), ladit aplikace pro MCS51 a Microchip PIC v simulačním režimu ( modul SIM51 a PIC ) - viz Simulátor , spolupracuje s Designerem - viz Designer .

Micro Scope Lite je verze programu obsahující pouze simulační modul umožňující ladit aplikace bez reálného hardware. Ladící funkce jsou stejné jako ve verzi Standard. Neumožňuje však připojení hardware. Spolupracuje s Designerem, pomocí kterého lze vytvořit virtuální aplikaci a tvořit pro ni program v simulačním režimu jako pro skutečný hardware. Odladěný program lze nahrát do procesoru a spustit aplikaci na skutečném hardware.Micro Scope Lite je levný, ale výkonný nástroj pro tvorbu programů.

Všechny verze Micro Scope mají integrován vlastní assembler a podporují ladění programu na zdrojové úrovni pro jazyky C ( Keil, SDCC, Intel ) a assembler, na vyžádání je možná i podpora jazyka PL/M. Program je možnou spouštět, krokovat po instrukcích nebo funkčních blocích, je možno nastavovat body přerušení, měnit aktuální pozici programového čítače (opakovat průchod blokem programu), prohlížet a měnit obsah paměti, registrů a proměnných, disassemblovat bloky programu nebo opravovat kód pomocí in-line assembleru a další funkce - viz dále.
Porovnání všech verzí je ZDE.

Program Micro Scope běží na běžném PC a s laděnou aplikací komunikuje přes běžný sériový port nebo USB/RS232 konvertor. Funguje pod běžnými operačními systémy Windows 95/98/Me a Windows NT/2k/XP.

Aplikace lze ladit s Vaším hardware ( v případi nutnosti pomůžeme s implementací ). Standardně dodáváme Micro Scope s univerzální vývojovou deskou ED2. Plně funkční je také s deskou z RD2 Kitu, kterou dodává obchod HW serveru, a při použití jednoduché redukce ( schéma je zde ) s deskou PVK40 od firmy ASIX Praha.


VLASTNOSTI   :
Správa projektu
Volby
Manažer
Výběr typu procesoru
Kompilátory
Project browser
Skupinový projekt ( Project group )
Začlenění souborů neznámého typu
Podpora začlenění knihoven a objektů
Podpora více uživatelů
Volitelné cesty pro pracovní soubory, knihovny, inc, ...
Podpora síťového prostředí
Editor zdrojového kódu
Nastavení vlastností editoru
Vyhledávání v souborech
Rychlé hledání deklarace proměnných a procedur
Překlad zdrojových textů, seznam chyb
Klávesové zkratky
Vlastní seznam klíčových slov ( Template )
Hardware versus Simulátor
Designer
Podporované procesory
Podpora rozhraní JTAG
Podpora USB adaptéru pro procesory Silabs
Podpora protokolu I2C a I2C terminál
Podpora protokolu SPI
Vývojové desky
Nastavení komunikace
Programátor FLASH
 
Debugger na úrovni zdrojového textu
Konfigurovatelný monitor
Ladění na úrovni zdrojového kódu
Krokování a běh programu
Pruh nástrojů, hlavních registrů a počítadlo cyklů procesoru
Symbolický browser
In-line assembler
Grafické znázornění portů
Disassembler
Terminál pro přímou komunikaci s aplikací
Ostatní vlastnosti prostředí
Integrovaný assembler
Možnost zakotvení podřízených oken
Zapamatování naposledy otevřených souborů/projektů
Intuitivní přesun objektů mezi okny ( Drag and Drop )
Výpočet čekacích smyček (Delay)
Výpočet baudových rychlostí
Spuštění externí utility
Generování kontrolní sumy nebo CRC
Odeslání souboru pomocí klienta elektronické pošty ( Mail )
Možnost uložení .HEX kódu na disk (upload)
Uložení disassembleru do souboru
Preprocesor jazyka "C"
 
 
 
 
 
 
Správa projektu je jedním z nejdůležitějších nástrojů prostředí uScope.
Projekt se skládá ze zdrojových souborů, pravidel pro překlad a generování cílového kódu a podpůrných nástrojů prostředí uScope. Správce projektu umožňuje snadnou konfiguraci nástrojů, začlenění překladačů a linkerů a vytvoření pravidel pro překlad zdrojového kódu (direktivy, podmíněný překlad atd.). Nejdůležitějšími součástmi jsou dialogy Volby (Options) a Správa (Manažer).

Při zakládání nového projektu umožňuje snadno krok za krokem provést všechna potřebná nastavení Wizard - průvodce vytvořením nového projektu.
V dialogovém okně Volby (Options) se konfigurují základní volby projektu. Nastavují se zde typy souborů , které potom prostředek uScope registruje jako možnou součást projektu ( podporované typy jsou ‘assembler’, ‘C’, ‘PL/M’ a ‘INCLUDE’). Dále se zde volí překladač a nástroj na spojování ( linkování ) jednotlivých součástí projektu a pro generování cílového kódu pro programátor ve formátu Intel-HEX. Dále je tu záložka pro zadání podmínek překladu jednotlivých součástí projektu, záložka pro nastavování systémových proměnných a záložka pro nastavení adresářů ( directories ) pro oddělené umístění pracovních souborů, knihoven, include-souborů, výsledných souborů po provedení překladu a linkování projektu a cílového kódu pro programátor ve formátu Intel-HEX . Pro každý typ souboru lze nastavit vlastní překladač, vlastní seznam klíčových slov ( Template ) a vlastní šířka tabelátoru.

Ve verzi Professional lze rovněž provést začlenění souborů neznámého typu do projektu.

Všechny verze Micro Scope ( Professional, Standard, Lite ) podporují práci více uživatelů s individuálním uložením zdrojových a konfiguračních souborů.

V dialogovém okně Správa ( Manažer ) se spravují součásti projektu. V seznamu mají být zadány jak součásti, které se pak spojují ( linkují ) do cílového souboru ( tyto součásti nazýváme programové moduly ), tak i deklarační a vložené soubory ( obvykle soubory typu .H a include soubory ). Pořadí součástí je důležité pro proces spojování, první modul musí být hlavní modul, na pořadí dalších modulů už příliš nezáleží, je však třeba, aby jejich pořadí odpovídalo pořadí v cílovém kódu. To je dodrženo vždy, pokud byl projekt vygenerován v prostředí uScope, pokud se ale ladí cílový kód vygenerovaný jiným způsobem, nemusí to být dodrženo. Program uScope při zavádění ( download ) cílového kódu provede potřebné kontroly a vyzve k opravě případných nesrovnalostí.

Ve verzi Professional lze také provést začlenění knihoven a objektů do projektu.

Verze Professional nabízí i jinou možnost spravování projektu, a to okno prohlížeče projektu - Project browser.
Lze volit typ procesoru použitý v laděné aplikaci. Tato volba je potřebná k tomu, aby prostředí uScope použilo správnou sadu předdefinovaných speciálních funkčních registrů. Pokud požadovaný typ chybí, je možno importovat definiční soubor dalšího procesoru ve formátu .ASM (typicky REGcpuname.INC) nebo hlavičkový soubor jazyka „C“ (typicky cpuname.H).

V souboru předdefinovaných čipů ( na obr "Select chip type" ) lze předdefinovat odkaz ( html, místní nebo síťová cesta, ... ) na dokumentaci k čipu ( pdf, doc, txt .... ). Při výběru typu čipu použitého v projektu se automaticky přiřadí tento odkaz do brožur projektu . Dokumentace je tak stále k dispozici.
Ke každému typu souboru lze snadno nastavit vlastní překladač C a ASM i od jiných výrobců ( Keil, SDCC, ... ). Ten lze vybrat ze seznamu nebo pomocí tlačítka Browse najít jiný.
V tomto okně ( pouze u verze Professional ) lze spravovat projekt obdobně jako v dialogovém okně Správa projektu. Kromě toho zde lze ovládat i skladbu dokumentace, použité v rámci vývoje projektu, a přehledně vést seznam poznámek a úkolu týkajících se projektu. Nově je prohlížeč rozšířen o informace o možnostech použitého procesoru ( porty, timery, ... ) a o možnosti rychlé volby dialogů pro výpočet čekacích smyček a baudových rychlostí.

Položky jsou uspořádány do přehledné stromové struktury :
  • správa projektu
  • součásti projektu- zdrojové texty, knihovní a zkompilované moduly
  • brožury ( Brochures )- dokumentace, výkresy, manuály, obrázky, www odkazy atd.
  • úkoly a poznámky ( To Do List ).
Obrázek znázorňuje, jaké informace lze rozbalováním jednotlivých větví bezprostředně získat.

Project browser umožňuje :

  • měnit pořadí jednotlivých součástí prostým přetažením pomocí myši
  • zvolit mikrokontroler poklepáním na kořenový uzel projektu
  • zobrazit zdrojové texty nebo dokumenty poklepáním myši nebo přetažením do oblasti editoru zdrojového kódu
  • přidat/odebrat součásti projektu nebo dokumenty (brožury)
  • překládat součásti projektu nebo vytvořit cílový kód projektu
  • přidat/odebrat poznámky nebo úkoly (To Do List)
  • nastavovat stav poznámky ( aktivní/neaktivní )
  • pomocí Ctrl a pravého tlačítka myši přesunout poznámku pod jinou poznámku a vytvářet jejich stromovou strukturu
 
Micro Scope podporuje práci více uživatelů s individuálním uložením zdrojových a konfiguračních souborů. Nastavení adresářů ( directories ) pro oddělené umístění pracovních souborů, knihoven, include-souborů, výsledných souborů po provedení překladu a linkování projektu a cílového kódu pro programátor ve formátu Intel-HEX se provádí v záložce Directories v menu Projekt | Volby.


Po spuštění se uScope podívá do registru, zda existuje klíč "HKCU\SOFTWARE\Promis\uScope" a zdali je v něm definovaná hodnota 'uScopeUserData'.

Pokud ji nenajde, zkusí se podívat do "HKLM\SOFTWARE\Promis\uScope" pro stejnou hodnotu (tam ji zapíše Install). Není-li ani tato hodnota nalezena, pokusí se načíst cestu na lokalní dokumenty (obvykle "C:\Documents and Settings\%UserName%\Dokumenty").

Jestliže tato cesta existuje, přilepí k ní "\uScope", jinak se pokusí vyhledat cestu ke společným dokumentům (obvykle "C:\Documents and Settings\All Users\Dokumenty") a přilepit k ní "\uScope".

Pokud ani jedna z těchto cest není nalezena a uScope je poprvé spuštěn, otevře konfiguraci uloženou v souboru "uScope.INI" z instalačního adresáře.

Při úspěšném nalezení cesty 'uScopeUserData' se program podívá, zda cesta existuje a případně ji vytvoří. Dále kontroluje, zda tento adresář obsahuje alespoň jeden soubor projektu (.DPC). Zjistí-li, že ne, zkopíruje všechny uživatelské soubory z instalačního adresáře (dokumenty, zdrojové texty, přeložené cílové kódy, projekty a konfigurační soubory) do výše zmíněného adresáře a otevře projekt uložený v souboru "uScope.INI".

Uživatel programu může tuto cestu kdykoli změnit (Project | Options – záložka Directories, položka Prefered user project path.

Cestu lze zadat s ohledem na proměnné prostředí, tedy např. jako "%USERPROFILE\Dokumenty\uScope". Z toho plyne, že pokud se přihlašuje více uživatelů, vytvoří se lokální kopie uživatelských souborů pro každého uživatele zvlášť.

Pokud je výše uvedená vlastnost z nějakého důvodu nežádoucí, lze jako adresář zadat "%ALLUSERS\Dokumenty\uScope". Pak budou mít všichni uživatelé přístup ke stejné konfiguraci a projektům.
Program uScope umožňuje pracovat v síťovém prostředí v rámci lokální i externí počítačové sítě, podporuje UNC ( síťová ) jména souborů a použití http odkazů, např. v okně prohlížeče projektu. Pokud na projektu pracuje více programátorů v rámci firemní počítačové sítě, program uScope podporuje možnost otevření projektu umístěného na libovolném počítači z libovolné pracovní stanice.

V okně lze :
  • měnit pořadí jednotlivých součástí prostým přetažením pomocí myši
  • zvolit mikrokontroler poklepáním na kořenový uzel projektu
  • zobrazit zdrojové texty nebo dokumenty poklepáním myši nebo přetažením do oblasti editoru zdrojového kódu
  • přidat/odebrat součásti projektu nebo dokumenty
    1. prostým přetažením záhlaví zdrojového textu modulu z editoru zdrojového kódu
    2. využitím kontextového menu, dostupného klepnutím pravého tlačítka myši na vybraný objekt
  • Překládat součásti projektu nebo vytvořit cílový kód projektu pomocí téhož menu jako v předchozím odstavci
Program uScope umožňuje sestavit skupinový projekt z několika různých projektů, které jsou tak stále k dispozici.
Na obr. je skupinový projekt Test_group složený ze 2 projektů : TestLED a LED_BAR. Projekt LED_BAR je "aktivní".
Editor má všechny standardní funkce včetně přesunu textu, "cut-copy-paste", víceúrovňové "undo/redo" ( zpět/vpřed ), hledání a náhradu včetně prohledávání souborů, barevné zvýraznění ladících objektů a zvýraznění syntaxe. Editor dále podporuje funkce „drag and drop“ pro otevírání souborů a konfiguraci projektu. Je umožněn výběr typu a velikosti fontu, velikost tabelátorů a další vlastnosti, jako např. automatické odsazení, konfigurace funkce „undo“ a další. Podporuje rovněž funkci vyhledávání v souborech.

Jednotlivé programové moduly, ale i jiné texty, lze editovat v oknech editoru zdrojového kódu, která zabírají plochu hlavního panelu aplikace a jsou uspořádána do záložek. Pro snadnou orientaci je možno pořadí záložek měnit tažením myši za jejich záhlaví. K dispozici je rovněž kontextové menu, v němž se v submenu „Pages“ nachází seznam otevřených editačních oken seřazených podle pořadí záložek a konečně v nabídce menu „View“ je abecední seznam otevřených oken. Všechny tyto možnosti lze použít pro procházení editačních oken.

Při najetí kurzoru na výskyt proměnné v okně zdrojového textu se po krátké prodlevě objeví malé okno ( na obr. ), obsahující název proměnné a její obsah. Typ proměnné je automaticky rozpoznán ( pokud použitý kompilátor podporuje rozšířené možnosti ladících informací ) včetně proměnných typu array. To umožňuje rychlou orientaci bez nutnosti použití dalších prostředků ( oken watch nebo evaluate/modify )
Při editaci textu lze využívat množství klávesových zkratek ( hot keys ).
Lze provést nastavení různých vlastností editoru :
  • vybrat typ a velikost písma
  • nastavit odpovídající odsazení po stisku klávesy [tab]
  • zvolit vkládání znaku tabelátoru do textu
  • minimalizovat počet znaků vložených kvůli odsazení
  • nastavit hledání textu na pozici kurzoru
  • nastavit mód vkládání
  • aktivovat "skupinové undo" ( vrácení všech změn najednou )
  • další funkce
Umožňuje vyhledání textu ve všech souborech, nastavit rozlišování velkých a malých písmen při hledání, hledat celý výraz nebo jeho část. Lze nastavit hledání ve všech souborech, které jsou součástí projektu, nebo pouze ve všech otevřených editačních oknech.
Umožňuje rychle vyhledat místo deklarace proměnné nebo procedury. Pomocí Ctrl + klik na proměnné ( jméně procedury ) provede skok na místo její deklarace ve zdrojovém textu. Hledání se provádí ve všech souborech, které jsou součástí projektu. Není-li soubor se zdrojovým textem, kde se vyskytuje hledaná deklarace, otevřen, automaticky se otevře.
Pro syntaktickou kontrolu ( překlad ) zdrojových textů lze použít kompilaci jednotlivých modulů odděleně ( compile file ), kompilaci celého projektu ( všech modulů - compile ), kompilaci spojenou s vytvořením cílového kódu ( build ), kompilaci spojenou s vytvořením cílového kódu a jeho zavedením do paměti programu laděné aplikace ( build and load ) nebo kompilaci pouze změněných a nových modulů ( make ).

Kompilátor lze spustit prostřednictvím různých akcí: volbou v hlavním menu, kontextovým menu editoru zdrojového textu nebo z prohlížeče projektu klávesovou zkratkou nebo klepnutím jedno tlačítko na pruhu nástrojů. Tyto možnosti názorně dokumentuje následující obrázek, kde jsou zobrazena kontextová menu editoru kódu a prohlížeče projektu a nabídka roletového menu, i když je nutno si uvědomit, že následující obrázek vznikl fiktivním poskládáním různých akcí pouze pro názornost, v praxi lze použít vždy pouze jedinou z akci.

Při překladu zdrojového textu se objeví nové okno se seznamem všech detekovaných chyb a první chyba je zvýrazněna ve zdrojovém textu. Zakotvením okna se seznamem chybových hlášením ( message ) do dolního okraje hlavního panelu vznikne uspořádání podle obrázku. Poklepáním na chybovou položku v okně seznamu hlášení se zvýrazní příslušný řádek v okně editoru zdrojového kódu. Pokud není příslušný text otevřen v jednom z oken, okno se automaticky vytvoří. Takto lze snadno nalézt místa chyb.

Z přeložených součástí projektu lze sestavit cílový kód volbou Linkování projektu . Spojí (link) přeložené součásti projektu a vytvoří cílový kód. Pokud se během procesu spojování vyskytnou chyby, zobrazí se v okně zpráv. V záložce pro nastavení podmínek překladu lze definovat různé podmínky linkování.

V uScope lze také spustit překlad zdrojového souboru v aktivním editačním okně, který nemusí být součástí projektu, tzn. lze překládat i soubory otevřené např. za účelem testu některých dílčích funkcí atp.
Ke každému typu souboru lze nastavit vlastní seznam klíčových slov ( template ) - viz Správa projektu . Tyto seznamy lze libovolně upravovat a doplňovat nebo vytvářet vlastní seznamy klíčových slov. Volbou existujícího seznamu lze provádět úpravy klíčových slov v editačním okně a pak volbou [Použít] (Apply) úpravy uložit.
Klávesové zkratky lze používat v rámci celého prostředí. Pokud má položka menu přiřazenou klávesovou zkratku, je uvedena v menu u příslušné volby ( např. Edit/Copy – Ctrl+C ). Je-li klávesová zkratka u volby uvedena nevýrazným písmem ( např. Ctrl_V ), znamená to, že není aktuální pro danou fázi práce. Některé klávesové zkratky nemají přiřazenu žádnou položku menu. Jsou to některé akce editoru ( např. kopírování bloku, zarovnání bloku atd. ) nebo akce simulátoru ( simulace výskytu přerušovacího signálu, události na čítači atd. ).

Seznam všech klávesových zkratek je uveden ZDE .
Program uScope disponuje mnoha funkcemi pro ladění aplikace. Jsou to akce pro krokování a spouštění programu, programové zarážky, okna pro zobrazení vybraných proměnných nebo registrů, pruh hlavních registrů procesoru pod panelem nástrojů, disassembler, výpis zásobníku, seznam symbolů , dialog pro vyčíslení nebo změnu hodnoty výrazů atd.
Po zakotvení oken k dolnímu okraji se lze mezi nimi pohybovat pomocí záložek. Volbou záložky okna „Watches“ a použitím jeho kontextového menu lze definovat položky pro sledování. Při dalším krokování lze sledovat v okně watch změny zvolených proměnných nebo registrů. Volbou záložky „Call Stack“ se objeví výpis zásobníku. Z něho lze zpětně vysledovat, odkud a jakou cestou byla procedura volána. Poklepáním na položky v tomto okně lze zobrazit volající místo procedur v okně editoru zdrojového textu. Další podporu ladění nabízí okno pro zobrazení stavu portů.
V záložce dialogového okna „Preference“ lze nastavit vlastnosti debuggeru. Tato záložka obsahuje volby závislé na použitém klonu 8051 a verzi prostředku UMON-52. Lze zde nastavit možnost přerušit běh uživatelského programu uživatelem ( pole "Allow program halt by user" - Povolit zastavení programu uživatelem ).

Další položky umožňují konfigurovat vlastnosti monitoru. Pokud používáte monitor UMON-52 společně s čipy Philips/Atmel/Temic, je možno konfigurovat některé vlastnosti, jako např. maximální velikost podporované paměti XRAM, umístění pracovní stránky paměti monitoru v XRAM, volbu X1/X2 módu a čítač, použitý jako generátor baudové rychlosti. To může být užitečné zejména pokud ladíte aplikaci, která využívá sériový interface.

Zaškrtávací pole „X2 Mode“ přepne procesor do zrychleného režimu, ve kterém je instrukční cyklus pouze 6 strojových cyklů namísto standardních 12-ti.

Skupina „XRAM size“ umožňuje konfigurovat maximální velikost podporované paměti XRAM. To může být vhodné pro dosažení zpětné kompatibility se staršími typy procesorů (např. Philips 89C51RD2), které měly méně paměti XRAM.

Skupina „XRAM Page used by debugger“ umožňuje konfigurovat stránku paměti použitou monitorem k uložení vnitřního stavu při ladění. Pokud nemá vaše aplikace nějaké speciální požadavky, je vhodné použít stránku těsně pod nastaveným maximálním rozsahem.

Skupina „Timer used as baud rate generátor“ umožňuje konfigurovat zdroj hodin pro sériový interface. Pokud laděná aplikace používá např. Timer 2 pro měření frekvence, je možno jej uvolnit zvolením doporučeného SFR BRL. Je vhodné použít stejný zdroj, jako používá laděná aplikace.

 
Prostředí uScope nabízí podobný komfort ladění jako např. aplikace Delphi nebo Visual C++. V editačním okně zdrojového souboru lze jednoduše nastavovat body přerušení, krokovat, zobrazovat obsah proměnných atd. Pro lepší orientaci v okně jsou jednotlivé ladící elementy barevně odlišeny. Okno zdrojového kódu je tedy současně ladícím oknem.

Při najetí kurzoru na výskyt proměnné v okně zdrojového textu se po krátké prodlevě objeví malé okno ( bublina ), obsahující název proměnné a její obsah. Typ proměnné je automaticky rozpoznán ( pokud použitý kompilátor podporuje rozšířené možnosti ladících informací ) včetně proměnných typu array a strukturovaných proměnných. To umožňuje rychlou orientaci bez nutnosti použití dalších prostředků (oken watch nebo evaluate/modify).

Během ladění programu je automaticky zobrazován obsah všech důležitých registrů.

Pro usnadnění procesu ladění podporuje :

Služba Popis Funkce
Popis
výpis voláni podprogramů
Popis
přímé sledování vybraných proměnných nebo SFR
Popis
okno pro snadné zobrazení a modifikaci programových zarážek
Popis
okno pro vyčíslení výrazů a zobrazení nebo modifikaci proměnných
Popis
okno pro zobrazení nebo změnu obsahu paměti dat, externích dat, kódu nebo bitové oblasti paměti a SFR, volbu ruzných formátů zobrazení a číselných bází
Popis
okno historie instrukcí
Popis
grafické zobrazení průběhu programu
Toto okno zobrazuje obsah zásobníku tak, aby bylo patrné, jaká je hloubka zásobníku ( stacku ) a odkud byly jednotlivé podprogramy volány.
Každá položka se skládá typicky ze tří částí:
  • Symbolický odkaz – většinou ve tvaru : module.procedure
  • Odkaz na číslo řádku ve tvaru : module#line_number
  • Absolutní alokace – adresa v paměti programu
Poklepáním na položku v okně se zobrazí odpovídající část zdrojového kódu (pokud je k dispozici, což není možné např. u knihovních modulů).
 Ve verzi Professional je také podporováno zastavení programu na návratové instrukci z okna call stack.
Toto okno umožňuje sledovat vybrané proměnné a registry. Lze snadno jejich seznam doplňovat ( pouhým "přetažením" názvu proměnné z editoru zdrojového textu ) a specifikovat číselnou soustavu pro zobrazení obsahu proměnné (soustava desítková, šestnáctková, dvojková, osmičková ). Stiskem pravého tlačítka myši v poli okna watches se objeví vyskakovací menu, s jehož pomocí lze snadno ovládat obsah okna. Pokud chcete sledovaní nějaké proměnné dočasně pozastavit, ale nechcete tuto položku odebrat, zruší se zaškrtnutí vlevo od výrazu. Pokud se dočasně pozastavená položka opět povolí, vyčíslená hodnota se automaticky obnoví.
Při ladění programu lze ve zdrojovém textu nebo v okně disassembleru nastavit programové zarážky ( přerušení, break ).

Nastavení zarážky na pozici kurzoru lze provést několika způsoby :
  • pomocí klávessy "F5"
  • volbou Breakpoint v lokálním menu (pravou myší) ve zdrojovém textu
  • volbou Run/Breakpoint v hlavním menu
Umístění zarážek ve zdrojovém textu je odlišeno barevně, v okně disassembleru pomocí značky .

V dialogovém okně "Breakpoint list" lze zarážky rušit, aktivovat nebo deaktivovat a zobrazovat jejich umístění ve zdrojovém textu nebo okně disassembleru. Poklepem na řádek se zvolenou zarážkou v seznamu zarážek ( Breakpoint List ) se provede skok do místa zarážky ve zdrojovém textu.

Toto dialogové okno umožňuje vyčíslovat výrazy, zobrazovat a měnit hodnoty proměnných (registr, SFR, paměti) a vyčíslované výrazy přidávat do položek okna Watches pro sledování vybraných proměnných nebo SFR.

Občas je užitečné vědět, jaké kombinaci posloupnosti byte odpovídá hodnota float nebo pointer. Pro tyto potřeby disponuje tento dialog možností „přetypování“ posloupnosti byte (celočíselné hodnoty) na float nebo pointer. Pokud tedy do editačního boxu „Výraz“ zadáte např. float(40000000H), v poli „Výsledek“ se zobrazí 2.0 (pokud je formát hodnoty float “big endian“).

U verze Professional dochází k automatickému rozpoznání strukturovaných proměnných ( struct / union / array ). Pokud vyčíslovaná proměnná je tohoto typu, zobrazí se v poli Result rozčleněná do jednotlivých částí včetně možných pod-struktur.

V okně zobrazení paměti je možno zobrazovat nebo měnit obsah paměti dat, externích dat, kódu nebo i bitové oblasti paměti a SFR. Je možno volit různé formáty zobrazení ( char, byte, word, int, long, pointer, ASCII, float atd.) a různé číselné báze ( dvojková, oktalová, dekadická a hexadecimální ). Jednotlivé oblasti paměti je možno přesouvat, kopírovat, plnit konstantou atp.

Lze sledovat obsah jednotlivých oblastí paměti. Pro MCS-51 je možno vybrat jednu z následujících položek :
  • Code – zobrazí paměť programu
  • Xdata – zobrazí externí paměť dat
  • Idata – zobrazí interní paměť dat, která je nepřímo adresovatelná (MOV A,@Ri,…)
  • Data – zobrazí interní paměť dat, která je přímo adresovatelná (MOV A,dataadr,…)
  • Bit – zobrazí bitovou oblast pamiti
  • EEPROM
Nabídky submenu Code, Xdata, Idata a Data mají další podnabídku pro výběr formátu zobrazení :
  • uchar (byte)
  • char (short)
  • uint (word)
  • int
  • ulong (dword) (není pro oblast DATA)
  • long (není pro oblast DATA)
  • float (není pro oblast DATA)
  • pointer (není pro oblast EEPROM, DATA)
  • dump
V tomto okně lze zpětně analyzovat chování procesoru během posledních 256-ti instrukcí. Poklepáním na položku historie se zobrazí (pokud existuje) okno editoru se zvýrazněným řádkem, odpovídajícímu zdrojovému kódu instrukce. Pokud k položce zdrojový text neexistuje (knihovní moduly, ….), zobrazí se okno disasmebleru. Součástí historie je i výpis pracovních registrů procesoru (PC, ACC, SP, PSW, DPTR, R0..R7).
Pro dokonalejší analýzu průběhu programu a případné odkrytí slabších mist z hlediska časového vytíženi lze použít okno grafického zobrazení. Na vodorovné ose jsou jednotlivé lokace programu, na svislé ose je četnost výskytu průchodem těmito lokacemi. Zobrazení lze libovolně zvětšovat / zmenšovat (zoom).
Příkazem "Load" lze zavést cílový kód do paměti programu laděné aplikace ( nebo simulátoru ) a ladit jej. Krokovat program lze po instrukcích ( assembler ) nebo řádcích zdrojového textu ( C, PL/M ). Jestliže krokovaná instrukce je typu CALL, krokování se „vnoří“ do volaného podprogramu. Pokud zavedený cílový kód neobsahuje informace o číslech řádků, je k dispozici krokování po instrukcích assembleru. Pokud chcete vykonat sérii kroků, stisknete a podržíte klávesu [F7] nebo pravým tlačítkem myši stisknete a držíte tlačítko na pruhu nástrojů.

Pokud se klávesou F7 provede jedna instrukce programu ( krokování ), program uScope tuto instrukci zvýrazní ve zdrojovém textu modulu. Pokud takový text neexistuje, což bývá většinou proto, že programy v jazyce „C“ obsahují knihovní moduly, otevře se automaticky okno disassembleru a zvýrazní se řádek s aktuální pozicí programového čítače. Toto okna lze zakotvit podobně jako okno prohlížeče projektu.

Lze využít 3 způsoby krokování :

krokovat ( Step Into, F7 ) - krokuje program po instrukcích (assembler) nebo řádcích zdrojového textu (C, PL/M), nepřeskakuje volání podprogramů.
krokovat přes ( Step Over, F8 )- krokuje program po instrukcích (assembler) nebo řádcích zdrojového textu (C, PL/M), ale přeskakuje volání podprogramů.
krokovat do návratu ( Step to return ) - krokuje program po instrukcích a skončí, když se na pozici programového čítače objeví instrukce RET nebo RETI.

Velmi praktickým způsobem ladění aplikace je použití krokování společně s nastavením programových zarážek a využitím dalších nástrojů pro ladění .
Tento panel obsahuje tlačítka pro rychlou volbu často používaných příkazů a obsahuje pracovní sadu registrů, akumulátor, registr B, ukazatel zásobníku, stavové slovo, programový čítač, datový ukazatel a příznaky pro MCS51. Pro PIC jsou zobrazeny stavy portů, programového čítače a dalších důležitých stavových registrů. Klepnutím na vybranou položku se zobrazí dialogové okno „Vypočíst/změnit“, ve kterém je možno tuto položku modifikovat, vyčíslovat výrazy a zobrazovat nebo měnit obsah proměnných, registrů, SFR atd.
Ve verzi Professional je také zobrazeno počítadlo cyklů procesoru.
Okno symbolického browseru zobrazuje seznam symbolů (názvů proměnných, návěští, čísel řádků, jmen SFR …) vyskytujícíh se v celém projektu. Umožňuje dva módy zobrazení : strom modulů (na obr. vlevo) nebo seznam s podrobnými údaji (na obr. vpravo). Jednoduše poklepáním myši lze zobrazovat a měnit obsah proměnných a SFR nebo vyhledávat jejich deklaraci ve zdrojovém souboru.

Přepínaní obou módu se děje pomocí širokého tlačítka, vyplňujícího nízký prostor pod hlavičkou okna.

V obou módech je k dispozici vyskakovací menu, s jehož pomocí lze:
  • vyčíslit obsah proměnné nebo absolutní lokaci symbolu v paměti prostřednictvím dialogu vypočíst/změnit
  • zobrazit deklaraci nebo výskyt symbolu ve zdrojovém textu nebo disassembleru
  • v módu seznam přepnout zobrazení položky „Hodnota“ mezi dekadickým a hexadecimálním
Pro rychlou opravu kódu je v prostředí uScope implementován jednoduchý in-line assembler. S jeho pomocí je možno rychle měnit kód programu pomocí instrukcí assembleru bez nutnosti opětovného překladu a zavedení kódu do paměti. To je dalším význam prvkem pro urychlení vývoje. V okně disassembleru je možno prohlížet cílový kód produkovaný překladačem na úrovni assembleru.

  • Do řádku „Assemblovat od adresy“ se zadá požadovaná adresa paměti programu.
  • Do řádku „Mnemonika“ se zadá instrukce assembleru. Pokud chcete opakovat již použitou instrukci, poklepe se na instrukci v pravém poli
  • Stiskem tlačítko „Assemblovat“ nebo klávesy [ENTER] se akce provede.
  • V poli „Výsledek“ se zobrazí sestavená instrukce včetni adresy paměti a operačního kódu a v pravém poli přibude zadaná instrukce.
  • Pole napravo od tlačítek obsahuje disassemblovaný úsek paměti programu pro možnost vizuální kontroly.
Toto okno zobrazuje grafickou formou (napodobením vzhledu LED) stav portů. Červená „LED“ znamená logickou jedničku, zelená logickou nulu. Klepnutím levého tlačítka na „LED“ se dočasně změní stav bitu zvoleného portu, uvolněním tlačítka myši se port vrátí do původního stavu. Klepnutím pravým tlačítkem se stav portu změní natrvalo. Pomocí kontextového menu lze konfigurovat zobrazení portů, tj. které porty z množiny mikrokontrolérem podporovaných portů budou či nebudou zobrazeny.
Okno portů může pracovat v režimu automatického obnovení ( Refresh periodically ). V tomto režimu se stav portů automaticky načte cca každou 1 sec. Tento režim lze nastavit v lokalnim menu okna portů.

Okno portů nelze kotvit, ale umožňuje jednak vizualizaci stavu portů i změnu stavu jednotlivých vývodů na portech.

Ve verzi Professional lze také provést nastavení okna portů s přihlédnutím k typu procesoru.
Toto okno zobrazuje zvolený úsek cílového kódu jako instrukce assembleru.

V okně disassembleru lze prostřednictvím vyskakovacího menu provádět následující akce :
Doběhnout do pozice kurzoru - program se spustí od okamžité pozice programového čítače a přeruší po dosažení instrukce na pozici kurzoru.
Spustit od pozice kurzoru - program se spustí od pozice kurzoru
Krok - krokuje program po instrukcích assembleru
  Nastavit jako výchozí - změní hodnotu programového čítače tak, aby odpovídala instrukci na pozici kurzoru
Přepnout programovou zarážku - pokud aktuální pozici kurzoru je současně pozicí breaku, break (programová zarážka) se zruší. V opačném případě se na pozici kurzoru umístí. Přítomnost zarážky je signalizována symbolem před řádkem disassmebleru.
Kopírovat - umožňuje disassemblovaný kód uložit do schránky. Takto uložený text může být vložen do otevřeného editačního okna nebo jiné textové aplikace (pouze ve verzi Professional).
Uložit na disk - umožní uložit disassemblovaný kód do souboru na disk.
  Ukázat lokaci - umožní změnit zobrazovanou část cílového kódu (pouze ve verzi Professional).
  Znovu vytvořit - pokud je to potřeba, lze touto volbou znovu sestavit obsah okna.
  Zobrazit řádky - skryje nebo zobrazí sloupec s informacemi o číslech řádků odkazujících n zdrojový kód.
  Zobrazit návěští - skryje nebo zobrazí sloupec s návěštími.
  Zobrazit operační kód - skryje nebo zobrazí sloupec s hexadecimální reprezentací generovaného proveditelného kódu (instrukcí).
  Zobrazit adresy - skryje nebo zobrazí sloupec s adresami jednotlivých instrukcí.
  Zůstat na vrchu - pokud okno není zakotveno, může se stát, že při přepnutí do jiného okna se okno disassembleru „schová“ pod pracovní plochu. Zaškrtnutí této volby způsobí, že okno disassembleru bude vždy viditelné.
  Zavřít - skryje okno disassembleru.
Zobrazí okno terminálu, s jehož pomocí lze s laděnou aplikací nahranou v hardware ( nebo simulátoru ) přímo komunikovat prostřednictvím připojené sériové linky RS-232.
Designer   
Designer je samostatný nástroj pro navrhování elektronických obvodů. Umožní na ploše počítače vytvořit virtuální aplikaci a ladit pro ni program jako pro skutečné hardwarové zapojení. Spolupracuje se všemi verzemi prostředí Micro Scope. Součástí instalace je u verze    Professional.
Podporované procesory   
Jsou podporovány čipy ADuC, Atmel, Philips, Temic a Dallas ( Maxim ) s pamětí Flash. Podpora jiných čipů je možná pomocí speciálního zapojení.

Kompletní přehled je ZDE.
Vývojové desky   
Aplikace lze ladit s Vaším hardware. Standardně se Micro Scope dodává s univerzální vývojovou deskou ED2. Plně funkční je také s deskou z RD2 Kitu, kterou dodává obchod HW serveru, a při použití jednoduché redukce ( schéma je zde ) s deskou PVK40 od firmy ASIX Praha.

Kompletní přehled je ZDE.
Okno pro nastavení komunikace, ve kterém je možno zvolit komunikační kanál, rychlost komunikace a cíl ladění nebo zvolit přepnutí do simulačního režimu.
V prostředí uScope je integrován zavaděč programového kódu pro všechny podporované mikroprocesory. Pro naprogramování paměti programu nepotřebujete žádné dodatečné programové nástroje ani programátor. Pokud vlastníte konvertor RS232/JTAG, můžete přímo z prostředí uScope programovat i aplikace osazené procesory Cygnal. Tím se minimalizuje čas potřebný pro ladění aplikace.
Prostředí uScope podporuje procesory Silabs ( Cygnal ) prostřednictvím sériového nebo USB adaptéru s protokolem JTAG nebo C2. Adaptér lze objednat např. v HW serveru.
Z prostředí uScope lze přímo testovat funkčnost I2C součástek v laděné aplikaci nebo jejich simulaci v prostředí Designer.
Testování součástek se provádí pomocí I2C terminálu, který je součástí uScope ( menu View ).
Designer podporuje různé typy I2C součástek, např. sériové EEPROM, RTC, apod.

Příklad zapojení a okno I2C terminálu :
 
Z prostředí uScope lze také přímo testovat funkčnost SPI součástek v aplikaci navržené v prostředí Designer.
Designer podporuje různé typy SPI součástek, např. sériové EEPROM, RTC, apod.
   
Součástí prostředí je vlastní assembler ASM-52. Tento assembler akceptuje Intel MCS-51 kompatibilní zdrojové soubory a vytváří cílový kód ve formátu Intel-HEX vhodný pro programování nebo download. Též produkuje absolutní OMF kód obsahující všechny důležité informace potřebné pro ladění na úrovni zdrojového textu.
Ke každému typu souboru lze snadno nastavit vlastní překladač C a ASM - viz ZDE.
Většinu podřízených oken lze zakotvit několika způsoby do hlavního okna prostředí a vytvořit si tak plochu dle vlastních představ. Takto uspořádaná okna se uloží v rámci projektu a při jeho dalším otevření budou zachována. Každý projekt může mít vlastní uspořádání oken.
Prostředí uScope si pamatuje projekt a soubory, které byly otevřeny před minulým uzavřením uScope a při jeho dalším spuštění otevře tytéž soubory.
Mezi jednotlivými okny funguje intuitivní přesun objektů Drag and Drop - "Táhni a pusť". Např. uchopím myší proměnnou ve zdrojové textu a "odvezu" ji do oken Watches, uchopím myší název souboru v Project Browseru a "odvezu" ho do okna s otevřeným editorem - soubor se zároveň otevře. Tato funkce funguje i mezi okny prostředí uScope a ostatními okny Windows. Např. uchopím myší v průzkumníku ( nebo jinde ) soubor s výkresem a "odvezu" ho do Project Browseru/Brochures v okně uScope. Tím se soubor s výkresem stal součástí projektu a bude vždy k dispozici bez dalšího vyhledávání.
V tomto okně lze provést výpočet hodnot potřebných pro programování časových prodlev. Lze vypočíst hodnoty pro interval v rozmezí 10us..1s. Kalkulátor spočítá hodnoty pro tři různé způsoby generování prodlev dle vybrané frekvence krystalového oscilátoru a rychlosti procesorového jádra ( počet procesorových cyklů na jednu instrukci ).
V tomto okně lze provést výpočet baudových rychlostí pro základní typy procesorů. Zvolí se rychlost přenosu a frekvence, event. SMOD a X2 Mode, a kalkulátor provede výpočet baudové rychlosti v hexadecimílním a dekadickém tvaru a výpočet procenta chyby.
Umožňuje zvolit a spustit libovolný externí program v novém okně. V dialogovém okně Execute se do vstupního boxu zadá název spustitelného programu nebo se vybere ze seznamu, popř. nalistuje klepnutím na tlačítko Procházet. Prostředí uScope odpojí komunikační rozhraní, spustí externí aplikaci a čeká na její ukončení. Po skončení aplikace se komunikační rozhraní opět aktivuje. Pamatujte, že když je externí aplikace spuštěna, prostředí uScope nekomunikuje se "svou" aplikací.
Ve verzi Professional lze do cílového HEX kódu vložit také kontrolní sumu nebo CRC.

Velikost výsledné sumy je buď byte (8 bit) nebo word (16 bit). Pokud je suma typu word, jsou do HEX souboru zapsány 2 byte v pořadí, které je závislé na nastavení „Integer formát“ v menu Tools | Preferences na záložce “Formát proměnných” s výjimkou sum typu CRC, kde se ukládá vždy nižší byte první. Poznamenejme, že suma se vždy interně vyčísluje v témže bitovém rozsahu, jako je rozsah výsledné sumy, tj. přenos (CY flag) se vyskytne vždy, když mezivýsledek přeteče maximální hodnotu rozsahu byte nebo word.
Zvolený bitový rozsah se zobrazí zvýrazněním jednoho z tlačítek v poli „Size“.
Počáteční adresa pro výpočet je vždy nejnižší adresa detekovaná v cílovém souboru, typicky „0“. Koncová adresa je nejvyšší detekovaná adresa zaokrouhlená nahoru podle volby v poli “Fill up to boundary”.
Umožňuje odeslat cílový .HEX soubor (formát Intel-HEX) pomocí klienta elektronické pošty, pokud je takový program na počítači nainstalován (Outlook, Mozilla, …). HEX soubor vznikne po akci spojení projektu nebo vytvoření projektu , pokud je v Záložce „HEX konvertor“ dialogového okna „Volby Projektu“ specifikován příslušný program pro vytvoření HEX-souboru.
Umožňuje přečíst obsah paměti programu ( CODE ) a uložit ho jako .HEX soubor na disk.
Umožňuje uložit disassemblovaný kód na disk jako zdrojový text assembleru.
Program uScope podporuje syntaxi preprocesoru jazyka C. Tuto vlastnost oceníte zejména při rozšiřování ( nebo změně ) databáze podporovaných mikrokontrolérů ( viz Výběr typu procesoru ). Prostředí uScope bez problémů importuje hlavičkové soubory (.H) jazyka „C“, pokud odpovídají ANSI definici jazyka. Pomocí direktiv #define, #ifdef atd. můžete jednoduše přizpůsobit definiční soubory potřebám laděné aplikace.
 

Poslední aktualizace: 11.03.2008
Valid HTML  Valid CSS
©Promis 2005
České stránky/Czech pages
Anglické stránky/English pages
      Hlavní stránka       Downloads       Dále nabízíme       Kontakty       E-mail
 
Vývojové prostředí pro MCS 8051 a PIC
Micro Scope
Vlastnosti
Porovnání verzí
Podporované čipy
Help
Ceník
Simulátor
Designer
Vývojový kit a desky
Simulátory LCD
Další vývojový SW
FAQ
Naši zákazníci