Grafik-Touchscreen-Modul

Das Grafik-Touchscreen-Modul (GTM) ist entstanden aus der Idee, Mikrocontroller auf möglichst einfache Weise mit einer grafischen Ausgabe zu versehen. Es sollte alles vermieden werden, was die Anbindung grafischer Anzeigen kompliziert macht. Insbesondere sollten die CPU-Kapazität und der Verbrauch an Pins geschont werden.

GTM-2

Das GTM geht daher einen ungewöhnlichen Weg. Es ist einerseits deutlich mehr als eine Grafikkarte, denn es verarbeitet Daten und erzeugt daraus weitgehend autark Oberflächen und Bedienelemente. Damit wird der angeschlossene Mikrocontroller fast vollständig von der grafischen Aufbereitung entlastet und kann sich den eigentlichen Aufgaben widmen. Das GTM nutzt dazu zwei Mikrocontroller für die grafische und die Touch-Datenverarbeitung.

Außerdem wurde eine Kopplung auf serieller Basis gewählt. Damit sind maximal die zwei Pins RX und TX eines Mikrocontrollers (mit serieller Schnittstelle) belegt. Zum anderen ist das GTM damit in der Lage, Daten von jedem Gerät entgegenzunehmen, das über eine  serielle Schnittstelle verfügt. Dies können Mikrocontroller sein, aber auch ein Raspberry Pi und vergleichbare Kleincomputer oder sogar echte, ausgewachsene Computer.

Das GTM ist zudem extrem bastelfreundlich: Alle benutzten Teile sind auch als DIL-Bausteine verfügbar, so dass der haushaltsübliche Lötkolben zum Einsatz kommen kann. Die Hardware besteht aus zwei Atmel-Mikrocontrollern vom Typ ATMega1284P und ATMega328P. Das eingesetzte Display-Panel ist ein günstiges Fertigbauteil, das in vielfältiger Form auf dem Markt angeboten wird.

Das GTM ist in verschiedenen Größen und für unterschiedliche Grafikchips verfügbar:

  • 4,3″ mit 480 x 272 Pixeln mit dem Grafikcontroller SSD1963
  • 5″ und 7″ bei 800 x 480 Pixeln und dem Grafikcontroller SSD1963
  • 2,8″ und 3,5″ bei 320 x 240 Pixeln und dem Grafikcontroller ILI9325

Das GTM bietet dabei eine Vielzahl von einfach zu bedienenden Oberflächen, die in einer Fensterdarstellung mit Rahmen, Titel und Schließknopf gezeichnet werden.

  • Das Terminal erlaubt Textausgaben mit verschiedenen Schriftarten und Farben.
  • Eine Balkengrafik stellt wahlweise einen bis acht Balken dar, deren Höhe in 200 Stufen festgelegt werden kann. Die Farben der Balken können eingestellt werden. Die Balken können sehr schnell aktualisiert werden, so dass beispielsweise auch eine FFT-Frequenzanalyse gebaut werden kann.
  • Ein Messwerte-Modus bietet die Möglichkeit, eigene Messwerte nacheinander auf ein Raster aufzutragen. Die Darstellung wird fortlaufend aktualisiert, so dass beim Erreichen des rechten Bildschirmrands automatisch links fortgesetzt werden kann. Ein graues Hintergrundraster hilft, die Messwerte abzulesen. Eins der Beispielprogramme nutzt dieses Modus, um damit ein einfaches Oszilloskop zu bauen.
  • Ein radialer Messwerte-Modus zeichnet ein Polardiagramm mit einem Mittelpunkt, und die ausgegebenen Werte werden jeweils durch ein x-y-Koordinatenpärchen bestimmt.
  • Frei Zeichnen – In diesem Modus ist der Anwender Herr des Bildschirms. Es kann frei gezeichnet werden. Dazu sind Funktionen zum Zeichnen von Rechtecken, Kreisen, Linien und Punkten vorhanden. Texte können in allen verfügbaren Schriftarten und Typen ausgegeben werden. Auch voll funktionale GUI-Elemente wie Knöpfe, Radio- und Checkboxen können dargestellt werden, so dass komplette grafische Bedienoberflächen auf sehr einfache Weise gebaut werden können.
  • 8fach-LED-Bildschirm – ein Fenster, das acht farbige Kreise horizontal anordnet.  Die “LEDs” können einzeln angesteuert werden und in unterschiedlichen Farben „leuchten“ und beschriftet werden.
  • 3fach-LED-Bildschirm – ein Fenster, das drei farbige Kreise vertikal in Ampelanordnung und -farbe anordnet. Die „LEDs“ können seitlich gesondert beschriftet werden und ein- und ausgeschaltet dargestellt werden.
  •  Siebensegmentanzeige – eine achtstellige Anzeige, die die Siebensegment-Technik nutzt, um die Ziffern großflächig auf dem Bildschirm darzustellen.

GTM-8 GTM-Oszi

IMG_6631 IMG_6634

