Fachbuch, 2008
106 Seiten, Note: 1.0
Einleitung
1 Grundlegendes
1.1 Software und Analysetechnik
1.2 Problemstellung
2 Hardware
2.1 OFSP — Open Frame Smart Panel
3 Betriebssoftware
3.1 Embedded-Systems
3.2 Windows CE™
3.3 Ultratronik Linux Distribution
3.4 X-Window Systeme
3.5 Cross-Compiler
4 Nano-X — Die schlanke X-Window Variante
4.1 Gesamtüberblick
4.2 Lizenz und Bedingungen
4.3 Einrichtung des Systems
4.4 Einführung in die Nano-X Programmierbibliothek
4.4.1 Fenster
4.4.2 Graphische Kontexte
4.4.3 Ereignisse
4.4.3.1 Ereignistypen
4.4.3.2 Ereignisverarbeitung
4.4.3.3 Ereignisorientierte Anwendungsprogrammierung
4.5 Der Nano-X Server
4.6 Nano-X API und Microwindows API
4.6.1 Kernkonzepte im Vergleich
4.6.2 Nano-X API oder Microwindows API — Ein Fazit
4.7 State Saver — Visueller Zustandsspeicher
4.7.1 Verwendung
4.7.2 Funktionsweise
4.7.3 Kompilierungshinweise
4.8 dkbd — Eine virtuelle Tastatur für das OFSP
4.8.1 Anwendungskonzeption
4.8.2 Programmiertechnische Umsetzung
4.8.2.1 Abstrakt
4.8.2.2 Grundlegender Code
4.8.2.3 Ereignisverarbeitender Code
4.9 Die TinyWidgets Bibliothek
4.9.0.4 Grundlegendes
4.9.0.5 Grundlegende Verwendung
5 Zusammenfassung
6 Ausblick
A Anhang I
A.1 Linux Serialschnittstellenkommunikation
A.1.1 Grundlegendes
A.1.2 Überprüfung der Schnittstellenfunktionalität
A.1.3 Programmierung
B Anhang II
B.1 Nano-X Kurzreferenz
B.1.1 Fenstereigenschaften
B.1.2 Ereignisstrukturen und Ereignistypen
B.1.3 Nano-X Zeichenroutinen
C Anhang III
C.1 Quelltext der virtuellen Tastatur „dkbd“
C.1.0.1 Quelltext-Datei dkbd.h
C.1.0.2 Quelltext-Datei dkbd.c
C.1.0.3 Quelltext-Datei stuff.c
C.2 Der Zustandsspeichers „state saver“
C.2.1 Hinweise zur Verwendung
C.2.1.1 Package description
C.2.1.2 Package use
C.2.2 Quelltext einer Beispielanwendung
C.2.3 Quelltext des Zustandsspeichers
C.3 Quelltext eines einfachen Nano-X Ladebalkens
C.3.1 Header-Datei sbar.h
C.3.2 Quelltext-Datei sbar.c
C.4 Quelltext der Tiny-Widgets und Serialport-Testanwendung
Die vorliegende Arbeit setzt sich zum Ziel, eine fundierte Wissensbasis und einen Einstiegspunkt für die Entwicklung von Embedded-Linux-Anwendungen für das Open Frame Smart Panel (OFSP) von Ultratronik zu schaffen. Dabei liegt der Fokus auf der Überwindung von Wissenslücken bei der Nutzung der Nano-X-Bibliothek für graphische Applikationen in analytischen Geräten.
4.4 Einführung in die Nano-X Programmierbibliothek
Da die Nano-X API in der Programmiersprache C implementiert wurde, handelt es sich bei dieser auch um die Sprache, in welcher Nano-X Anwendungen generell geschrieben werden, so auch in dieser Arbeit.
Mit dem Ziel, einen ersten Überblick über das Arbeiten mit der Nano-X API zu bekommen, wird hier der Quelltext einer einfachen Nano-X Anwendung angebracht, welcher allerdings bereits viele wichtige Kernpunkte der Programmierung beinhaltet.
1 #include <stdio.h>
2 /* Nano-X Farben sollen verwendet werden */
3 #define MWINCLUDECOLORS
4 /* Inkludiere Nano-X Header-Dateien */
5 #include <microwin/nano-X.h>
6 #include <microwin/nxcolors.h>
7
8 int main(int arc, char **argv)
9 {
10 /* Deklaration eines Fensters (Window) */
11 GR_WINDOW_ID fenster;
12 /* Deklaration eines c */
13 GR_GC_ID gk;
14 /* Deklaration eines Ereignisses (Event) */
15 GR_EVENT ereignis;
16
17 /* Stelle Verbindung zum Nano-X Server her */
18 GrOpen();
Einleitung: Beschreibt die Herausforderungen bei der Wahl von Software-Entwicklungswerkzeugen für Industrieunternehmen und motiviert die Erarbeitung einer soliden Basis für Nano-X-Anwendungen auf dem OFSP.
1 Grundlegendes: Analysiert den Bedarf an effizienten, nicht-proprietären Softwarelösungen für Mess- und Analysegeräte in produktorientierten Unternehmen.
2 Hardware: Stellt das "Open Frame Smart Panel" (OFSP) als vollwertiges Embedded-System mit Touchscreen vor, das sich für MMI-Aufgaben eignet.
3 Betriebssoftware: Unterscheidet zwischen proprietärem Windows CE und der Linux-basierten Alternative, wobei die Bedeutung von Cross-Compilern für MIPS-Architekturen hervorgehoben wird.
4 Nano-X — Die schlanke X-Window Variante: Erläutert das Mehr-Schichten-Prinzip von Nano-X und führt detailliert in die API, Ereignisverarbeitung sowie praktische Erweiterungen wie den "State Saver" und die virtuelle Tastatur "dkbd" ein.
5 Zusammenfassung: Fasst die Kernaussagen zur Implementierung von Nano-X und der Hardware-Kommunikation in Embedded-Szenarien zusammen.
6 Ausblick: Reflektiert über den Nutzen der Arbeit für zukünftige Entwickler und den Beitrag zur Förderung von OpenSource im industriellen Umfeld.
Embedded Linux, Nano-X, OFSP, Ultratronik, Microwindows, graphische Benutzeroberfläche, C-Programmierung, serielle Schnittstelle, Cross-Compiler, Window Manager, Softwareentwicklung, OpenSource, GUI, Event-Handling, Zustandsverwaltung
Die Arbeit befasst sich mit der Entwicklung von graphischen Anwendungen für das Embedded-Gerät OFSP von Ultratronik unter Verwendung des Nano-X Window-Systems.
Im Zentrum stehen die Programmierung unter Linux für Embedded-Systeme, der Einsatz von Nano-X als GUI-Bibliothek, die Ansteuerung der seriellen Schnittstelle und die Entwicklung spezifischer Hilfsmittel wie virtueller Tastaturen.
Das Hauptziel ist es, eine strukturierte Wissensbasis zu schaffen und praktische Vorarbeiten für Entwickler zu leisten, die für die Nano-X-Programmierung bisher nur wenig Dokumentation vorfinden.
Es handelt sich um eine technologische Untersuchung und Implementierungsarbeit, bei der bestehende Konzepte evaluiert, Beispielapplikationen entwickelt und die Resultate dokumentiert werden.
Der Hauptteil gliedert sich in eine Hardware-Vorstellung, den Vergleich von Betriebssystem-Ansätzen (Windows CE vs. Linux), die theoretische und praktische Einführung in Nano-X sowie die Dokumentation von Erweiterungen wie "State Saver" und "dkbd".
Die Arbeit wird primär durch Begriffe wie Embedded Linux, Nano-X, OFSP, graphische Benutzerschnittstellen und C-Programmierung geprägt.
Die Erweiterung speichert temporär den visuellen Zustand eines Fensters, um bei Überlappungen oder Sichtbarkeitsereignissen ein effizientes Wiederherstellen des Inhalts ohne aufwendiges, CPU-lastiges Neuzeichnen zu ermöglichen.
Nano-X ist näher an der Standard-Xlib orientiert, bietet eine bessere Dokumentation, Erweiterbarkeit durch TinyWidgets und ist unter Linux-Host-Systemen für Testzwecke besser integrierbar.
Der GRIN Verlag hat sich seit 1998 auf die Veröffentlichung akademischer eBooks und Bücher spezialisiert. Der GRIN Verlag steht damit als erstes Unternehmen für User Generated Quality Content. Die Verlagsseiten GRIN.com, Hausarbeiten.de und Diplomarbeiten24 bieten für Hochschullehrer, Absolventen und Studenten die ideale Plattform, wissenschaftliche Texte wie Hausarbeiten, Referate, Bachelorarbeiten, Masterarbeiten, Diplomarbeiten, Dissertationen und wissenschaftliche Aufsätze einem breiten Publikum zu präsentieren.
Kostenfreie Veröffentlichung: Hausarbeit, Bachelorarbeit, Diplomarbeit, Dissertation, Masterarbeit, Interpretation oder Referat jetzt veröffentlichen!

