Struktur der µGL

Die µGL gliedert sich in verschiedene Schichten. Die Zielstellung dieser Mehrebenenarchitektur ist es, die Wartbarkeit, Flexibilität und Portabilität der Bibliothek sicher zu stellen. Die wichtigsten Trennlinien verlaufen zwischen dem HAL (Hardware Abstraction Layer), den Basispaketen für die Grafikprogrammierung und dem Laufzeitsystem für die Grafische Benutzeroberfläche (GUI).

Im UML Werkzeug SiSy findet sich die oben gezeigte Architektur in den folgenden Paketen wieder.

Dabei wird im Paket PecLcdHAL vor allem ein allgemeines Interface für LCDs und Touchsensorik abstrahiert, auf welchen die eigentlichen µGL-Klassen aufsetzen. Die Anbindung der Interfaces an eine konkrete Hardware wird über Pakete mit Gerätetreibern realisiert. In der obigen Darstellung sind es die Treiberpakete für den weit verbreiteten Grafikchip SSD1289 und speziell für den STM32F429i mit integriertem Grafikcontroller.

PecLcdHAL

Geometrics

Ugl-Pakete

UglEvents

UglControls

UglManagement

Anwendung der µGL

Die Arbeitsweise mit den Bibliotheken wird im folgenden Anwendungsfalldiagramm verdeutlicht.

Der Entwickler benötigt eine Entwicklungsumgebung, in diesem Fall SiSy, evtl. einen FontDesigner und ein BitmapTool. Die fertige Firmware wird auf den Controller übertragen und kann dort getestet bzw. autonom verwendet werden.

Nächstes Thema