Darüber hinaus stehen Elemente zum Bau von Bedienoberflächen zur Verfügung, die bildfüllende Funktionen bieten:

  • Menü – Das Menü bietet eine Fensterdarstellung mit Überschrift und maximal 5 Auswahlelemente. Die Auswahl kann alternativ über Touchscreen oder angeschlossene Tasten erfolgen.
  • Meldungsfenster (Messagebox) – Dieses Fenster zeigt eine Dialogbox, die ein Fenster darstellt mit Überschrift und mehreren Zeilen. Man kann außerdem festlegen, welche Schaltflächen das Fenster zeigen soll, z.B „OK“ oder „Ja/Nein“.
  • Bildschirmtastatur – davon sind gleich vier Stück vorgesehen. Eine Tastatur bietet die Eingabe von Zahlen und Text in Groß- und Kleinschreibung. Eine zweite erlaubt nur die Eingabe von Zahlen (wahlweise mit Vorzeichenwechsel und Komma). Die dritte stellt das Layout eines Taschenrechners dar – hierfür existiert ein spezielles Softwaremodul, das diesen Taschenrechner als kleines Zusatzwerkzeug in eigenen Anwendungen verfügbar macht. Die vierte Tastatur enthält keinerlei Beschriftungen – hier kann der Anwender selbst definieren, was er auf die Tasten schreiben möchte.
  • Farbpalette – zeichnet in ein Fenster eine Farbauswahl von 216 Farbwerten, die der Anwender nach der Auswahl entweder selbst nutzen oder sie direkt an ein Diagrammfenster übergeben kann.
  • Schieberegler – ein Auswahlelement, in dem ein Regler mit dem Wertebereich 0..199 gezeichnet wird und wahlweise durch die Knöpfe links und rechts, angeschlossene Tasten oder durch Antippen verschoben werden kann.
  • Listbox – ein Auswahlfenster, in dem mehrere Elemente als Liste angeordnet sind. Eins davon kann ausgewählt werden. Die Liste hat Platz für 16 Elemente, mit Knöpfen zum Blättern kann man jeden der Einträge erreichen und auswählen. Ein Rollbalken (Scrollbar) neben der Liste zeigt die Anzahl der vorhandenen Elemente und die momentane Position in der Liste an.
  • Radiobuttons – darunter versteht man sich gegenseitig ausschließende Elemente, die ähnlich wie die Taster eines alten Radios funktionieren: drückt man einen, wird der bisher gedrückte automatisch gelöst. Es kann immer nur ein Knopf gleichzeitig gedrückt werden. Der „gedrückte“ Knopf wird hier durch einen ausgefüllten Kreis symbolisiert, während alle anderen durch Kreisringe gekennzeichnet sind. Bis zu 5 Elemente gleichzeitig sind möglich.
  • Checkboxen – dieses Fenster bietet im Gegensatz zu den Radiobuttons die Möglicheit , mehrere Elemente auszuwählen – oder auch keines. Ausgewählte Elemente werden durch ein angekreuztes Rechteck symbolisiert. Nicht ausgewählte Elemente zeigen nur das Rechteck. Die Auswahl (und auch die Nicht-Auswahl) erfolgt durch Antippen des Rechtecks. Bis zu 5 Elemente sind möglich.

GTM-6 GTM-7

Das GTM-Projekt steht unter Creative Commons-Lizenz CC BY-NC-SA 3.0; Firmware, Schaltungen und die Sourcecodes dürfen unter Nennung der Autoren modifiziert und nicht-kommerziell frei verwendet werden.

Das GTM ist ursprünglich als Teil der Neubauten für Philips- und Kosmos-Experimentierkästen entstanden; eine ausführliche Dokumentation und Historie findet sich im Baukasten-Forum von Thomas Rigert. Das GTM ist aber auch komplett autark betreibbar. Die Tipps und Hinweise im Handbuch sind daher auch für andere Anwendungsfälle gültig.

Funktionsbeschreibung

Downloads

Bestellmöglichkeit: Bitte eMail an frank(AT)brennecke.org

Zurück zum Hauptfenster

3 Antworten zu Grafik-Touchscreen-Modul

  1. Gunther Rink sagt:

    Sehr geehrter Herr Brennecke,
    ich bin am Kauf eines Ihrer „Grafik-Touchscreen-Module“ interessiert! Bitte senden Sie mir nähere Informationen wie z.B. Modul-Varianten, Preis und Bestellabwicklung.
    Vielen Dank!
    Mit freundlichen Grüßen
    Gunther Rink

  2. Erwin Begon sagt:

    Hallo Herr Brennecke,
    bitte lassen Sie mir Informationen zukommen (Bausätze, Fertigmodule)
    Preise und Bestellmöglichkeit.

    Vielen Dank.
    Mit freundlichem Gruß
    Erwin Begon

  3. Bernd Buk sagt:

    Sehr geehrter Herr Brennecke,
    ich bin am Kauf eines Ihrer „Grafik-Touchscreen-Module“ interessiert! Bitte senden Sie mir nähere Informationen wie z.B. Modul-Varianten, Preis und Bestellabwicklung.
    Vielen Dank!
    Mit freundlichen Grüßen
    Bernd Buk

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

*

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.