Das ARM TouchDisply ist ein Displaymodul basierend auf einem ARM Cortex M4 mit 100MHz Taktfrequenz. Durch die 100MHz Taktung des Mikrocontrollers und die parallele Anbindung des Displays ist eine schnelle Aktualisierung des Displayinhalts möglich. Das Laden von Bildern und Grafiken geschieht ohne, dass der Bildaufbau sichtbar ist. Damit lassen sich flüssig funktionierende GUIs erstellen.
Die Idee
Für Prototypen auf Lochrasterkarte oder Laboraufbauten auf dem Steckbrett wird nicht selten auch ein Mikrocontroller benötigt. Es ist jedoch mühsam jedes mal die Grundbeschaltung des Mikrocontrollers von Grund auf neue aufzubauen. Zudem ist es häufig von Vorteil, wenn Eingaben gemacht und Daten angezeigt werden können. Bei einfachen Projekten reicht hierfür vielleicht ein Taster und eine LED. Meisten sind die Daten jedoch etwas komplexer und die Eingabemöglichkeiten vielseitiger. Für diese Anwendungsfälle wurde das TouchDisplay Modul entwickelt.
Die Hardware
Eine Hauptanforderung war, dass das TouchDisplay einfach aufgesteckt werden kann und ohne externe Beschaltung funktioniert. Für den Betrieb ist nur eine 5V Spannungsversorgung nötig. Es stehen 26 GPIOs und diverse Schnittstellen zu Verfügung. Die Anschlusspins sind in einem 2.54mm(1/10 Zoll) Raster platziert.
Display und Mikrocontroller
Das Display ist über einen 8-bit breiten Parallelbus mit dem Mikrocontroller verbunden. Der verwendete Mikrocontroller ist ein Atmel SAM4N8B (Summary Datenblatt). Die Hintergrundbeleuchrung lässt sich per PWM dimmen. Beim Display handelt es sich um ein 240*320 Pixel grosses LCD vom Typ KD240IT002 (Datenblatt). Ein grossteil des Datenblatts, unter anderem auch die Pinbelegung, ist in chinesischer Sprache Glücklicherweise funktioniert der Google-Übresetzer für die Art von Anwendung sehr gut. Der in Display verwendete Controller ist ein ILI9341 (Datenblatt).
Der Mikrocontroller stellt 512kbyte an Programmspeicher und 64kbyte an SRAM zur Verfügung. Somit ist auch für grössere Programme genügen Speicher vorhanden. Falls der Speicher doch einmal knapp werden sollte, so gibt es noch den Pinkomplatieblen SAM4N16B mit 1024kbyte Programmspeicher und 80kbyte SRAM.
Der Touch Controller
Für die Auswertung des Touchscreens wird der Touchcontroller AR1011 von Microchip(zum Datenblatt) verwendet. Der Touchcontroller ist per USART mit dem Mikrocontroller verbunden. Dies hat den grossen Vorteil, dass der Mikrocontroller keine Rechenleistung für das Abfragen des Touchscreens benötigt. Änderungen am Touchscreen werden selbständig an den Mikrocontroller gesendet. Im Mikrocontroller kann so ein Interrupt auf eine Eingabe am Touchscreen ausgelöst werden.
Die Spannungsversorgung
Für den Betrieb des ARM TouchDysplay ist eine 5V Spannungsversorgung notwendig. Das System arbeitet jedoch mit 3.3V Pegeln. Auf der Platine sind zwei LDO Spannungsregler verbaut. Einer für das Display und den Touchcontroller und ein zweiter für den Mikrocontroller und die GPIOS. Der ARM-Core selbst wird mit 1.2V betrieben, welche im SAM4N8B intern erzeugt werden.