Neben der Möglichkeit, das Verhalten der GUI auf dem PC zu simulieren, bietet AppWizard auch einen »Play Mode«, der eine schnelle Überprüfung des GUI-Verhaltens erlaubt, ohne dass Code kompiliert werden muss.
Der Unterschied zwischen dem Play Mode und dem Simulationsprojekt besteht darin, dass benutzerdefinierter Code im AppWizard Play Mode nicht kompiliert und daher auch nicht ausgeführt wird. Die MS-Visual-Studio-Simulation hingegen führt auch User-Code aus.
Der einer GUI zugeordnete Code ist nur ein Teil einer vollständigen Anwendung. Um den vom AppWizard generierten GUI-Code in die vollständige Anwendung einzubinden, stellt AppWizard eine benutzerfreundliche API bereit, die vom User-Code zur Interaktion mit der GUI verwendet werden kann. Obwohl AppWizard ein sehr leistungsfähiges Tool ist, deckt es (noch) nicht alle der umfangreichen Funktionen von emWin ab. Daher kann der User-Code weiterhin reguläre emWin-API-Aufrufe verwenden, um die erforderliche GUI-Funktion zu ergänzen, die noch nicht von AppWizard abgedeckt wird. Dadurch ist es möglich, GUIs zu erstellen, die teilweise von AppWizard-generiertem Code und teilweise von User-Code gesteuert werden (Bild 9).
Mit dem ausgeklügelten GUI-Designtool AppWizard und der emWin-Grafikbibliothek von Segger Microcontroller ist es möglich, High-End-Benutzeroberflächen auf (Touch-)Displays zu implementieren, ohne dass solide Kenntnisse in emWin oder der Programmiersprache C erforderlich sind.
Mit der Grafikbibliothek emWin und dem Designtool AppWizard können Entwickler von Embedded-Systemen auf einfache Weise Smartphone-ähnliche Benutzeroberflächen erstellen. Die hier vorgestellte Backofenanwendung ist nur ein Beispiel – den Anwendungen für emWin und AppWizard sind nur durch die Phantasie des GUI-Designers begrenzt.
Das GUI-Designtool AppWizard von Segger Microcontroller wurde 2020 von der Design&Elektronik in der Kategorie »Development Software« mit der Auszeichnung »Innovator des Jahres« prämiert.
Literatur
[1] FFmpeg – A complete, cross-platform solution to record, convert and stream audio and video. Fabrice Bellard, Website, www.ffmpeg.org.
[2] Schlichtmeier, T.: With »emWin« library – User interaction like on a smartphone. elektroniknet.de, 3. Februar 2022, www.elektroniknet.de/international/user-interaction-like-on-a-smartphone.193435.html.
[3] emWin – Graphic Library with Graphic User Interface. Segger Microcontroller, User Guide & Reference Manual, UM03001, Software Version: 6.26, Revision: 0, 4. Mai 2022, www.segger.com/downloads/emwin/UM03001.
[4] AppWizard – Wizard for creating ready-to-use emWin applications. Segger Microcontroller, User Guide & Reference Manual, UM03003, Software Version: 1.30, Revision: 0, 4. August 2022, www.segger.com/downloads/emwin/UM03003_AppWizard.pdf.
Der Autor
Axel Wolf
stammt aus Pforzheim und studierte Nachrichtentechnik an der Dualen Hochschule Baden-Württemberg (DHBW) in Stuttgart. Er spezialisierte sich auf Mikrocontroller und die damit verbundenen Entwicklungswerkzeuge und war in Firmen wie Infineon Technologies, NXP Semiconductors und Renesas Electronics tätig.
Seit 25 Jahren lebt er in den USA (im Bundesstaat Kalifornien) und arbeitet dort seit 2018 für Segger.
axel.wolf@segger.com