Embedded-Entwicklung: Qt zielt auf Mikrocontroller

Mit Qt for MCUs können Entwickler Anwendungen für Mikrocontroller auf ARM-Basis mit einem angeschlossenen Display erstellen.

In Pocket speichern vorlesen Druckansicht 25 Kommentare lesen
Embedded-Entwicklung: Qt zielt auf Mikrocontroller
Lesezeit: 3 Min.
Von
  • Rainald Menge-Sonnentag

Die Qt Company hat mit Qt for MCUs ein Toolkit veröffentlicht, das speziell auf die Softwareentwicklung für Mikrocontroller ausgelegt ist. Konkret soll das Werkzeug bei der Umsetzung von Anwendungen für Kleinstcomputer mit angeschlossenem Display helfen, die Mikrocontroller mit einen ARM-Cortex-M-Kern haben. Qt for MCUs bringt eine speziell angepasste Laufzeitumgebung für die Embedded-Geräte mit, und Entwickler sollen mit dem Toolkit Anwendungen erstellen, die wohl mit dem Bedienkomfort von Smartphone-Apps mithalten können.

Das Toolkit nutzt Qt Quick zum Erstellen von Nutzerschnittstellen mit QML (Qt Meta-object Language). Das Qt-Quick-Modul besitzt eine C++-API, um QML-Anwendungen mit C++-Code zu erweitern. Qt for MCUs enthält eine Reihe von Qt Quick Controls, also vorgefertigte Steuerelemente, die das Erstellen von Nutzerschnittstellen vereinfachen sollen.

Qt setzt auf die Model-View-Architektur, die im Wesentlichen das Architekturmuster Model-View-Controller (MVC) vereinfacht, indem es die Präsentation und Steuerung kombiniert, also das V für View und C für Controller im Pattern. Auf die Weise können Entwickler in C beziehungsweise C++ verfassten Sourcecode für das Backend integrieren, um Anwendungen auf Mikrocontroller zu portieren.

Als Entwicklungswerkzeuge kommen Qt Design Studio und Qt Creator zum Einsatz. Das Toolkit ist darauf ausgelegt, dass Entwickler ihre bisherigen Arbeitsabläufe beibehalten können. Hardwareseitig kann Qt for MCUs eine Reihe von 2D-Grafikbeschleunigern nutzen, darunter Chrom-ART auf der STM32- und PxP auf der NXP-MX-RT-Serie.

Das nun veröffentlichte Toolkit geht auf ein Forschungsprojekt zurück, das die Qt Company im Mai 2018 erstmals beschrieben hatte. Das Team hat Qt für den Embedded-Einsatz demnach auf das Open-Source-Echtzeitbetriebssystem RTEMS (Real-Time Operating System for Multiprocessor Systems) portiert, da Qt ein POSIX-kompatibles Betriebssystem als Basis benötigt.

Hinsichtlich der Hardware galt es, eine große Lücke zu schließen jenseits der aktuellen Mindestvoraussetzung für Qt mit 256 MByte RAM und einer 500-MHz-CPU. Mikrocontroller bieten deutlich schwächere Ressourcen. Das Team spricht davon, dass man von "einer 12-MHz-CPU und 128 Bytes RAM träumen könnte", was freilich für eine Anwendung mit grafischer Benutzerschnittstelle eine Illusion ist. Die ersten Demos liefen jedoch auf Geräten mit RAM zwischen 3,4 MByte und 10 MByte.

Erste Gehversuche des Forschungsprojekts auf einer STM32F7 MCU

(Bild: Qt)

Weitere Details zur Veröffentlichung von Qt for MCU lassen sich dem Qt-Blog entnehmen. Die Qt Company bietet ein Evaluationspaket auf der Seite zum Toolkit an. Grundsätzlich ist der Embedded-Bereich kein Neuland für die Qt Company, die unter anderem mit einer eigenen Automotive-Suite aufwartet und mit Qt for Automation den Bereich IoT abdeckt.

[Update 22.8. 15:45 Uhr]: Die ursprünglich ungünstige Formulierung zu den Mindestanforderungen wurde geändert. (rme)