Přehled rozhraní AZURE RTOS GUIX a Azure RTOS GUIX Studio
Grafické uživatelské rozhraní Azure GUIX Embedded je pokročilé řešení grafického uživatelského rozhraní na průmyslové úrovni od Microsoftu navržené speciálně pro hluboko vložené aplikace a aplikace IoT v reálném čase. Microsoft také poskytuje plnohodnotný nástroj pro návrh desktopového prostředí WYSIWYG s názvem Azure RTOS GUIX Studio, který vývojářům umožňuje navrhovat grafické uživatelské rozhraní na ploše Azure RTOS generovat kód grafického uživatelského rozhraní Azure RTOS GUIX, který je pak možné exportovat do cíle. Azure RTOS GUIX je plně integrovaný s Azure RTOS ThreadX RTOS a je k dispozici pro mnoho stejných procesorů podporovaných Azure RTOS ThreadX. Díky této kombinaci s extrémně malými nároky na stopu, rychlým spouštěním a vynikajícím snadným použitím je Azure RTOS GUIX ideální volbou pro nejnáročnější vložené aplikace IoT, které vyžadují uživatelské rozhraní.
Azure RTOS GUIX API
Výkonná rozhraní API
- Plná podpora přímého kreslení plátna v případě potřeby
- Jednoduchá interakce s Azure RTOS generovaným kódem v nástroji GUIX Studio
- Rozhraní API pro čáru, obdélník, mnohoúhelník atd.
- Rozhraní API pro kruh, oblouk, výseč, chord, tři tečky atd.
- Rozhraní API pro kreslení a umístění textu
- Ochrana před aliasy, výplně textury a plná výplně
- Rozhraní API pro vytváření a úpravy obrazovek a widgetů
Azure RTOS vygenerované soubory v nástroji GUIX Studio
- Automaticky generované zdrojové soubory ANSI C
- Vymešuje aplikační software z podrobností o rozložení.
- Zahrnuje písma a obrázky vyžadované návrhem uživatelského rozhraní.
- Vygenerované soubory zkompilované s kódem aplikace
- Rozložení obrazovky je možné aktualizovat, aniž by to mělo vliv na logiku aplikace.
- ID prostředků vytvářejí nezávislost jazyka a motivu
- Uživatelem zadané vlastní funkce pro kreslení a zpracování událostí
Knihovna widgetů
- Předdefinované, ale přizpůsobitelné sady běžných prvků rozhraní
- Extrémně malé, kompaktní a efektivní
- Knihovna obsahuje tlačítko, měřidlo, seznam, okno, posouvání, posuvník, indikátor průběhu, výzvu a mnoho dalších.
- Plně přizpůsobitelné kreslení a vzhled
- Plně přizpůsobitelné operace a zpracování událostí
- Se softwarem aplikace jsou propojené jenom použité widgety.
Matematika a nástroje
- Funkce pro sin, cos, arcsin, arccos, tangens, square root
- Funkce pro manipulaci s oblastmi obrazovky
- Konfigurace a spuštění systému
- Definice fondu paměti (volitelné)
- Správa časovače
- Správa animace
- Údržba nečteného seznamu
Zpracování obrázků
- Funkce pro runtime dekódování obrázků jpeg a png
- Použití rozdělení a převodu barevného prostoru
- Obměně obrázků
- Škálování obrázků
- Prolnutí obrázků
Zpracování událostí
- Automaticky pozastaví Azure RTOS guix, když je nečinné.
- Programovací model řízený událostmi oblíbený v návrhu uživatelského rozhraní
- Vykreslí vstupní ovladače z Azure RTOS kreslení GUIX.
- Funkce pro odesílání a příjem událostí
- Předdefinované typy událostí pro všechny Azure RTOS widgety GUIX
- Podporované vlastní události definované uživatelem
Zpracování plátna
- Oříznutí a údržba pořadí Z
- Knihovna widgetů se zachytá z podrobností o hardwaru
- Aplikace se odsoudí od hardwarových podrobností.
- Automatická aktualizace nečtených oblastí na pozadí
- Více plátna s podporou vrstvení a kombinování
- Může být vyvoláno přímo aplikačním softwarem.
Ovladače vstupních zařízení
- Podpora specifická pro hardware, Azure RTOS grafického uživatelského rozhraní (GUIX) a aplikace odvozené od hardwarových podrobností
- Podporaive Touch, Cap Touch a klávesnice
- Vstupní události předané do Azure RTOS událostí GUIX
Ovladače zobrazení
- Podpora specifická pro hardware
- Obecné ovladače poskytované pro všechny barevné hloubky a formáty
- Přizpůsobené pro využití dostupných grafických akcelerátorů
Cílový hardware
- Téměř jakýkoli hardware s grafickým výstupem je kompatibilní s grafickým rozhraním GUIX.
- Podporuje se několik fyzických zobrazení.
- Minimální požadavky na paměť RAM a Flash
Vytvoření elegantních uživatelských rozhraní
Azure RTOS GUIX a Azure RTOS GUIX Studio poskytují všechny funkce potřebné k vytvoření jedinečně elegantních uživatelských rozhraní. Standardní balíček Azure RTOS GUIX obsahuje různá ukázková uživatelská rozhraní, včetně referenčních informací ke zdravotním zařízením, referenčních informací k inteligentním hodinkách, referenčních informací k domácí automatizaci, referenčních informací k průmyslovému řízení, referenčních informací o automobilů a různých příkladů spritů a animací. Klikněte na referenční příklady uvedené níže.
Domácí automatizace
Lékařské
Příjemce
White Goods
Automobilový průmysl
Průmyslové
Každý Azure RTOS GUIX má odpovídající projekt Azure RTOS GUIX Studio, který definuje všechny grafické prvky referenčního návrhu. Změna návrhu odkazu je snadná. Jednoduše otevřete odpovídající projekt Azure RTOS GUIX, proveďte požadované změny, uložte projekt a pak vyberte Project.
Vygenerování všech výstupních souborů pro vygenerování kódu jazyka C Azure RTOS GUIX. Pak jednoduše znovu sestavte cílovou aplikaci a spusťte příkaz , abyste pozoroval upravený návrh odkazu.
Využití paměti GUIX
Azure RTOS GUIX má mimořádně malé minimální nároky na paměť FLASH o 13,2 kB a 4 kB paměti RAM pro základní podporu, a to bez paměti potřebné pro plátno.
Pro displej s interní technologií GRAM a technologií samoobslužné aktualizace se nevyžaduje paměť plátna. Pro zlepšení výkonu kreslení nebo pro konfiguraci zobrazení, která nevyužívuje GRAM místní na displeji, je však oblast paměti plátna definována aplikací.
Požadavky na paměť plátna jsou funkcí velikosti plátna i hloubky barev a jsou definovány vzorcem:
Ram plátna (bajty) = (x * y * (bpp/8))
Kde x a y jsou rozměry plátna (zobrazení).
Většina aplikací také využívá grafické prostředky, které nejsou zahrnuté v požadavcích na Azure RTOS úložiště knihovny GUIX. Mezi tyto prostředky patří písma, grafické ikony (pixelmaps) a statické řetězce. Tato data můžou být uložená v části const Memory (tj. FLASH).
Velikost této paměťové oblasti je závislá na mnoha faktorech, včetně počtu a velikosti použitých jedinečných písem, počtu použitých grafických ikon, formátu výstupních barev a na tom, jestli každý prostředek používá komprimovaná data, protože Azure RTO GUIX podporuje kompresi RLE jak pro data písma, tak i pro Pixelmap. Požadavky na úložiště pro jednotlivé prostředky se zobrazují v rámci aplikace Azure RTO GUIX Studio, která umožňuje uživateli sledovat a monitorovat množství paměti Flash, kterou budou prostředky aplikace spotřebovat.
Podobně jako u Azure RTO ThreadX se velikost Azure RTO GUIX automaticky škáluje na základě služeb, které aplikace skutečně používá. To prakticky eliminuje potřebu složitých parametrů konfigurace a sestavení, což vývojářům usnadňuje.
Jednoduché a snadno použitelné
Azure RTO GUIX je velmi jednoduché a Azure RTO GUIX Studio je ještě jednodušší, protože vývojářům umožňuje vizuálně navrhovat na ploše a generovat kód C, který běží na skutečném cíli. Aplikace pak můžou přidat vlastní zpracování událostí a funkce kreslení, aby bylo možné dokončit své grafické rozhraní.
Použití rozhraní API Azure RTO GUIX je jednoduché. Rozhraní Azure RTO GUIX API je intuitivní i vysoce funkční. Názvy rozhraní API jsou tvořená skutečnými slovy, nikoli "abecední polévka" a/nebo s velmi zkrácenými názvy, které jsou tak běžné v jiných produktech souborů systému souborů. Všechna rozhraní API služby Azure RTO GUIX mají přední gx_ a dodržují konvenci pojmenování příkazů na základě substantivum. Kromě toho existuje funkční konzistence v celém rozhraní API. Například všechna rozhraní API, která inicializují řídicí blok pomůcky, jsou pojmenovány < widget_type > _create a parametry funkce vytvořit pro každý typ widgetu jsou vždy definovány ve stejném pořadí.
Komplexní sada integrovaných widgetů
- Azure RTO GUIX poskytuje bohatou sadu integrovaných widgetů, včetně:
- Nabídka pro přiznávání
- Tlačítko
- Zaškrtávací políčko
- Kruhové měřidlo
- Rozevírací seznam
- Vodorovný seznam
- Okno vodorovného posuvníku
- Ikona
- Tlačítko ikony
- Spojnicový graf
- Nabídka
- Tlačítko víceřádkového textu
- Vstupní víceřádkový text
- Víceřádkové víceřádkové textové zobrazení
- Číselná výzva Pixelmap
- Číselná výzva
- Číselná rolovací kolečko
- Tlačítko Pixelmap
- Pixelmap – příkazový řádek
- Posuvník Pixelmap
- Pixelmap Sprite
- Indikátor průběhu
- Výzva
- Paprskový indikátor průběhu
- Přepínač
- Posunutí kolečka
- Textové zadání s jedním řádkem
- Posuvník
- Rolovací kolo řetězce
- Tlačítko text
- Stromové zobrazení
- Svislý seznam
- Svislý posuvník
Je snadné, aby aplikace vytvářela i vlastní zákaznická widgety.
Kompletní rozhraní API pro vykreslování na nižší úrovni
Azure RTO GUIX poskytuje robustní rozhraní API pro vykreslování plátna, což aplikaci umožňuje vykreslovat složité grafické tvary.
Všechny funkce podporují vyhlazení pro vysoce barevnou hloubku a všechny tvary můžou být vyplněné, včetně výplní Solid a Pixelmap Pattern. Všechny primitivní prvky kreslení podporují štětec alfa při spuštění s 16 BPP a vyšší barevnou hloubkou. Mezi funkce kreslení patří:
- Oblouk – vykreslování
- Vykreslování kruhu
- Kreslení čar
- Vykreslování výsečového grafu
- Pixelmap Blend
- Dlaždice Pixelmap
- Kreslení mnohoúhelníků
- Vykreslování textu
- CTR vykreslování
- Kreslení elipsy
- Vykreslování v pixelech
- Pixelmap vykreslování
- Pixelmap otočit
- Kreslení obdélníku
- Blend textu
Výchozí volná písma a snadné přidávání dalších
Azure RTO GUIX poskytuje bezplatnou sadu písem TrueType. Vývojáři mohou podle potřeby přidávat další písma TrueType.
Formát písma Azure RTO GUIX podporuje 8bpp vyhlazení, barevnou hloubkou 4 anti-aliasing a 1bpp Monochromatická písma. Pro většinu aplikací s omezeným využitím prostředků Azure RTO GUIX předem vykreslí písma TrueType do komprimovaného formátu rastrového obrázku pomocí našeho desktopového nástroje GUIX Studio.
Implementace vlastního dekodéru JPG a PNG
Implementace dekodéru souborů JPG a PNG pro implementaci vlastního dekodéru JPG a PNG. Tato implementace podporuje převod prostorů barev, tónování a vytváření běhového prostředí pro formáty Pixelmap s podporou Azure RTO GUIX.
Rozsáhlá podpora displeje a dotykové obrazovky
Azure RTO GUIX poskytuje obecné ovladače zobrazení pro skoro všechny barevné formáty, včetně 1bpp monochromatické, 8 BPP palety, 8 BPP 3:3:2 formátu,
16 BPP 565 RGB Format, 16 BPP 4:4:4:4 Format, 32 bpp x:r: g:b Format a 32 bpp a:r: g:b Format. Kromě toho je Azure RTO GUIX integrovaný v mnoha nejoblíbenějších řadičích LCD a hardwarových akcelerátorech (ST ChromeArt, Reneseas synergie atd.).
Azure RTO GUIX plně podporuje dotykovou obrazovku (včetně podpory gest), pero a vstupní zařízení pro virtuální klávesnice.
Nástroj Azure RTO GUIX Studio Desktop WYSIWYG
Azure RTO GUIX Studio poskytuje kompletní prostředí pro návrh obrazovky s WYSIWYG, které umožňuje uživateli přetahovat grafické prvky, které slouží k vytvoření obrazovky grafického uživatelského rozhraní. Azure RTO GUIX Studio automaticky generuje kód v jazyce C kompatibilní s knihovnou Azure RTO GUIX, která je připravena k kompilování a spuštění v cíli. Vývojáři můžou vydávat předem vykreslená písma pro použití v rámci aplikace pomocí integrovaného nástroje pro generování písem ve službě Azure RTO GUIX Studio. Písma je možné vygenerovat černobílé formáty nebo formáty s vyhlazením a jsou optimalizované tak, aby ušetřily místo na cíli. Písma můžou obsahovat libovolné znakové sady, včetně znaků Unicode pro vícejazyčné aplikace.
Azure RTO GUIX Studio usnadňuje import grafiky ze souborů PNG nebo JPG s převodem na komprimovanou službu Azure RTO GUIX Pixelmaps pro použití v cílovém systému. Řada typů widgetů Azure RTO GUIX je navržená tak, aby zahrnovala uživatelské grafiky pro vlastní vzhled a chování. Kromě toho Azure RTO GUIX Studio umožňuje přizpůsobení výchozích barev a stylů kreslení používaných widgety Azure RTO GUIX, které vývojářům umožňují ladit vzhled Azure RTO GUIX velmi snadno. Generování a údržba řetězců aplikací je další integrované zařízení Azure RTO GUIX Studio. To umožňuje vývojářům navrhnout aplikaci v jednom jazyce pro vývoj a rychle a snadno přidat podporu dalších jazyků po vydání produktu. Kompletní aplikaci Azure RTO GUIX je možné spustit na počítači PC v prostředí Azure RTO GUIX studia, což umožňuje rychlou a jednoduchou generaci a ukázku konceptů grafického uživatelského rozhraní, testování toků obrazovky a sledování přechodů a animací na obrazovce. Po dokončení se návrh dá exportovat jako cílové datové struktury C připravené pro sestavení, které se budou kompilovat a propojit s knihovnami Azure RTO GUIX a Azure RTO ThreadX.
Azure RTO GUIX a Azure RTO GUIX Studio podporují více motivů prostředků, což umožňuje aplikaci snadno přecházet v době běhu. Písma, barvy a pixelmaps lze v době běhu měnit pomocí jednoho jednoduchého rozhraní API.
Další informace o nástroji GUIX Studio
Dokončení simulace Win32
Azure RTOS GUIX běží na Windows počítači a používá přesně stejnou knihovnu kreslení, která běží na cílovém panelu. Pomocí Azure RTOS GUIX můžete sestavit a spustit aplikaci s grafickým uživatelským rozhraním na počítači a použít stejný kód aplikace v cíli pro ladění, rychlé vytváření prototypů, ukázku a cílovou operaci WYSIWYG.
Pokročilá technologie
- Azure RTOS technologie GUIX zahrnuje:
- Alfa blending
- Ochrana před aliasy
- Automatické škálování
- Komprese rastrových obrázků
- Prolnutí plátna
- Podpora vlastních widgetů
- Podpora odloženého kreslení
- Podpora rozchádky
- Endian neutral programming
- Podpora hardwarového akcelerátoru
- Podpora více jazyků a kódování UTF-8
- Podpora více zobrazení a plátna
- Optimalizované oříznutí, kreslení a zpracování událostí
- Dekodér JPEG a PNG modulu runtime
- Zořezávání a motivy
- Podporuje 32bitovou barvu true s formáty alfa grafiky.
- Podpora přechodů, skřítků a animací
- Simulace Win32
- Správa oken včetně zobrazení a údržby pořadí Z