ELECTRONIC ASSEMBLY EA QUICKUNITFT05 Instructions

EA uniTFT050-A
Tablet-Feeling für Ihr Equipment
EIGENSCHAFTEN
·
5" 800x480 / 7" IPS 1024x600 / 10,1" IPS 1280x800 mit und ohne Touchpanel
·
·
Analog-Resistiver Touch oder kapazitiver Multitouch (PCAP)
·
Objektorientierter Bildschirmaufbau
·
Objekte zur Laufzeit verändern: Größe, Form, Farbe, Inhalt
·
Objekte animieren, bewegen
·
Vektorgraphiken, verlustfreies Zoomen und Drehen
·
Zeichensätze, vektorisiert ASCII und Unicode
·
7 serielle Interfaces: USB, 2 x RS232, 2 x SPI, 2 x I²C
·
16 digitale frei definierbare I/O eingebaut, auf 125 erweiterbar
·
4 analoge Eingänge
·
Uhrzeit, Batteriegepuffert
·
Mikro SD-Card als Datenspeicher für Bilder, Fonts, Menüs und Log-Files
·
interne Rechenfunktionen und Programmierbarkeit
BESTELLBEZEICHNUNG
5" Intelligentes TFT 800 x 480 Pixel, Außenmaß: 124 x 78,5 mm EA uniTFT050-A wie vor, mit kapazitivem Multitouch (Außenmaß: 136 x 96 mm) EA uniTFT050-ATC wie vor, mit analog resistiven Touch (Außenmaß: 124 x 78,5 mm) EA uniTFT050-ATP 7" Intelligentes TFT 1024 x 600 Pixel, IPS, Außenmaß: 169 x 105 mm
wie vor, mit kapazitivem Multitouch (Außenmaß: 190 x 125 mm) 10,1" Intelligentes TFT 1280 x 800 Pixel, IPS, Außenmaß: 235 x 161 mm EA uniTFT101-A wie vor, mit kapazitivem Multitouch (Außenmaß: 260 x 185 mm) EA uniTFT101-ATC
EA uniTFT070-A EA uniTFT070-ATC
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
1 / 172
EA uniTFT050-A
Zubehör
Quick-Start Set: Starterboard (Lautsprecher, Reset, Interface, Netzteil) mit kapazitivem 5"-Displaymodul EA uniTFT050-ATC
mit kapazitivem 7"-Displaymodul EA uniTFT070-ATC mit kapazitivem 10.1"-Displaymodul EA uniTFT101-ATC EA QUICKuniTFT101C MicroMatch THT, 26 poliger Gegenstecker zum Einlöten (2 Stück erforderlich) EA B2B127M-26T MicroMatch Flachband, 26 poliger Gegenstecker für Flachbandkabel (2 Stück erf.) EA B2B127M-26Q Kabel (25 cm) mit gequetschtem Gegenstecker (2 Stück erforderlich) EA KM-126
EA QUICKuniTFT050C EA QUICKuniTFT070C
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
2 / 172
EA uniTFT050-A
Inhaltsverzeichnis
Allgemeines .................................................................................................................................................... 5
Software ......................................................................................................................................................... 6
Objekte ..................................................................................................................................................... 7
Styles ....................................................................................................................................................... 9
Koordinatensystem und Winkel .................................................................................................................. 10
Mehrsprachigkeit - Stringfiles ..................................................................................................................... 11
Bootmenü ................................................................................................................................................ 12
Firmwareupdate ........................................................................................................................................ 13
Mass Storage Mode .................................................................................................................................. 15
Hardware ...................................................................................................................................................... 17
Pinbelegung ............................................................................................................................................. 19
Serielle Interfaces ..................................................................................................................................... 25
RS232 ................................................................................................................................................ 25
SPI ..................................................................................................................................................... 26
I²C ...................................................................................................................................................... 28
USB ................................................................................................................................................... 28
Touchpanel ............................................................................................................................................... 30
I/O ........................................................................................................................................................... 31
Analog Input ............................................................................................................................................. 32
PWM Output ............................................................................................................................................ 33
Video Input ............................................................................................................................................... 34
Uhrzeit ..................................................................................................................................................... 35
SD-Card ................................................................................................................................................... 36
Elektrische Spezifikation ........................................................................................................................... 37
Maßzeichnung EA uniTFT050-A ................................................................................................................. 39
Maßzeichnung EA uniTFT070-A ................................................................................................................. 40
Maßzeichnung EA uniTFT101-A ................................................................................................................. 41
Montagehinweise ...................................................................................................................................... 42
Protokoll / Datenübertragung ........................................................................................................................... 43
Short Protokoll ......................................................................................................................................... 45
Small Protokoll ......................................................................................................................................... 48
Befehle ......................................................................................................................................................... 51
Befehlssyntax .......................................................................................................................................... 59
Terminalfenster ......................................................................................................................................... 61
Textausgabe / Zeichenketten ..................................................................................................................... 64
Bilder / Vektorgrafiken ............................................................................................................................... 67
Touchfunktionen ........................................................................................................................................ 68
Zeichnen / grafische Primitive ..................................................................................................................... 70
Bargraph / Instrumente .............................................................................................................................. 74
Keyboard / Tastatur ................................................................................................................................... 76
Eingabeelement ........................................................................................................................................ 77
Action / Animation.................................................................................................................................... 80
Objektverwaltung ...................................................................................................................................... 89
Styles ...................................................................................................................................................... 93
Makros .................................................................................................................................................... 98
Variablen / Register ................................................................................................................................. 102
I/O Port .................................................................................................................................................. 106
Analog Input ........................................................................................................................................... 107
PWM Output .......................................................................................................................................... 108
Master-Schnittstellen .............................................................................................................................. 109
Sound .................................................................................................................................................... 112
Video Input ............................................................................................................................................. 113
Uhrzeit ................................................................................................................................................... 114
Files SD-Card ......................................................................................................................................... 115
Systembefehle ........................................................................................................................................ 119
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
3 / 172
EA uniTFT050-A
Antwort / Rückmeldung ........................................................................................................................... 123
Kalkulationen ............................................................................................................................................... 126
Befehlsbeispiele ........................................................................................................................................... 132
Terminalfenster ....................................................................................................................................... 133
Textausgabe ........................................................................................................................................... 134
Bilder / Vektorgrafiken ............................................................................................................................. 136
Touchfunktionen ...................................................................................................................................... 138
Zeichnen / grafische Primitive ................................................................................................................... 141
Bargraph / Instrumente ............................................................................................................................ 143
Keyboard / Tastatur ................................................................................................................................. 146
Eingabeelement ...................................................................................................................................... 148
Action / Animation.................................................................................................................................. 151
Styles .................................................................................................................................................... 152
Variablen / Register ................................................................................................................................. 156
uniSKETCH ................................................................................................................................................. 157
Tastenkürzel ........................................................................................................................................... 159
Tools ........................................................................................................................................................... 160
Revision ...................................................................................................................................................... 170
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
4 / 172
EA uniTFT050-A

ALLGEMEINES

Die EA uniTFT-Serie ermöglicht mit dem integrierten Befehlssatz eine ausgefeilte grafische Darstellung und intuitive Menüsteuerung. Dank dem integrierten Befehlssatz und der Windowsdesignsoftware uniSKETCH können nicht nur Elektronikspezialisten sondern z.B. auch Experten aus dem Bereich Design und Benutzerführung das gesamte HMI erstellen.
Die Displaymodule sind mit 3,3 V sofort betriebsbereit, die Ansteuerung erfolgt über die eingebauten seriellen Schnittstellen RS232, SPI, I²C oder USB. Durch die objektorientierte "Programmierung", den umfangreichen Befehlssatz und den bereits integrierten, und jederzeit erweiterbaren Unicode-Schriftsätzen wird "Time-to-Marked" ein Kinderspiel.
Es sind aktuell 3 verschiedene Größen lieferbar: 5" mit 800x480 Punkten Auflösung und sehr hellen 900 cd/m², sowie 2 verschiedene IPS-Displays mit 7" (1024x600) und 10,1" (1280x800) und jeweils extrem hellen 1000cd/m².
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
5 / 172
EA uniTFT050-A
SOFTWARE - ARBEITSWEISE DER EA UNITFT-SERIE
Die Darstellung auf dem Display erfolgt anhand der übergebenen Befehle. Die Befehle können entweder per Laufzeit über eine der seriellen Schnittstellen übertragen werden oder auf der internen Mikro SD-Card in sogenannten Macros zusammengefasst und fest abgelegt werden. Mithilfe der Befehle werden Grafikobjekte erstellt. Diese Objekte haben unterschiedliche Eigenschaften, wie z.B. Farbe, Form und eingebaute Aktionen. Diese Eigenschaften können jederzeit manipuliert werden, so kann z.B. ein String geändert werden oder aber die Postion eines Touchtasters geändert werden. Alle nur erdenklichen Objekte können beliebig platziert, bewegt und wieder gelöscht werden. Schriften sind verlustfrei zoom- und drehbar, Windows-Zeichensätze werden direkt im Display abgelegt. Dank automatischer ASCII- und Unicode- Umschaltung werden flexibel die unterschiedlichsten Systeme unterstützt; Chinesische Zeichen eingeschlossen. Elegante Effekte zum Ein- und Ausblenden oder Hereinfliegen sind bereits integriert. Über Stylesheets lassen sich durchgängig einheitliche Designs erstellen. Bilder können als JPEG, PNG oder SVG (auch transparent) eingebunden werden, Sounddateien wie MP3 sind importierbar. Zusammen mit der integrierten, batteriegepufferten Zeitbasis lassen sich Ereignisse zusammen mit einem Zeitstempel dokumentieren oder auch Abläufe völlig autark ohne externem Rechner steuern.
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
6 / 172
EA uniTFT050-A

Objekte

Jedes Bild, jeder Text und jeder Button ist ein sogenanntes Objekt. Jedes Objekt muss mit einer Objekt-ID versehen werden, welche es eindeutig identifizierbar macht. Vergibt man eine Objekt-ID, dann wird bei erneuter Vergabe dieser Objekt-ID das vorherige Objekt überschrieben. Über die Objekt-ID können die Eigenschaften eines Objekts jederzeit geändert werden. Die Befehle zur Objektverwaltung sind hier zu finden.
Objektpostion / Anker
Allgemeine Anker
Die Position eines Objekts ergibt sich durch die Koordinaten bezogen auf den Objektanker. Jedes Objekt hat 9 allgemeine Anker.
Zeichenketten und Anker
Zeichenketten haben weitere 9 Anker um Objekte (z.B. Gerade für Unterstreichen) an der Textbaseline ausrichten zu können.
Spezialfall: Anker 0
Jedes Objekt besitzt zusätzlich einen frei definierbaren Anker. Der Anker 0 kann frei positioniert werden. Bei Kreisen, Ellipsen, Sternen ist der Objektanker 0 gleichzeitig der Konstruktionspunkt.
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
7 / 172
EA uniTFT050-A
Der Zeiger soll sich um den Mittelpunkt drehen. Die in grau dargestellten 9 Standardanker sind nicht hilfreich, denn eine Rotation erfolgt immer um einen Anker - was im dargestellten Fall unmöglich ist. Der Anker 0 kann pixelgenau platziert werden (#OAS).
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
8 / 172
EA uniTFT050-A

Styles

Das grafische Erscheinungsbild eines Objekts wird durch die verschiedenen Stylevorlagen, auch StyleSheets genannt definiert.
DrawStyle:
Farben, Farbverläufe, Muster und Linien werden im DrawStyle zusammengefasst.
TextStyle:
Das Aussehen einer Zeichenkette wird im TextStyle definiert. Ein TextStyle besteht aus einem DrawStyle und der zu verwenden Schriftart und Größe.
ButtonStyle:
Touchbuttons und -schalter erhalten ihr Aussehen von einem ButtonStyle, der wiederum aus TextStyles für die Beschriftung und DrawStyles für den Hintergrund des Tasters besteht.
Die Befehle zu den einzelenen Styles sind hier zu finden.
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
9 / 172
EA uniTFT050-A

Koordinatensystem und Winkel

Das Koordinatensystem bezieht sich direkt auf die Displayauflösung des Moduls, beispielsweise beim EA uniTFT050­A einen Bereich von 800 x 480. Der Ursprung 0|0 liegt in der linken unteren Ecke. Winkel werden im mathematischen Drehsinn (gegen den Uhrzeigersinn) angegeben. 0° befindet sich horizontal rechts:
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
10 / 172
EA uniTFT050-A

Mehrsprachigkeit - Stringfiles

In einer immer mehr zusammenwachsenden Welt mit internationalen Aufträgen ist die Unterstützung verschiedener Sprachen ein Muss. Die EA uniTFT-Serie bietet mit der Unicodeunterstützung einen Teil der Lösung. Ohne Unicode ist es unmöglich z.B. mit chinesischen Schriftzeichen zu arbeiten. Der zweite Teil der Unterstützung sind Stringfiles: Diese Textfiles sind eine Art Datenbank der anzuzeigenden Strings. In den Makrofiles wird für Strings auf ein Index referenziert. In den Stringfiles ist dieser Index zu finden und wird dann automatisch dargestellt. Genauere Beschreibung sind bei dem Befehl #VFL oder bei den Beispielen zu finden.
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
11 / 172
EA uniTFT050-A

Bootmenü

Auf der integrierten SD-Card können verschiedene Projekte gespeichert werden. Welches Projekt automatisch gestartet wird legt das File "start.emc" fest. Um ein anderes Projekt zu laden kann entweder die Datei verändert bzw. ersetzt werden. Alternative gelangen Sie über das Touchpanel in das Bootmenü: Version -TP: Beim Einschalten oder sofort nach einem Reset berühren Sie das Touch und halten es gedrückt. Nach Erscheinen der Meldung "Enter Bootmenue" den Touch wieder loslassen. Innerhalb einer Sekunde den Touch zweimal berühren ("Doppelclick"). Version -TC: Beim Einschalten oder sofort nach einem Reset streichen Sie in kurzen Abständen mehrmals über das Touchpanel.
Um Missbrauch durch den Bediener zu vermeiden, kann das Bootmenü deaktiviert werden. Hierfür muss auf der SD­Card im Root-Verzeichnis die Datei "bootmenu.off" mit leeren Inhalt erzeugt werden. Das kann zum Beispiel durch uniTFT Befehle erfolgen: #FWO</bootmenu.off> #FWC
Neben der Projektauswahl kann im Bootmenü der Testmode gestartet werden, um Informationen über das Modul angezeigt zu bekommen. Hierüber wird auch der Mass Storage Mode gestartet. Sollte im Bootmenü der Eintrag Mass Storage Mode deaktiviert werden, um zu vermeiden, dass Nutzer versehentlich diesen Modus aktivieren, muss im SD-Card im Root-Verzeichnis die Datei "usbmsc.off" mit leeren Inhalt erzeugt werden. Das kann zum Beispiel durch uniTFT Befehle erfolgen: #FWO</usbmsc.off> #FWC
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
12 / 172
EA uniTFT050-A

Firmwareupdate

Um die neuesten Features der EA uniTFT-Serie nutzen zu können kann es notwendig sein, die interne Firmware des Moduls zu erneuern. Dies kann auf zwei Varianten erfolgen, entweder über die seriellen Schnittstellen oder mit Hilfe der SD-Card.
Firmwareupdate per serielle Schnittstelle und Windows PC:
·
speichern Sie die Firmwaredatei (z.B. EA_uniTFT_V1_1.fw) auf der Festplatte
·
verbinden Sie das EA uniTFT mit Ihrem PC
·
starten Sie uniTRANSFER.exe (zu finden in den Tools der uniSKETCH-Installation) und wählen die korrekte Schnittstelle als Verbindung zum EA uniTFT aus
·
schieben Sie die neue Firmwaredatei aus dem Windows-Explorer per Drag&Drop auf das Fenster "uniTRANSFER.exe"
·
Nach der Übertragung muss manuell ein Reset ausgeführt werden, beim erneuten Start wird die Firmware geladen. Bitte schalten Sie das Gerät während des Updates nicht aus.
·
Das Firmwarefile wird nach der Installation gelöscht, sofern es nicht das Dateiattribut "Schreibgeschützt" hat.
Firmwareupdate per SD-Card:
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
13 / 172
EA uniTFT050-A
·
Das EA uniTFT muss komplett Spannungsfrei geschaltet werden.
·
Ausbau der SD-Card
·
speichern Sie die Firmwaredatei (z.B. EA_uniTFT_V1_1.fw) auf der Mikro SD-Card im Root-Verzeichniss
·
Nach dem Einbau und Starten des Moduls wird automatisch die auf der Mikro SD-Card befindliche Firmware geladen. Bitte schalten Sie das Gerät während des Updates nicht aus.
·
Das Firmwarefile wird nach der Installation gelöscht, sofern es nicht das Dateiattribut "Schreibgeschützt" hat.
Firmwareupdate per serieller Schnittstelle:
Die Firmwaredatei kann mit einem beliebigen System zum EA uniTFT übertragen werden. Dazu übertragen Sie den Inhalt der *.fw Datei 1:1 (mit Protokoll in einzelnen Paketen) zum EA uniTFT. Auf dem Modul kann mitverfolgt werden wieweit die Übertragung abgeschlossen ist. Nach erfolgreicher Übertragung erfolgt automatisch ein Datencheck. Bei korrekten Daten wird der Programmiervorgang automatisch gestartet. Bitte schalten Sie das Gerät während des Updates nicht aus.
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
14 / 172
EA uniTFT050-A

Mass Storage Mode

Die EA uniTFT-Serie arbeitet im Normalbetrieb immer als CDC-Device um über die serielle Schnittstelle Befehle entgegen nehmen zu können. Für den Datenaustausch mit Windows kann es sinnvoll sein das Modul als Massenspeicher anzumelden. Das Modul wird von Windows automatisch im Explorer angezeigt und verhält sich wie ein USB-Stick:
Während das Modul als Mass Storage Gerät verwendet wird sind sämtliche Befehle gesperrt, es werden keine Makros aufgerufen. Der Mass Storage Mode kann ab der Firmware V1.2 im Bootmenü per Touch ausgewählt werden, durch einen geeigneten Reset mit dem Befehl #XFB 6, oder durch einen Protokollbefehl. Um in den normalen Modus zurückzukehren genügt es einen Reset auszuführen, die Touchfläche "disconnect" zu
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
15 / 172
EA uniTFT050-A
berühren oder das Modul Windowsseitig zu trennen.
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
16 / 172
EA uniTFT050-A

HARDWARE

Die EA uniTFT-Serie besteht aus einem TFT-Display und einer Hintergrundbeleuchtung welche durch den integrierten LED-Treiber per Softwarebefehl steuerbar ist. So kann im 24h Betrieb die Beleuchtung automatisch gedimmt werden um die Lebensdauer der LEDs zu vergrößern und Strom einzusparen. Das Modul ist für 3,3 V Betriebspannung ausgelegt. Die Datenübertragung erfolgt seriell im RS232 Format, per SPI, I²C oder direkt mit USB. Für kleine Steuerungsaufgaben stehen dem Modul zusätzlich 16 frei verwendbare I/Os (erweiterbar auf bis zu 125), 4 Analogeingänge, ein PWM-Ausgang sowie 3 serielle Schnittstellen (RS232, SPI und I²C) zur Verfügung. Optional sind zwei Versionen mit integriertem Touchpanel verfügbar: Durch Berühren des Displays können hier Eingaben gemacht und Einstellungen per Menü oder Bargraph getätigt werden. Die Beschriftung und Größe und Form der "Tasten" ist flexibel und auch während der Laufzeit änderbar (verschiedene Sprachen, Icons). Das Zeichnen der einzelnen "Tasten", sowie das Beschriften wird von der eingebauten Software komplett übernommen. Je nach Einsatzzweck eignet sich das analog resistive Touchpanel, welches mit Stiften oder dicken Handschuhen bedienbar ist, oder die kapazitive Version mit unempfindlicher Glasoberfläche, welches auch mit dünnen Handschuhen bedienbar ist.
Frontansicht (exemplarisch EA uniTFT050-ATC)
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
17 / 172
EA uniTFT050-A
Rückansicht (exemplarisch EA uniTFT050-ATC)
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
18 / 172
EA uniTFT050-A

Pinbelegung

Pinbelegung für den "primary" und "secondary" connector. Die Lage der beiden MicroMatch-Verbinder können hier eingesehen werden.
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
19 / 172
Primary connector
EA uniTFT050-A
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
20 / 172
EA uniTFT050-A
PinSym
Beschreibung
bolI/O
1 GND Ground 0 V 2 VDD Power Supply 3,3
V 3 RES I Reset intern Pull-Up: (1,3 kW) 4 CS I SPI: Chip Select intern Pull-Up: (1 MW) 5 MOSI I SPI: MOSI intern Pull-Up: (1 MW) 6 MISO O SPI: MISO 7 CLK I SPI: CLK intern Pull-Up: (1 MW) 8 RxD I RS232: Receive
Data 9 TxD O RS232: Transmit
Data 10 DE O RS485: Transmit
Enable 11 SDA I/O I²C: Serial Data intern Pull-Up: (1 MW) ® im I²C Modus ist ein externer Pull-Up Widerstand
12 SCL I I²C: Serial Clock intern Pull-Up: (1 MW) ® im I²C Modus ist ein externer Pull-Up Widerstand
13 A/D 0 I Analogeingang 0 14 D- I/O USB: Data
negativ 15 A/D 1 I Analogeingang 1 16 D+ I/O USB: Data positiv Es müssen Lötbrücken gesetzt werden um die USB Verbindung über den primary
17 I/O
0.0
18 VBUS I USB: Supply
19 I/O
0.1
20 SBUF
TEST MOD
E 21 PWM O PWM-Ausgang 22 DPROTI High:
23
+
24
♫ -
25 VDD/
VLED
26 GND Ground 0 V
I/O I/O 0.0 (Bit 0)
Voltage (5 V)
I/O I/O 0.1 (Bit 1)
OILow: Daten im
Sendepuffer PowerOn Low: Testmode aktiv
Small-/Shortproto koll aktiv Low: deaktiviert
O Lautsprecherausg
ang (8 W)
O Lautsprecherausg
ang (8 W) Power Supply 3,3VEA uniTFT050-A: Verbindung zu Pin 2
intern Pull-Up: (1 MW) (Slave)
(Slave)
erforderlich (empfohlen: 10 kW)
erforderlich (empfohlen: 10 kW)
Es müssen Lötbrücken gesetzt werden um die USB Verbindung über den primary connector zu ermöglichen (siehe I/O Ports)
connector zu ermöglichen (siehe I/O Ports)
intern Pull-Up: (10 kW)
intern Pull-Up: (1 MW)
EA uniTFT101-A und EA uniTFT070-A: separate Versorgung für Hintergrundbeleuchtung mit weitem Eingangspannungsbereich: 3,1 - 9 V
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
21 / 172
Secondary connector
EA uniTFT050-A
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
22 / 172
EA uniTFT050-A
PinSym
Beschreibung
bolI/O
27 I/O
1.7
SDA 28 I/O
1.6
SCL 29 I/O
1.5
INT 30 I/O
1.4
31 I/O
1.3
32 I/O
1.2
33 I/O
1.1
34 I/O
1.0
35 I/O
0.7
36 I/O
0.6
37 I/O
0.5
38 I/O
0.4
39 I/O
0.3
40 I/O
0.2 41 A/D 3 I Analogeingang 3 42 A/D 2 I Analogeingang 2 43 SCL O Master I²C:
44 SDA I/O Master I²C:
45 TxD O Master RS232:
46 RxD I Master RS232:
47 CLK O Master SPI:
48 MISO I Master SPI:
49 MOSI O Master SPI:
50 CS O Master SPI:
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
51 VDD Power Supply
I/O
I/O 1.7 (Bit 15)
I/O
Port Expander Serial Data
I/OOI/O 1.6 (Bit 14)
Port Expander Serial Clock
I/OII/O 1.5 (Bit 13)
Port Expander Serial Clock
I/O I/O 1.4 (Bit 12)
I/O I/O 1.3 (Bit 11)
I/O I/O 1.2 (Bit 10)
I/O I/O 1.1 (Bit 9)
I/O I/O 1.0 (Bit 8)
I/O I/O 0.7 (Bit 7)
I/O I/O 0.6 (Bit 6)
I/O I/O 0.5 (Bit 5)
I/O I/O 0.4 (Bit 4)
I/O I/O 0.3 (Bit 3)
I/O I/O 0.2 (Bit 2)
Serial Clock
Serial Data
Transmit Data
Receive Data
CLK
MISO
MOSI
Chip Select
default Es müssen Lötbrücken gesetzt werden um die Porterweiterung zu ermöglichen (siehe I/O Ports)
default Es müssen Lötbrücken gesetzt werden um die Porterweiterung zu ermöglichen (siehe I/O Ports)
default Es müssen Lötbrücken gesetzt werden um die Porterweiterung zu ermöglichen (siehe I/O Ports)
intern Pull-Up: (1 MW) ® I²C-Bus erfordert einen externen Pull-Up Widerstand (empfohlen: 10 kW)
intern Pull-Up: (1 MW) ® I²C-Bus erfordert einen externen Pull-Up Widerstand (empfohlen: 10 kW)
intern Pull-Up: (1 MW)
23 / 172
EA uniTFT050-A
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
24 / 172
EA uniTFT050-A
Serielle Schnittstellen
Das Modul verfügt über 7 serielle Schnittstellen, darunter je zwei RS232, SPI, I²C und ein USB Port. Die Schnittstellen sind in zwei Gruppen einzuteilen: Eine Gruppe ist für die Verbindung zu einem externen Host also zu einer übergeordneten Steuerung gedacht. Das Modul verhält sich an den Pins 4~12 als Slave und nimmt die Befehlskommandos entgegen. Die andere Gruppe (Pins 43~50) ist als Masterschnittstelle konzipiert und ermöglicht das Steuern externer Sensoren und Aktoren. Das Displaymodul verhält sich hier als Master.

RS232

RS232 ist ein Standard für eine serielle Schnittstelle. Das EA uniTFT bietet 2 Schnittstellen RS232: die Slave-Schnittstelle (Pins 8 und 9) verwenden Sie um mit dem
Display zu arbeiten und zu kommunizieren. Alles was hierüber empfangen wird, wird als Kommando interpretiert (mit und ohne Small-Protokoll). Möchten Sie über eine RS-232 x-beliebige Daten senden und empfangen, verwenden Sie die Master-Schnittstelle (Pins 45 und 46). Diese bedienen Sie über die #H Befehle:
Die Übertragung erfolgt seriell asynchron. Die Daten werden also in ein Bitstrom gewandelt und übertragen. Es existiert keine Taktleitung, jeder Busteilnehmer muss also mit der selben Übertragungsrate (sogenannte Baudrate) arbeiten. RS232 ist eine Spannungsschnittelle, die Dateninformationen werden durch Spannungspegel übertragen. In der PC-Welt und Industriesteuerungen sind Pegel von +12V bzw. - 12V als Standard definiert. Innerhalb von Platinen bzw. in Mikrokontrollersteuerungen wird mit 0V bzw. VDD (im Fall des EA uniTFT-Serie 3,3 V) gearbeitet. Um die Signalpegel anzupassen gibt es einige Möglichkeiten in Form von Levelshiftern (z.B. ICL232, MAX202). RS232 besteht aus "hörenden" und "sprechenden" Leitungen, die zwischen den beiden Teilnehmern gekreuzt werden. In der EA uniTFT-Serie ist das Datenformat fest auf 8-N-1 festgelegt:
Das EA uniTFT-Serie kann mit folgenden Baudraten arbeiten:
Baud Error Baud Error
9600 +0.04 115200 +0.64 19200 -0.08 230400 -0-80 38400 +0.16 460800 +2.08 57600 -0.08 921600 -3.68
Die Schnittstellenparameter zur übergeordneten Steuerung werden mit dem Befehl #XCR eingestellt (Slave), die Masterschnittstelle wird mit dem Befehl #HRP gesetzt.
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
25 / 172
EA uniTFT050-A
Applikationsbeispiele
RS232 V24 - Verbindung zu einem PC (EA uniTFT als Slave)
RS485 - Verbindung zu einer SPS (EA uniTFT als Slave)
SPI
Das Serial Peripheral Interface ist ein Bussystem für eine serielle synchrone Datenübertragung zwischen verschiedenen ICs.
Das EA uniTFT bietet 2 Schnittstellen SPI: die Slave-Schnittstelle (Pins 4-7) verwenden Sie um mit dem Display zu arbeiten und zu kommunizieren. Alles was hierüber empfangen wird, wird als Kommando interpretiert (mit und ohne Small-Protokoll). Möchten Sie über eine SPI x-beliebige Daten senden und empfangen, verwenden Sie die Master­Schnittstelle (Pins 47-50). Diese bedienen Sie über die #H Befehle:
Der SPI-Bus besteht aus folgenden Leitungen:
·
MOSI (Master Out ® Slave In) auch SDO (Serial Data Out) oder DO
·
MISO (Master In ¬ Slave Out) auch SDI (Serial Data In) oder DI
·
SCK (Serial Clock) - Schiebetakt
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
26 / 172
EA uniTFT050-A
·
SS (Slave Select ® Adressierung des Partners) auch CS (Chip Select)
SPI arbeitet mit einem bidirektionalem Übertragungsprinzip, es werden also zeitgleich Daten zwischen den Partner ausgetauscht. Jede Kommunikation wird vom Master mit Hilfe der SCK-Leitung bestimmt. Das Protokoll für die Datenübertragung ist bei SPI nicht festgelegt, daher gibt es verschiedene Einstellmöglichkeiten. Diese werden durch die Parameter Clock Polarity, Clock Phase sowie Data Order festgelegt. Voreingestellt ist der SPI-Mode 3 mit DORD=0. Über den Befehl #XCS (Slave) bzw. #HSP (Masterschnittstelle) kann er auf einen der folgenden Modi 0..3 umgeschaltet werden. Alternativ kann der Befehl direkt in die Boot-Datei <start.emc> geschrieben werden:
M
C
C
DORD (0) - MSB First DORD (1) - LSB First
o
P
P
d
O
H
e
L
A
0 0 0
1 0 1
2 1 0
3 1 1
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
27 / 172
EA uniTFT050-A
Die maximale Frequenz des Moduls im Slave-Modus ist 1 MHz, auf dem Masterschnittstelle können ebenfalls bis zu 1 MHz übertragen werden. Das Modul benötigt eine bestimmte Zeit um die Daten bereit zu stellen; deshalb muss vor den zu lesenden Byte mindestens 50 ms gewartet werden (keine Aktivität auf der SCK-Leitung).
I²C
I²C steht für Inter-Integrated Circuit und ist ein von Phillips entwickelter serieller Datenbus. Das EA uniTFT bietet 2 Schnittstellen I²C; die Slave-Schnittstelle (Pins 11 und 12) verwenden Sie um mit dem Display
zu arbeiten und zu kommunizieren. Alles was hierüber empfangen wird, wird als Kommando interpretiert (mit und ohne Small-Protokoll). Möchten Sie über eine I²C-Schnittstelle x-beliebige Daten senden und empfangen, verwenden Sie die Master-Schnittstelle (Pins 43 und 44). Diese bedienen Sie über die #H Befehle:
Der als Master-Slave-Bus konzipierte Bus benötigt 2 Signalleitungen:
·
SCL (Serial Clock Line)
·
SDA (Serial Data Line)
Die elektrische Spezifikation sieht vor, dass beide Leitungen mit einem Pull-Up-Widerstand an VDD abgeschlossen werden, denn sämtliche an dem Bus angeschlossene Geräte haben Open-Collector-Ausgänge. Der Bustakt wird immer durch den Master vorgegeben, der die gesamte Kommunikation bestimmt:
Nach der Startbedingung folgt in einem Übertragungsprotokoll immer die Slaveadresse. Hierbei ist das Bit 0 das sogenannte R/W-Bit und bestimmt ob vom Slave gelesen (1) oder Daten übermittelt (0) werden sollen. Der Datenaustausch erfolgt bis der Master die Stopbedingung ausführt. Genauere Informationen sind in der I²C Spezifikation zu finden. Die voreingestellte I²C-Bus Adresse ist 0xDE (als 8-Bit Adresse inklusive R/W bit, als 7-Bit Adresse, also ohne R/W-Bit 0x6F).
Über den Befehl #XCI bzw. #HIP (Masterschnittstelle) kann auf eine x-beliebeige andere Adresse umgestellt werden. Alternativ kann der Befehl direkt in die Boot-Datei <start.emc> geschrieben werden. Die maximale Frequenz des Moduls im Slave-Modus ist 400 kHz, auf dem Masterschnittstelle können bis zu 1 MHz übertragen werden. Das Modul benötigt eine bestimmte Zeit um die Daten bereit zu stellen; deshalb muss vor den zu lesenden Byte mindestens 50 ms gewartet werden (keine Aktivität auf der SCL-Leitung).
USB
Der Universal Serial Bus ist ein serielles Bussystem zur Verbindung mit einem Computer oder anderem Gerät. Er basiert auf einer differentiellen Datenübertragung. Die Bustopologie ist eine strikte Master-Slave-Kommunikation (Ausnahme: On the Go Geräte). Im Fall der EA uniTFT-Serie muss immer der PC/Master die Kommunikation leiten. Das Modul verfügt über eine CDC Geräteklasse und meldet sich damit als virtuelle serielle COM-Schnittstelle am PC an:
Beschreibung Wert
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
28 / 172
EA uniTFT050-A
Geräteklasse 2 USB Vendor ID 0x2DA9 USB Product ID 0x2454 Gerätebeschreibung EA uniTFT
Um das Modul zu programmieren, Einstellungen vorzunehmen oder für erste Tests empfehlen wir die USB­Schnittstelle. Sie ist einfach anzuschließen, schnell und es müssen keine Schnittstellenparameter angepasst werden. Der Windowstreiber kann direkt von der Homepage unter http://www.lcd-
module.de/fileadmin/downloads/EA_CDCdriver_V5_2.zip heruntergeladen werden.
Neben dem CDC-Modus ist ab der Firmware V1.2 die Mass Storage Class implementiert. Wird das Modul in diesem Modus gestartet können die Daten der SD-Card direkt bearbeitet werden. Das Modul meldet sich unter Windows automatisch als Massenspeicher an:
Beschreibung Wert
Geräteklasse 2 USB Vendor ID 0x2DA9 USB Product ID 0x2455 Gerätebeschreibung EAuniTFT Mass Storage
USB Device
Soll die USB Verbindung nicht über den Mini-USB Stecker erfolgen sondern über den Primary connector, müssen zwei Lötbrücken geschlossen werden:
Hinweis:
Das Protokoll ist bei USB immer zu verwenden. Es ist nicht möglich die USB-Schnittstelle zu nutzen und das Protokoll zu deaktivieren, Pin 22 darf nicht auf GND gelegt werden. Die hohe Geschwindigkeit von USB führt zu Pufferüberläufen, die durch das Protokoll verhindert werden.
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
29 / 172
EA uniTFT050-A

Touchpanel

Optional gibt es zwei Versionen mit integrierten Touch Panel. Durch Berühren des Displays können hier Eingaben gemacht und Einstellungen per Menü oder Bargraphs getätigt werden. Die Beschriftung der "Tasten" ist flexibel und auch während der Laufzeit änderbar (verschiedene Sprachen, Icons). Das Zeichnen der einzelnen "Tasten", sowie das Beschriften wird von der eingebauten Software komplett übernommen. Je nach Einsatzzweck eigenet sich das analog resistive Touchpanel, welches mit Stiften oder dicken Handschuhen bedienbar ist, oder die kapazitve Version mit unempfindlicher Glasoberfläche, welches auch mit dünnen Handschuhen bedienbar ist.
Touchpanel abgleich
Die Version (EA uniTFTxxx-ATC) mit kapazitivem Touchpanel kann nicht abgeglichen werden. Sie ist bereits von Werk aus abgeglichen und behält diesen Abgleich bei. Die Version (EA uniTFTxxx-ATP) mit resistiven Touchpanel ist bei Auslieferung abgeglichen und Einsatzbereit. Durch Alterung und Abnutzung kann es nötig sein, dass das Touchpanel mit folgender Prozedur neu abgeglichen werden muss:
1a)Den Befehl #XXT senden oder
1b)Beim Einschalten Touch berühren und gedrückt halten. Nach erscheinen der Meldung "touch adjustment ? / Enter
Bootmenue" den Touch wieder loslassen. Innerhalb einer Sekunde den Touch nochmals für mindestens 1 Sekunde berühren.
2) Den Anweisungen zum Abgleich folgen (2 Punkte Links unten und Rechts oben betätigen)
Um Missbrauch durch den Bediener zu vermeiden kann der automatische Touchabgleich während des Startens deaktiviert werden. Hierfür muss auf der SD-Card im Root-Verzeichnis die Datei "touchadjust.off" mit leeren Inhalt erzeugt werden. Das kann zum Beispiel durch uni-TFT Befehle erfolgen: #FWO</touchadjust.off> #FWC
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
30 / 172
EA uniTFT050-A
I/O - digitale Ein- und Ausgänge
Das Modul verfügt standardmäßig über 16 digitale I/O's (CMOS Pegel, nicht potentialfrei). Der Eingangsspannungsbereich beträgt 0..3,3V. Alle 16 I/O's sind nach einem Reset als Eingang mit einem etwa 100 kW Weak Pull-up geschaltet. Anmerkung: Die Logik ist nicht für zeitkritische Vorgänge ausgelegt; d.h. es handelt sich nicht um ein Echtzeitbetriebssystem.
Durch den Einsatz von einem oder mehreren externen (maximal 7) Portexpandern MCP23017-E (16 I/O's pro Baustein) kann die Anzahl der gesamten I/O auf bis zu 128-3 erweitert werden. Dazu werden die Ports "I/O 1.5 bis 1.7" (Pin 27 bis 29) umgeschaltet und als serielle Datenleitungen für die Port-Expander genutzt (siehe Applikationsbeispiel). Dies erfolgt durch das Umlöten von 3 Widerständen (Die Lage der Widerstände können in der Übersicht entnommen werden.):
Die maximale Leistung des MCP23017-E beträgt 700mW. Die maximale Strombelastung für einen einzelnen Pin liegt bei 25mA, womit z.B. direkt eine low current LED betrieben werden kann. Sollte eine höhere Last notwendig sein, muss mit einer geeigneten Schaltung der I/O-Strom verstärkt werden, z.B. durch einen externen Transistor.
Die Übersicht über die Softwarebefehle zu den I/O's finden Sie unter dem Punkt 'I/O Port'.
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
31 / 172
EA uniTFT050-A

Analog Input

Das Modul verfügt über 4 analoge Eingänge mit einer Auflösung von 12 Bit und einer Eingangsbereich von
0..VDD. Der Eingangsbereich kann durch einen externe Spannungsteiler oder Messverstärker beliebig erweitert werden. Jeder Eingang hat einen Bezug zu GND und einen Eingangswiderstand von ca. 1 MW, die absolute Genauigkeit liegt bei 11 Bit, als Referenz dient VDD/2. Dadurch ist das Display in der Lage analoge Spannungen zu messen, und z.B. anzuzeigen oder zur weiteren Bearbeitung zu speichern. Das Über- oder Unterschreiten eines Grenzbereiches kann auch z.B. einen Alarm auslösen.
Die Übersicht über die Softwarebefehle zu den Analogeingängen finden Sie unter dem Punkt 'Analog
Input'
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
32 / 172
EA uniTFT050-A

PWM Output

Das Modul verfügt über die Möglichkeit über ein PWM­Signal (Pulsweitenmodulation) externe Komponenten anzusteuern. Dabei wird bei konstanter Frequenz (einstellbar von 2 Hz bis 1 MHz #HFO) das Tastverhältnis eines rechteckigen Impulses geändert. Durch die Modulation ändert sich das Verhältnis zwischen An- und Ausschaltzeit und somit die Charakteristik des Ausgangssignals. Auf diese Art können elektromechanische Bauteile wie z.B. Motoren angesteuert werden oder auch eine quasi-analog Spannung erzeugt werden. Die Variation der Tastverhältnisse sorgt dann für eine geringe Motordrehzahl/Spannung bei kurzer Anschaltzeit oder eine hohe Motordrehzahl/Spannung bei langer Anschaltzeit. Die Ausgangspegel liegen bei 0V und VDD.
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
33 / 172
EA uniTFT050-A
Video Input / Kamera
Das Modul verfügt über einen analogen Videoeingang und unterstützt drei Farbsysteme: PAL (Phase- Alternating-Line), Secam (Séquentiel couleur à mémoire) und NTSC (National Television Systems Committee). Die Umschaltung PAL/SECAM/NTSC erfolgt automatisch. Die meisten Digitalkameras und Videokameras verfügen über eine passende Schnittstelle, ebenso wie die meisten CMOS-Kameras. Die Auflösung ist dabei auf 720x576 (PAL und SECAM), 640x480 (NTSC) Pixel begrenzt. Der Eingang wird auch als Composite video signal input bezeichnet. Die beiden Anschlüsse (vergoldete Lötpads) befinden sich neben dem Pin 27 (siehe Rückansicht des Moduls). Das Videobild wird als separates Objekt eingeblendet und zeigt immer das aktuelle Livebild (#PVP). Es ist Möglich Screenshots des Videobildes (#XVS) zu erstellen, eine Filmaufnahme ist unmöglich.
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
34 / 172
EA uniTFT050-A
Uhrzeit / RTC
In der EA uniTFT-Serie ist eine RTC verbaut. Neben Zeitstempel auf log-Dateien kann die Zeit und das Datum zu Informationszwecken angezeigt werden. Bei Auslieferung wird die Uhrzeit auf die Mitteleuropäische Zeit (CET / MEZ) gesetzt. Je nach Einsatzort muss die Zeit auf die gültige vor Ort eingestellt (#WTD) werden. Bei Spannungseinbruch oder Abschalten des Moduls wird der Uhrenbaustein durch eine Knopfzelle (D377) gepuffert, sodass die Zeit erhalten bleibt. Durch Bauteiltoleranzen und Temperaturschwankungen sind Abweichungen von bis zu 0,02% möglich. Die Abweichung kann durch wiederholtes Abgleichen der Zeit (#WTD) verringert werden.
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
35 / 172
EA uniTFT050-A
SD-Card / Speicher
Das Modul verfügt über eine austauschbare Mikro SD-Karte (bis zu 32GB FAT32). In diesem Speicher werden alle Daten abgelegt, sowohl zur Laufzeit generierte wie z.B. log-Files aber auch die Projektdaten, darunter z.B. Makro-Files, Bilder, Animationen und Icons.
SD-Card Wechsel
Die SD-Card kann ausgetauscht werden, z.B. für ein sicheren und einfachen Projektupdate im Feld. Das Modul muss hierfür komplett Spannungsfrei geschaltet werden und alle Üblichen ESD-Vorkehrungen müssen getroffen werden:
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
36 / 172
EA uniTFT050-A
Elektrische Spezifikation EA uniTFT050-A/-ATC/-ATP
Value Condition min. typ. max. Unit
Operating temperature -20 70 °C Storage temperature -30 80 °C Storage humidity @ 60°C 90 % RH Operating voltage 3,1 3,3 3,5 V Supply current Backlight 0%
Backlight 100% 810 950 mA
Brightness (100%) w./o. Touchpanel 800 cd/m²
with PCAP 700 cd/m² with resistive Touch 600 cd/m²
300
350 mA
Elektrische Spezifikation EA uniTFT070-A/-ATC
Value Condition min. typ. max. Unit
Operating temperature -20 70 °C Storage temperature -30 80 °C Storage humidity @ 60°C 90 % RH Operating voltage VDD 3,1 3,3 3,5 V Operating voltage Backlight VLED 3,1 9,0 V Supply current Backlight 0%
Backlight 100% (3.3V) VLED @9V (100%)
Brightness w./o. Touchpanel @ 150% 1000 cd/m²
with PCAP @150% with PCAP @100%
390 890 200
690 460
mA mA
mA
cd/m² cd/m²
Elektrische Spezifikation EA uniTFT101-A/-ATC
Value Condition min. typ. max. Unit
Operating temperature 0 50 °C Storage temperature -20 60 °C Storage humidity @ 60°C 90 % RH Operating voltage VDD 3,1 3,3 3,5 V Operating voltage Backlight VLED 3,1 9,0 V Supply current Backlight (3,3 V) 100%
Backlight (9,0 V) 100% Backlight 0% 450 mA
Brightness (100%) w./o. Touchpanel 1000 cd/m²
with PCAP
1,8
500
800
A mA
cd/m²
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
37 / 172
EA uniTFT050-A
Elektrische Spezifikation Allgemein
Value Condition min. typ. max. Unit
Inpupt voltage analogue video signal 1 Vpp Input low voltage (except USB,I/O) -0,3 0 0.3*VDD V Input high voltage (except USB,I/O) VDD*0.7 VDD+0.3 V Output low voltage (except USB,I/O) - - 0,4 V Output high voltage (except USB, I/O) VDD-0.5 - - V Input low voltage I/O - - 0.2*VDD V Input high voltage I/O 0.8*VDD - - V Output low voltage I/O - - 0.6*VDD V Output high voltage I/O VDD-0.7 - - V Output current I/O - - 25 mA
- - 125 mA (total)
I²C-bus pull-up 1 MΩ
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
38 / 172

Maßzeichnung EA uniTFT050-A

EA uniTFT050-A
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
39 / 172

Maßzeichnung EA uniTFT070-A

EA uniTFT050-A
Maßzeichnung EA uniTFT070-ATC
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
40 / 172

Maßzeichnung EA uniTFT101-A

EA uniTFT050-A
Maßzeichnung EA uniTFT101-ATC
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
41 / 172
EA uniTFT050-A

Montagehinweise

Die EA uniTFT-Serie verfügt zur Montage über mindestens 4 Montagebolzen, welche mit einem M3 Innengewinde ausgestattet sind.
Hinweis: Der doppelseitige Kleber am kapazitivem Touchpanel dient nicht der mechanischen Fixierung des Moduls, sondern stellt einen Staubschutz dar. Das Modul muss immer mit den Montagebolzen befestigt werden.
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
42 / 172
EA uniTFT050-A

PROTOKOLL / DATENÜBERTRAGUNG

Egal über welche der 4 seriellen Schnittstellen die Daten von der übergeordneten Steuerung übertragen werden ist das Übertragungsprotokoll identisch. Die Hardwarebeschaltung ist unterschiedlich und kann unter dem Punkt "Serielle
Interfaces" nachgelesen werden.
Die Datenübertragung ist jeweils eingebettet in einen festen Rahmen mit Prüfsumme. Die EA uniTFT-Serie quittiert dieses Paket mit dem Zeichen <ACK> (=0x06) bei erfolgreichem Empfang oder <NAK> (=0x15) bei fehlerhafter Prüfsumme oder Empfangspufferüberlauf. In Falle eines <NAK> wird das komplette Paket verworfen und muss nochmal gesendet werden. Ein <ACK> bestätigt lediglich die korrekte Übertragung. Ein Syntax-Check erfolgt nicht. Es sind zwei unterschiedliche Protkolle implementiert, das "Short Protokoll" und das "Small Protokoll". Das Short Protokoll arbeitet mit einer CRC16 Prüfsumme und erlaubt deutlich größere Datenpakete. Während das Small Protokoll hauptsächlich aus Kompatibilitätsgründen zur Serie EA eDIPxxx implementiert wurde. Die Anzahl der Nutzdaten pro Paket kann max. 2042 Byte bzw. 255 Byte betragen. Befehle die größer sind (z.B. Bilder oder File schreiben #FWD ...) müssen auf mehrere Pakete aufgeteilt werden. Die Nutzdaten in den einzelnen Paketen werden nach korrektem Empfang vom Displaymodul wieder zusammengefügt.
Hinweis:
Das <ACK> muss aktiv eingelesen werden (SPI und I²C). Empfängt der Hostrechner keine Quittierung, so ist mindestens ein Byte verloren gegangen. In diesem Fall muss die eingestellte Timeoutzeit abgewartet werden, bevor das Paket komplett wiederholt wird.
Das Protokoll kann für erste Test an der seriellen Schnittstelle deaktiviert werden. Hierfür ist der Pin 22 auf low zu legen (siehe Pinbelegung).
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
43 / 172
EA uniTFT050-A
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
44 / 172
EA uniTFT050-A
Short Protokoll Befehle
1. Befehle / Daten zum Modul senden
Dieser Protokoll-Befehl überträgt Daten zum Display. Es können mehrere Grafikbefehle in ein Protokollpaket verpackt werden. Sind die Daten größer als die maximale Paketgröße können die Daten auf mehrere Pakete aufgeteilt werden. Das Modul fügt die einzelnen Datenpakete wieder zusammen.
Modul empfängt DC3
0x13
Modul sendet ACK
0x06
2. Inhalt des Sendepuffers anfordern
Fallen Daten im Modul an, werden diese im Sendepuffer des Moduls gespeichert. Über die seriellen Schnittstellen können die Daten angefordert werden. Ob Daten verfügbar sind kann über den Pin 20 SBUF herausgefunden werden, oder aber die übergeordnete Steuerung fragt zyklisch die Daten ab (polling).
Modul empfängt DC4
0x14
Modul sendet ACK
0x06
Modul sendet DC3
0x13
Länge (16 Bit)
0xXX 0xXX
Länge (16 Bit)
0x01 0x00
Länge (16 Bit)
0xXX 0xXX
Data.......
0x....
'S'
0x53
Data.......
0x....
crc (16 Bit)
0xXX 0xXX
crc (16 Bit)
0x30 0x08
crc (16 Bit)
0xXX 0xXX
3. Letztes Datenpaket wiederholen
Ist ein Empfangenes Packet des Moduls fehlerhaft (falsche Länge oder Prüfsumme) kann es erneut angefordert werden:
Modul empfängt DC4
0x14
Modul sendet ACK
0x06
Modul sendet DC3
0x13
Länge (16 Bit)
0x01 0x00
Länge (16 Bit)
0xXX 0xXX
'R'
0x52
Data.......
0x....
crc (16 Bit)
0x11 0x18
crc (16 Bit)
0xXX 0xXX
4. Pufferinformationen anfordern
Mit diesem Befehl wird nachgefragt, ob Nutzdaten zur Abholung bereit stehen (= Pin20 SBUF) und wie voll der Empfangspuffer des Displays bereits ist.
Modul empfängt DC4
0x14
Modul sendet ACK
0x06
Modul sendet DC4
0x14
Länge (16 Bit)
0x01 0x00
Länge (16 Bit)
0x04 0x00
'I'
0x49
Sendepuffer Bytes ready (16 Bit)
0xXX 0xXX
Empfangspuffer Bytes free (16 Bit)
0xXX 0xXX
5. Protokolleinstellungen
Hierüber lässt sich die maximale Paketgröße welche das Display senden darf begrenzen. Voreingestellt ist eine Paketgröße mit bis zu 2042 Byte Nutzdaten. Weiterhin lässt sich der Time-out in 1/1000s einstellen. Der Time-out spricht an, wenn einzelne Bytes verloren gegangen sind. Danach muss das gesamte Paket nochmals übertragen werden.
Modul empfängt
Defaultwerte
Modul sendet ACK
DC4
0x14
Länge (16 Bit)
0x05 0x00
'D'
Paketgröße Sendepuffer (16 Bit)
0x44
0xFA 0x07 (=2042 Byte)
Time-out (16 Bit) in ms
0xD0 0x07 (=2 Sekunden)
crc (16 Bit)
0x4B 0xBB
crc (16 Bit)
0xXX 0xXX
crc (16 Bit)
0x98 0xF5
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
45 / 172
EA uniTFT050-A
0x06
6. Protokollinformationen
Abfrage der Protokolleinstellungen (siehe 5.).
Modul empfängt DC4
0x14
Modul sendet ACK
0x06
Modul sendet DC4
0x14
Länge (16 Bit)
0x01 0x00
Länge (16 Bit)
0x06 0x00
'P'
0x50
Maximale Paketgröße Sendepuffer (16 Bit)
0xFA 0x07 (=2042 Byte)
Paketgröße Sendepuffer (16 Bit)
0xXX 0xXX
7. RS485 Adresse selektieren / deselektieren
Mit diesem Befehl lässt sich ein Modul am RS485-Bus selektieren oder deselektieren. Per Default ist ein Modul mit der Adresse 7 immer aktiv.
Modul empfängt
Defaultwerte
Modul sendet ACK
DC4
0x14
0x06
----
Länge (16 Bit)
0x03 0x00
® Selektieren ® Deselektieren
'A'
'S' (=Selektieren) 'D' (=Deselektieren)
0x41
0x53 oder 0x44
RS485-Adresse
0xXX
Time-out (16 Bit) in ms
0xXX 0xXX
crc (16 Bit)
0xXX 0xXX
8. RS485 Verzögerung Enable Signal
Einige RS485 benötigen eine gewisse Zeit um das Enable-Signal zu verändern und z.B. vom schreibenden in den lesenden Modus umzuschalten. Um eine erfolgreiche Kommunikation mit diesen Geräten zu ermöglichen kann mit diesem Befehl die Umschaltung in den schreibenden Modus verzögert werden.
Modul empfängt
Defaultwerte
Modul sendet ACK
DC4
0x14
0x06
Länge (16 Bit)
0x03 0x00
'T'
Verzögerung in 10 us
0x54
0x00 0x00
crc (16 Bit)
0xE9 0x7E
9. Schnittstelle exklusiv anfordern
Alle 4 seriellen Schnittstellen werden parallel und gleichwertig behandelt. Um zu gewährleisten, dass eine Abfolge von Protokollpaketen ohne Unterbrechung durchgeführt wird, können die anderen seriellen Schnittstellen deaktiviert werden und die Schnittelle exklusiv angefordert werden. Dies ist zum Beispiel bei einem Projektupdate über USB sinnvoll.
Modul empfängt DC4
0x14
Modul sendet ACK
0x06
Modul sendet DC4
0x14
Länge (16 Bit)
0x02 0x00
Länge (16 Bit)
0x01 0x00
'G'
0x47
Aktiv (16 Bit)
0x00 = alle 0x01 = RS232 0x02 = SPI 0x03 = IIC 0x04 = USB
0x00 = Freigabe 0x01 = Anfordern
crc (16 Bit)
0xXX 0xXX
crc (16 Bit)
0xXX 0xXX
10. Break-Kommando, Ausführung Unterbrechen / Beenden
Falls in einem Makro eine Dauerschleife programmiert wurde oder eine Unterbechung des normalen Ablaufs gewünscht wird, kann mit diesem Befehl gezielt Unterbrochen und Beendet werden. Auch dieser Befehl eignet sich vor allem für Update-Vorgänge.
Modul empfängt
Defaultwerte
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
DC4
0x14
Länge (16 Bit)
0x02 0x00
'C'
break
0x43
0x01 = Wait command 0x02 = aktuelles Makrofile
crc (16 Bit)
0xXX 0xXX
46 / 172
EA uniTFT050-A
0x04 = Sendepuffer löschen 0x08 = Empfangsbuffer leeren 0x10 = Makrodefiniton (z.B. Portmakros) 0xFF = Alles Unterbrechen und Beenden
Modul sendet ACK
0x06
11. Hardware Reset
Das Modul wird mit diesem Protokollbefehl neu gestartet. Je nach Parameter wird nach dem Reset eine andere Startoption gewählt.
Modul empfängt
Defaultwerte
Modul sendet ACK
DC4
0x14
0x06
Länge (16 Bit)
0x02 0x00
'B'
Option
0x42
0x00 = Normaler Neustart 0x01 = Neustart im Testmode 0x02 = Neustart ohne 'start.emc' 0x03 = Neustart ohne default Styles 0x04 = Bootmenü anzeigen (Projektauswahl) 0x05 = Reserved 0x06 = Mass Storage Mode (ab V1.2)
crc (16 Bit)
0xXX 0xXX
CRC-Berechnung
Für die Berechnung der Prüfsumme wird eine zyklische Redundanzprüfung (CRC) eingesetzt. Eine gängige und bekannte CRC-Prüfung ist die CRC-CCITT. Als Startwert wird 0xFFFF verwendet. Im Folgenden sehen Sie eine typische C-Implementierung. Die Funktionen müssen extern aufgerufen werden. Die Prüfsumme muss mit dem Startwert vorbelegt werden.
//---------------------------------------------------------------------------­//Funktion: buffer2crc16() //input: ptr Datum, ptr auf CRC, Blocklänge //output: --­//Beschr: CRC-CCITT eines Speicherbereichs //----------------------------------------------------------------------------
void buffer2crc16(UBYTE *dat, UINT16 *pCRC, UINT32 anz)
{
while(anz--)
crc16(*dat++, pCRC); }
//---------------------------------------------------------------------------­//Funktion: sp_crc16() //input: Datum, ptr auf CRC //output: --­//Beschr: CRC_CCITT (x^16+x^12+x^5+1 = 1 0001 0000 0010 0001 = 0x1021 //----------------------------------------------------------------------------
void crc16 (UBYTE dat, volatile UINT16 * crc)
{
register UINT16 lcrc = *crc;
lcrc = (lcrc >> 8) | (lcrc << 8); lcrc ^= dat; lcrc ^= (lcrc & 0xFF) >> 4; lcrc ^= lcrc << 12; lcrc ^= (lcrc & 0xFF) << 5; *crc = lcrc; }
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
47 / 172
EA uniTFT050-A

Small Protokoll

1. Befehle / Daten zum Modul senden
Dieser Protokoll-Befehl überträgt Daten zum Display. Es können mehrere Grafikbefehle in ein Protokollpaket verpackt werden. Sind die Daten größer als die maximale Paketgröße können die Daten auf mehrere Pakete aufgeteilt werden. Das Modul fügt die einzelnen Datenpakete wieder zusammen.
Modul empfängt DC1
0x11
Modul sendet ACK
0x06
2. Inhalt des Sendepuffers anfordern
Fallen Daten im Modul an, werden diese im Sendepuffer des Moduls gespeichert. Über die seriellen Schnittstellen können die Daten angefordert werden. Ob Daten verfügbar sind kann über den Pin 20 SBUF herausgefunden werden, oder aber die übergeordnete Steuerung fragt zyklisch die Daten ab (polling).
Modul empfängt DC2
0x12
Modul sendet ACK
0x06
Modul sendet DC1
0x11
Länge (8 Bit)
0xXX
Länge (8 Bit)
0x01
Länge (8 Bit)
0xXX
Data.......
0x....
'S'
0x53
Data.......
0x....
bcc (8 Bit)
0xXX
bcc (8 Bit)
0x66
bcc (8 Bit)
0xXX
3. Letztes Datenpaket wiederholen
Ist ein Empfangenes Packet des Moduls fehlerhaft (falsche Länge oder Prüfsumme) kann es erneut angefordert werden:
Modul empfängt DC2
0x12
Modul sendet ACK
0x06
Modul sendet DC1
0x11
Länge (8 Bit)
0x01
Länge (8 Bit)
0xXX
'R'
0x52
Data.......
0x....
bcc (8 Bit)
0x65
bcc (8 Bit)
0xXX
4. Pufferinformationen anfordern
Mit diesem Befehl wird nachgefragt, ob Nutzdaten zur Abholung bereit stehen (= Pin20 SBUF) und wie voll der Empfangspuffer des Displays bereits ist.
Modul empfängt DC2
0x12
Modul sendet ACK
0x06
Modul sendet DC2
0x12
Länge (8 Bit)
0x01
Länge (8 Bit)
0x02
'I'
0x49
Sendepuffer Bytes ready (8 Bit)
0xXX
Empfangspuffer Bytes free (8 Bit)
0xXX
5. Protokolleinstellungen
Hierüber lässt sich die maximale Paketgröße welche das Display senden darf begrenzen. Voreingestellt ist eine Paketgröße mit bis zu 255 Byte Nutzdaten. Weiterhin lässt sich der Time-out in 1/100s einstellen. Der Time-out spricht an, wenn einzelne Bytes verloren gegangen sind. Danach muss das gesamte Paket nochmals übertragen werden.
Modul empfängt
Defaultwerte
Modul sendet ACK
DC2
0x12
Länge (8 Bit)
0x03
'D'
Paketgröße Sendepuffer (8 Bit)
0x44
0xFF
Time-out (8 Bit) in 1/100s
0xC8 (=2 Sekunden)
bcc (8 Bit)
0x5C
bcc (8 Bit)
0xXX
bcc (8 Bit)
0x20
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
48 / 172
EA uniTFT050-A
0x06
6. Protokollinformationen
Abfrage der Protokolleinstellungen (siehe 5.).
Modul empfängt DC2
0x12
Modul sendet ACK
0x06
Modul sendet DC2
0x12
Länge (8 Bit)
0x01
Länge (8 Bit)
0x03
'P'
0x50
Maximale Paketgröße Sendepuffer (8 Bit)
0xFF
Paketgröße Sendepuffer (8 Bit)
0xXX
7. RS485 Adresse selektieren / deselektieren
Mit diesem Befehl lässt sich ein Modul am RS485-Bus selektieren oder deselektieren. Per Default ist ein Modul mit der Adresse 7 immer aktiv.
Modul empfängt
Defaultwerte
Modul sendet ACK
DC2
0x12
0x06
----
Länge (8 Bit)
0x03
® Selektieren ® Deselektieren
'A'
'S' (=Selektieren) 'D' (=Deselektieren)
0x41
0x53 oder 0x44
RS485-Adresse
0xXX
Time-out (8 Bit) in ms
0xXX
bcc (8 Bit)
0xXX
8. RS485 Verzögerung Enable Signal
Einige RS485 benötigen eine gewisse Zeit um das Enable-Signal zu verändern und z.B. vom schreibenden in den lesenden Modus umzuschalten. Um eine erfolgreiche Kommunikation mit diesen Geräten zu ermöglichen kann mit diesem Befehl die Umschaltung in den schreibenden Modus verzögert werden.
Modul empfängt
Defaultwerte
Modul sendet ACK
DC2
0x12
0x06
Länge (8 Bit)
0x03
'T'
Verzögerung in 10 us
0x54
0x00 0x00
bcc (8 Bit)
0x69
9. Schnittstelle exklusiv anfordern
Alle 4 seriellen Schnittstellen werden parallel und gleichwertig behandelt. Um zu gewährleisten, dass eine Abfolge von Protokollpaketen ohne Unterbrechung durchgeführt wird, können die anderen seriellen Schnittstellen deaktiviert werden und die Schnittelle exklusiv angefordert werden. Dies ist zum Beispiel bei einem Projektupdate über USB sinnvoll.
Modul empfängt DC2
0x12
Modul sendet ACK
0x06
Modul sendet DC2
0x12
Länge (8 Bit)
0x02
Länge (8 Bit)
0x01
'G'
0x47
Aktiv (8 Bit)
0x00 = alle 0x01 = RS232 0x02 = SPI 0x03 = IIC 0x04 = USB
0x00 = Freigabe 0x01 = Anfordern
bcc (8 Bit)
0xXX
bcc (8 Bit)
0xXX
10. Break-Kommando, Ausführung Unterbrechen / Beenden
Falls in einem Makro eine Dauerschleife programmiert wurde oder eine Unterbechung des normalen Ablaufs gewünscht wird, kann mit diesem Befehl gezielt Unterbrochen und Beendet werden. Auch dieser Befehl eignet sich vor allem für Update-Vorgänge.
Modul empfängt
Defaultwerte
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
DC2
0x12
Länge (8 Bit)
0x02
'C'
break
0x43
0x01 = Wait command 0x02 = aktuelles Makrofile 0x04 = Sendepuffer löschen
bcc (8 Bit)
0xXX
49 / 172
EA uniTFT050-A
0x08 = Empfangsbuffer leeren 0x10 = Makrodefiniton (z.B. Portmakros) 0xFF = Alles Unterbrechen und Beenden
Modul sendet ACK
0x06
11. Hardware Reset
Das Modul wird mit diesem Protokollbefehl neu gestartet. Je nach Parameter wird nach dem Reset eine andere Startoption gewählt.
Modul empfängt
Defaultwerte
Modul sendet ACK
DC2
0x12
0x06
Länge (8 Bit)
0x02
'B'
Option
0x42
0x00 = Normaler Neustart 0x01 = Neustart im Testmode 0x02 = Neustart ohne 'start.emc' 0x03 = Neustart ohne default Styles 0x04 = Bootmenü anzeigen (Projektauswahl) 0x05 = Reserved 0x06 = Mass Storage Mode (ab V1.2)
bcc (8 Bit)
0xXX
BCC-Berechnung
Für die Berechnung der Prüfsumme wird eine einfache 8-Bit Summenprüfung (Modulo 256) benötigt. Im Folgenden sehen Sie eine typische C-Implementierung.
//---------------------------------------------------------------------------­//Funktion: buffer2bcc() //input: ptr Datum, blocklänge //output: --­//Beschr: Byte bcc für einen Speicherbereich //----------------------------------------------------------------------------
UBYTE buffer2bcc(UBYTE *dat, UBYTE anz)
{
UBYTE bcc = 0;
while(anz--)
bcc += *dat++;
return bcc;
}
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
50 / 172
EA uniTFT050-A
BEFEHLSÜBERSICHT
Die EA uniTFT-Serie verfügt über einen integrierten Befehlssatz, welcher grafische Primitive, Rechnungen, Hardwareansteuerungen und vieles mehr erlaubt. Die Befehle können zur Laufzeit über die seriellen Schnittstellen übertragen werden oder in sogenannten Macrofiles auf der Mikro SD-Karte des Moduls abgelegt sein. In den folgenden Tabellen sind alle Befehle beschrieben. Die Defaultwerte sind in Klammern hinter den jeweiligen Parametern angegeben. In SCHWARZ geschriebene Parameter sind anzugeben, GRAUE sind optional.
Alle Befehle auf einen Blick
Terminalfenster #Y
#YDW Größeneinstellung #YDS Terminalfenster Zoom #YDC Farbeinstellung #YDL Zeichenreihenfolge (Layer) #YDO Terminalfenster Ein-/Ausschalten #YCB Cursor blinken #YCP Position Cursor setzen #YCS Position Cursor sichern #YCR Position Cursor wiederherstellen #YPA Ausgabe Zeichenkette #YPF Ausgabe formatierte Zeichenkette #YPD Ausgabe Uhrzeit #YPI Ausgabe Modulkonfiguration #YPV Ausgabe Versionsstring
Textausgabe / Zeichenketten #S
#SSP Zeichenkette platzieren #SSC Zeichenkette ändern #SFP Formatierte Zeichenkette platzieren #SFF Formatierte Zeichenkette ändern #SFC Formatierte Zeichenkette Parameter ändern #SAP Autoupdate formatierte Zeichenkette platzieren #SAF Autoupdate formatierte Zeichenkette ändern #SAC Autoupdate formatierte Zeichenkette Kalkulation ändern #SDP Uhrzeit / Datum Zeichenkette #SDC Uhrzeit / Datum ändern #SDF Uhrzeit / Datum Zeichenkette ändern #SEP Editbox-String anzeigen #SED Editbox Defaultstring #SEC Editbox Strings / Codes senden #SEK Editbox mit Keyboard verbinden #SEA Editbox aktivieren / deaktivieren #SBP StringBox anzeigen #SBS StringBox Styles (Aussehen) #SBA StringBox Text hinzufügen #SBD StringBox Text löschen #SBF StringBox File laden und anzeigen #SBO StringBox Textzeile anzeigen
Bilder / Vektorgrafiken #P
#PPP Bild platzieren #PPA Bildanimation (*.gif) ändern #PVP Videobild platzieren
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
51 / 172
EA uniTFT050-A
#PIP Bild über die Schnittstelle platzieren
Touchfunktionen #T
#TBR Touchbereich Rechteck Taster #TSR Touchbereich Rechteck Schalter #TBE Touchbereich Ellipse/Kreis Taster #TSE Touchbereich Ellipse/Kreis Schalter #TBP Touchbereich Bild Taster #TSP Touchbereich Bild Schalter #TBI Touchbereich Icon Taster #TSI Touchbereich Icon Schalter #TBO Touchbereich Objekt Taster #TSO Touchbereich Objekt Schalter #TQS Zustand Taster / Schalter abfragen #TCL Beschriftung ändern #TCS Zustand ändern #TCE Aktivieren / Deaktivieren #TCR Rückmeldung Touchbereich #TRA Schalter / Taster hinzufügen #TQR Zustand der Radiogruppe abfragen #TID Interne Verarbeitung von Touchaktionen
Zeichnen / grafische Primitive #G
#GRR Rechteck #GGP n-Eck #GGS Stern #GET Kreis / Ellipse #GEP Kreissektor / Kuchenstück #GES Kreissegment #GEA Kreisbogen #GPL Polylinie #GPF Polygon #GPA Polylinie / Polygon Punkt hinzufügen #GPP Pfad #GPS Pfad, Subpfad hinzufügen
Bargraph / Instrumente #I
#IBR Bargraph rechteckig #IBR Bargraph dreieckig #IBA Bargraph gebogen #IGS Schieberegler entlang eines Pfades #IGM Zeigerinstrument aus Objekten #IPP Zeigerinstrument als Pixelbild #IVS Wert setzen #IVA Wert Autoupdate #IVC Wert Autoupdate Kalkulation ändern #IVN Start-/Endwert ändern
Keyboard / Tastatur #K
#KDB Definition Layout des Keyboards #KDS Definition alternativer Tastenbeschriftung / Styles #KKP Keyboard anzeigen
Action / Animation #A
#ADC Definition Start/End #AOA Action / Animation definieren Absolut
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
52 / 172
EA uniTFT050-A
#AOR Action / Animation definieren Relativ #AOT Action-/Animationstyp / Time #AOS Action / Animation Stoppen #AOD Action / Animation löschen #APD Aktionspfad erstellen #ACD Aktionskurve erstellen
Objektverwaltung #O
#ODI Löschen #OVI Sichtbarkeit #OPA Postion Absolut #OPR Postion Relativ #OSA Größenänderung Absolut #OSR Größenänderung Relativ #ORA Rotation Absolut #ORR Rotation Relativ #OHA Scherung Absolut #OHR Scherung Relativ #OOA Deckkraft / Opacity Absolut #OOR Deckkraft / Opacity Relativ #OCC Farbe ändern #OCS Style ändern #OFP Rahmen / Hintergrund #OAA Anker setzen #OAS Freien Anker setzen Absolut #OAO Freien Anker setzen Relativ #OLA Layer / Zeichenreihenfolge ändern Absolut #OLR Layer / Zeichenreihenfolge ändern Relativ #OUI User-Object Value Integer #OUF User-Object Value Float #OGA Objekte zur Gruppe hinzufügen
Styles #C
#CFD Füllung: Löschen #CFC Füllung: Vollfarbe #CFL Füllung: Linearer Farbverlauf #CFR Füllung: Radialer Farbverlauf #CFK Füllung: Konischer Farbverlauf #CFP Füllung: Muster / Pattern #CFA Füllung ändern: Winkel (linearer Farbverlauf) #CFG Füllung ändern: Rampe (Farbverlauf) #CFF Füllung ändern: Fokus #CFN Füllung ändern: Muster / Pattern ändern #CFS Füllung ändern: Muster / Pattern Größe ändern #CFT Füllung ändern: Muster / Pattern Wiederholungsmode #CLD Linie: Löschen #CLS Linie: Farbe, Dicke #CLC Linie ändern: Farbe #CLW Linie ändern: Breite #CLE Linie ändern: Verbindungsart / Linienende #CLP Linie ändern: Linienmuster (Dash) #CTF TextSyle definieren #CTN TextStyle ändern: Font #CTS TextStyle ändern: Größe #CTA TextStyle ändern: Ausrichtung / Alignment #CTC TextStyle ändern: DrawStyle #CTI TextStyle ändern: Kursiv #CTG TextStyle ändern: Abstände
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
53 / 172
EA uniTFT050-A
#CBP ButtonStyle: Picture #CBD ButtonStyle: Draw #CBT ButtonStyle: Text #CBO ButtonStyle: DownEvent #CBS ButtonStyle: DownEvent Sound #CBG ButtonStyle: Disabled #CCR Farb-Rampe definieren #CAC Farb-Rampe animieren #CDP Linien-Muster definieren #CAD Linien-Muster animieren
Makros #M
#MRN Makro ausführen #MRC Makro bedingt ausführen #MRD Makro verzögert ausführen #MRP I/O-Portmakro manuell ausführen #MRB I/O-Bitmakro manuell ausführen #MRA Analogmakro manuell ausführen #MRT Touchmakro manuell ausführen #MDT Touchmakro definieren #MPD Makro-Prozess definieren #MPC Bedingter Makro-Prozess definieren #MPA Automatischer Makro-Prozess #MPT Makro-Prozess Zeit ändern #MDA Action-End Makro definieren #MHP I/O-Portmakro definieren #MHB I/O-Bitmakro definieren #MHA Analogmakro definieren #MHR RS232 Empfangsmakro (Master) #MDS Sekunden Makro (RTC) #MHS Sound End Makro definieren #MDL Backlight Autodimming Makro #MCD Makro Definitionen löschen #MFS Zeilen überspringen #MFJ Sprung zu Ziel (Jump) #MFM Sprungziel setzen #MFC Sprung zu Ziel mit Rücksprung (Call) #MFR Rücksprung zu Aufruf (Return) #MFE Makro verlassen #MFD Marker löschen
Variablen / Register #V
#VFL Stringfile load #VFD Stringfile unload #VFC Stringfile Anzahl #VSS Stringregister setzen #VSP Stringregister ab Position setzen #VSR Stringregister ab Positon ersetzen #VST Stringregister ab Postion verschieben #VSC Teilstring kopieren #VSE Stringregister in Teilstrings aufteilen #VSD Stringregister Zeit / Datum #VSF Formatiertes Stringregister #VSO Objektstrings auslesen #VSA Stringregister senden ASCII #VSU Stringregister senden Unicode #VQS Stringregister sortieren #VQC Codes im Stringregister sortieren
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
54 / 172
#VSL Fehlermeldung in Stringregister #VMS Stringregister mischen #VMC Codes im Stringregister mischen #VRI Register Integer setzen #VRF Register Float setzen #VRO Objektstring umwandeln #VRW Register in RTC-RAM schreiben #VRR Register aus RTC-RAM lesen #VCI Stringkalkulation Integer #VCF Stringkalkulation Float #VRG Register senden #VQR Register sortieren #VMR Register mischen
I/O Port #H
#HPC Direction Control #HPW Ausgänge setzen #HPR Eingänge lesen #HPI Bausteininformation #HBC Direction Control #HBW Ausgänge setzen #HBR Eingänge lesen
EA uniTFT050-A
Analog Input #H
#HAR Analogeingang lesen #HAL Grenzen / Schwellwert festlegen #HAH Hysterese
PWM Output #H
#HFO PWM Frequenz #HFD PWM Dutycycle
Serielle Master-Schnittstellen #H
#HRP RS232 Baudrate #HRA Send ASCII #HRU Send Unicode #HRS Send Binary #HRF Send File #HRR Receive Data to Sendepuffer #HRB Receive Data to Stringregister #HSP SPI Parameter #HSC SPI Chip Select Einstellung #HSA Send ASCII #HSU Send Unicode #HSS Send Binary #HSF Send File #HSR Receive Data to Sendepuffer #HSB Receive Data to Stringregister #HIP I²C Parameter #HIA Send ASCII #HIU Send Unicode #HIS Send Binary #HIF Send File #HIR Receive Data to Sendepuffer #HIB Receive Data to Stringregister
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
55 / 172
EA uniTFT050-A
Sound #H
#HTP Sound abspielen #HTS Sound stoppen
Video Input #H
#HVB Video Input Randeinstellungen
Uhrzeit #W
#WTD Uhrzeit setzen #WGC Objektguppe als Uhr definieren #WDF Standard Printformat für RTC festlegen #WDM Monatsnamen festlegen #WDW Wochentage festlegen #WSA Uhrzeit Ausgeben: Print ASCII #WSU Uhrzeit Ausgeben: Print Unicode #WSB Uhrzeit Ausgeben: Binär #WDY Basisjahr Uhrzeitberechnung
Files auf der SD-Card #F
#FDC Ordner erstellen #FDD Ordner löschen #FDS Set Working Directory #FDG Get Working Directory #FDR Auflistung aller Ordner und Dateien #FDA Auflistung aller Ordner und Dateien als ASCII #FDL Auflistung aller Ordner #FWO Write open #FWC Write close #FWP Write position #FWD Write data #FWA Write ASCII String #FWU Write Unicode String #FWR Write Register #FWS Write Stringregister #FSO Write Objektfile #FRO Read open #FRC Read close #FRP Read position #FRD Read data #FRA Read ASCII #FRU Read Unicode #FRR Read Register #FRS Read Stringregister #FRB Read Bytes to Stringregister #FRW Read Words to Stringregister #FFD File löschen #FFI File / Directory Information #FFR File / Directory Rename #FFC File / Directory Copy #FFM File / Directory Move #FFT File / Directory Timestamp ändern #FFA File / Directory Attribute ändern #FNF Filenames to Stringregister #FND Directories to Stringregister
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
56 / 172
EA uniTFT050-A
Systembefehle #X
#XCR RS232 Parameter #XCS SPI Parameter #XCI I²C Parameter #XPS Projektpfad setzen #XPG Projektpfad anfordern #XCB Backlight - Helligkeit #XCF Backlight - Kurve und Frequenz #XAS Backlight - Autodimming #XAL Backlight - Autodimming Retrigger #XSA ASCII-String to Sendepuffer #XSU Unicode-String to Sendepuffer #XHS Hardcopy to Sendepuffer #XHF Hardcopy to File #XVS Hardcopy Videoinput to Sendepuffer #XVF Hardcopy Videoinput to File #XXT Touch abgleich #XCO Display Ausrichtung #XIV Firmwareversion ausgeben #XID ModulParameter ausgeben #XIS SD-Card Speicher #XIR RAM Speicher #XCU Display Updatetime #XXW Programmlauf pausieren #XCV Virtuelle Displayauflösung #XCP Protokoll Ein/Aus #XFB Reboot
Antwort / Rückmeldung
<ESC>SEU Inhalt <ESC>TQS Taster / Schalter Zustand <ESC>TQR Radiogroup <ESC>TQK Keyboard <ESC>TQI Instrumentvalue <ESC>VFC Stringfile count strings <ESC>VSA Stringregister ASCII <ESC>VSU Stringregister Unicode <ESC>VRG Register ausgeben <ESC>HPI Anzahl Portbausteine <ESC>HPR Port Read <ESC>HBR Portpin Read <ESC>HAR Wert lesen <ESC>HRR RS232 data <ESC>HSR SPI data <ESC>HIR I²C data <ESC>WSA Ausgabe ASCII <ESC>WSU Ausgabe Unicode <ESC>WSB Ausgabe Binär <ESC>FDG Get Working Directory <ESC>FDR Read Directory <ESC>FDA Read Directory ASCII <ESC>FDL List Directories only <ESC>FFI Read File/Directory info <ESC>FRD Read File data <ESC>XPG Get Projectpath <ESC>XIV Versionsinformation <ESC>XID Displayinformation
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
57 / 172
<ESC>XIR RAM Info <ESC>XIS SD Card Info <ESC>XHS Hardcopy
EA uniTFT050-A
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
58 / 172
EA uniTFT050-A

Befehlssyntax

Alle Befehle sind gleich aufgebaut:
Start Befehlscode Parameter Abschluss
# XXX 123, $52, %01101010, "Hello"; R0 [CR]LF ASCII : 35 (0x23)
UniCode: 23 (0x23 0x00)
Parameter
Zahlen
123 dezimale Übergabe als ASCII-Zeichen $5A hexadezimale Übergabe als ASCII Zeichen %
1010001 5-8 Übergabe eines Bereichs. Befehle die Eigenschaften mehrerer Objekte beeinflussen können als
?x Code von einem Zeichen (Unicode/ASCII) R0 ...
R499 Q0 ...
Q499
(....) Kalkulationsstring Ergebnis übernehmen
G len32
data....
!index! Werte des Indexes aus einem Stringfile übernehmen
Strings
"string" oder 'string'
"str" 32 "str"
"str1"; "str2"
S0 ... S499
T0 ... T499
U"Hello" Zeichen nach dem U als 16 Bit Unicode (bis zum nächsten # oder V auch CR + LF) V"Hello" Zeichen nach dem V als 8 Bit ASCII (bis zum nächsten # oder U auch CR + LF) !index! String des Indexes aus einem Stringfile übernehmen
binäre Übergabe als ASCII Zeichen
Objektbereich übergeben werden. In diesem Fall Objekt-ID 5,6,7,8
Übergabe des Registerwertes
Indizierte Übergabe des Registerwertes (Pointer) ® R (R0 ... R499)
Übergabe von binären Daten: len32 gibt die Datenlänge an (bereits als binärer 32-Bit Wert)
normale Stringübergabe
Normaler String mit beliebigen Codes, welche mit in den Gesamtstring eingetragen werden
Semikolon bildet den Stringabschluss, wichtig bei der Übergabe zweier Strings oder wenn andere
Parameter folgen. Stringregister übernehmen
Stringregister aus Registernummer übernehmen S(R0 ... R499)
3-stellige Buchstabenfolge Angabe der Parameter ASCII : [10] 13 ([0x0D] 0x0A)
UniCode: [10] 13 ([0x0D 0x00] 0x0A 0x00) CR ist optional
Die einzelnen Parameter werden mit Leerzeichen (' '), Komma (','), Semikolon (';') oder Punkt ('.') getrennt. Für die
Trennung von Strings ist ein Semikolon zwingend erforderlich.
Befehlsabschluss
Der Befehlsabschluss ist immer ein LF (0x0A). Ein vorangestelltes CR (0x0D) ist erlaubt und wird ignoriert.
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
59 / 172
EA uniTFT050-A
Kommentare
In Makrofiles können Kommentarzeilen eingefügt werden. Ein Kommentar beginnt mit #- und gilt bis Zeilenende / Befehlsabschluss (LF).
Kalkulationen
Jeder numerische Parameter kann durch eine Kalkulation ersetzt werden. Die Kalkulation muss in Klammern () eingeschlossen als Parameter übergeben werden. Unter den Kalkulationsbefehle finden Sie eine Auflistung aller Operationen, darunter mathematische und logische, aber auch Modul-bezogene, wie zum Beispiel Uhrzeit oder Objekteigenschaften auslesen sowie Portfunktionen.
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
60 / 172
EA uniTFT050-A

Terminalfenster

Im Terminalfenster werden alle empfangenen Daten direkt angezeigt. Dieses Fenster ist nützlich um während der Entwicklungszeit schnell einfache Ausgaben zu erstellen oder Fehlermeldungen zu erhalten.
Terminalfenster Einstellungen
Größeneinstellung#Y
D W
Terminal Zoom #Y
D S
Farbeinstellung #Y
D C
Zeichenreihenfol ge (Layer)
Terminalfenster Ein-/Ausschalte n
Cursor blinken #Y
Position Cursor setzen
Position Cursor sichern
Position Cursor wiederherstellen#YC
#YDLLayer Festlegung der Zeichenreihenfolge: Layer =0 (hinter allen anderen
#Y D O
C B
#Y C P
#Y C S
R
X (0), Y (0), Anker (7), Spalten (Breite/8), Zeilen (Höhe/16)
width, height (=width),
virtScrOff (0)
Text-RGB, Text-
Opacity (100), Hintergrund­RGB ($000000), Hintergrund­Opacity (0)
Output,
Sichtbar (=Output)
Cursor Blinkender Cursor =0 (aus); =1 (an)
Spalte, Zeile (keine
Änderung)
Abmessungen des Terminalfensters definieren. Die Breite errechnet sich durch die Angabe der Spalten und Zeilen und die Schriftgröße (8x16): Breite in Pixeln =8*Spalten; Höhe in Pixeln =16*Zeilen
Terminalzoom. Width und height sind in %. Der Parameter virtScrOff (0=ignorieren, 1=anpassen) gibt an, ob der virtuelle Screen (siehe
#XCV) beachtet werden soll oder nicht. Dieser Befehl wird nur benötigt,
wenn das Terminal eine andere Schriftgröße bekommen soll, oder das Projekt für eine andere Displayauflösung geschrieben worden ist. (ab V1.1)
Farbe und Opazität der Schrift und des Terminalhintergrundes einstellen.
Objekten); =1 (im Vordergund) Ausgaben im Terminalfenster: Output =0 (Ausgaben verwerfen); = 1
(Ausgaben ausführen) Sichtbar =0 (Terminal unsichtbar); = 1 (Terminal sichtbar)
Positionierung des Cursors innerhalb des Terminalfensters
Aktuelle Cursorposition sichern
Cursor auf die zu Letzt gesicherte Position setzen.
Hier geht es zu den Befehlsbeispielen.
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
61 / 172
Terminalfenster Ausgaben
EA uniTFT050-A
Ausgabe Zeichenkette
Ausgabe formatierte Zeichenkette
Ausgabe Uhrzeit #Y
Ausgabe Modulkonfigurati on
Ausgabe Versionsstring#YP
Hier geht es zu den Befehlsbeispielen.
#YPAStrings und Codes Ausgabe der Zeichen(ketten) im Terminalfenster
#YPF"Formatstring"; value1,
value2, ...., valueN,
value1, ..., valueN, ... "Dateformat" (Standar
P
d (#WDF));
D
date (akt. Zeit)
#Y PI
V
Ausgabe einer formatierten Zeichenkette. Wird der Variablen Satz wiederholt wird der Formatstring erneut verwendet und ebenfalls Ausgegeben.
Ausgabe von Uhrzeit und Datum. Die Darstellungsweise wird durch das
Dateformat vorgegeben.
Ausgabe der ModulParameter, wie Auflösung und Interfaceeinstellungen
Ausgabe der Firmwareversion des Moduls.
Formatierte Strings
Formatierte Strings werden in Zeichenkettenausgaben verwendet. Das Format ist an die C-Funktion "printf" angelehnt. Die Funktion besteht aus einem Formatierungsteil und den konkret auszugebenden Argumenten. Dabei werden für die verschiedenen Datentypen folgende Platzhalter im Format-String verwendet:
Typ Platzhal
ter
Festkommawert Dezimal
Oktalwert %o 645 Hexwert %x, %X 7a, 7A Float %f, 299.57 Wissenschaftliche
Notation Kürzeste Notation:
Float oder Wissenschaftlich
Character %c a
%d 42
%e, %E 2.9957e+2, 2.9957E+2
%g, %G299.57
Beispiel
Jeder Platzhalter kann weitere Spezifiziert werden: Flags, Feldbreite und .Genauigkeit - in dieser Reihenfolge:
Flag Erklärung
- Wert innerhalb Feldbreite linksbündig ausrichten. Rechtsbündig ist die Defaultausgabe + Ausgabe von '+' bei positiven, '-' bei negativen Werten (space) Ausgabe von ' ' (space) bei positiven, '-' bei negativen Werten # Bei Hex- und Oktalausgabe wird das 0x, 0X bzw. 0 bei Werten ¹ 0.
Bei Float und wissenschaftlicher Notation wird immer ein '.' ausgegeben - auch wenn nur noch 0 folgt. Default wird das Komma nur ausgegeben wenn Werte folgen
0 Innerhalb der Feldbreite wird Linksbündig nicht benötigter Platz mit 0 aufgefüllt.
Feldbreite Erklärung (number) Mindestbreite des Feldes für die Ausgabe
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
62 / 172
EA uniTFT050-A
* Feldbreite wird aus der Argumentenliste übernommen. Wobei die Feldbreite direkt vor dem
eigentlich Argument in der Liste steht.
.Genauigkeit Erklärung .number Für Integer: Minimum Anzahl an Stellen (default =1)
Float: Minimum Anzahl nach dem Komma (default =6)
.* Anzahl der Stellen wird aus der Argumentenliste übernommen. Wobei die Anzahl der Stellen
direkt vor dem eigentlich Argument in der Liste steht.
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
63 / 172
EA uniTFT050-A

Textausgabe / Zeichenketten

Befehlsgruppe um Zeichenketten darzustellen: Einfache Ausgaben, sowie fomartierte sich selbst ändernde Ausgaben sind mit den folgenden Befehlen möglich.
Einfache Zeichenkette
Zeichenkette platzieren
Zeichenkette ändern
Hier geht es zu den Befehlsbeispielen.
#S
Obj-ID, TextStyle-Nr.,
S
X,Y,Anker, "String"
P #S
Obj-ID, "String" Ändert eine vorhandene Zeichenkette. Andere Objekteigenschaften S C
Formatierte Zeichenketten
Formatierte Zeichenkette platzieren
Formatierte Zeichenkette ändern
Formatierte Zeichenkette Parameter ändern
#SFPObj-ID, TextStyle-Nr.,
X,Y,Anker,
"Formatstring"; value1,
value2, ...., valueN,
value1 ...,valueN,...
#SFFObj-ID, "Formatstring";
value1, value2, ....,
valueN
#SFCObj-ID, value1, value2,
...., valueN
Eine Zeichenkette an die Position X|Y|Anchor platzieren. Die TextStyle-Nr. gibt das Aussehen der Zeichenkette an.
(Postion, Style usw.) bleiben unverändert erhalten
Eine formatierte Zeichenkette an die Position X|Y|Anchor platzieren. Die TextStyle-Nr. gibt das Aussehen der Zeichenkette an. Wird der Variablen Satz wiederholt wird der Formatstring erneut verwendet und hinzugefügt.
Ändern einer vorhandenen Zeichenkette in eine formatierte
Zeichenkette. Andere Objekteigenschaften (Postion, Style usw.)
bleiben unverändert erhalten Ändern der Parameter der formatierten Zeichenketten.
Hier geht es zu den Befehlsbeispielen.
Autoupdate formatierte Zeichenketten
Autoupdate formatierte Zeichenkette platzieren
Autoupdate formatierte Zeichenkette ändern
Autoupdate formatierte Zeichenkette Kalkulation ändern
Hier geht es zu den Befehlsbeispielen.
#S
Obj-ID, TextStyle-Nr., A
X,Y,Anker, P
"Formatstring";
value1 (Kalkulation),
value2, ...., valueN
#SAFObj-ID, "Formatstring";
value1 (Kalkulation),
value2, ...., valueN
#S
Obj-ID, Kalkulation Kalkulation der Autoupdate-Zeichenkette ändern. Sobald sich der Wert A C
Eine formatierte Zeichenkette an die Position X|Y|Anchor platzieren. Die TextStyle-Nr. gibt das Aussehen der Zeichenkette an. Die
formatierte Zeichenkette erneuert die Ausgabe sobald sich der
Parameter value1 (Kalkulation) ändert. Hinweis, die anderen Parameter werden auch neu Berechnet, wenn es sich um eine Kalkulation handelt. Sie führen aber nicht zu einem Refresh.
Ändern einer vorhandenen Zeichenkette in eine Autoupdate­Zeichenkette. Andere Objekteigenschaften (Postion, Style usw.) bleiben unverändert erhalten
der Kalkulation ändert wird die Zeichenkette neu Ausgegeben.
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
64 / 172
Uhrzeit / Datum
EA uniTFT050-A
Uhrzeit / Datum Zeichenkette
Uhrzeit / Datum ändern
Uhrzeit / Datum Zeichenkette ändern
Editboxen
Editbox-String anzeigen
Editbox Defaultstring
Editbox Strings / Codes senden#SE
Editbox mit Keyboard verbinden
Editbox aktivieren / deaktivieren
Valid codes #S
Eingabemaske #S
#S
Obj-ID, TextStyle-Nr., D
X,Y,Anker, P
"Dateformat" (Standar
d (#XDF));
date (akt. Zeit)
#S
Obj-ID, date (akt. Zeit) Ändert die auszugebende Zeit des Datumsstrings. D C
#SDFObj-ID, "Dateformat";
date (akt. Zeit)
#S
Obj-ID, DrawStyle-Nr., E
X,Y,Anker, P
Breite,Höhe,Radius,
TextStyle-Nr.,
distanceX(0),
distanceY (0)
#S
Obj-ID, "String"; E
"String (Obj-ID+1)";
D
"String (Obj-ID+2)";....
Obj-ID, "String";
"String (Obj-ID+1)";
C
"String (Obj-ID+2)";....
#S
Keyboard-ID, Obj­E
ID1, ..., Obj-ID2 K
#S
Obj-ID (0), Keyboard-
E
ID (0)
A
Obj-ID, Codes Nur die mit dem Parameter definierten codes werden in der Edit-box E R
Obj-ID, "maskstring"; E
placeholder M
Ausgabe von Uhrzeit und Datum. Die Darstellungsweise wird durch das
Dateformat vorgegeben. Date gibt die Uhrzeit / Datum an. Wird die
aktuelle Uhrzeit ausgegeben passt sich die Ausgabe der aktuellen Uhrzeit automatisch an. Die TextStyle-Nr. gibt das Aussehen der Zeichenkette an.
Ändert eine Zeichenkette in eine automatische Ausgabe der Uhrzeit und des Datums.
Eine Editbox platzieren. Sie findet vor allem in der Eingabe zusammen mit einer Tastatur Verwendung. DrawStyle-Nr. definiert das Aussehen der Hintergrundes (Box). Radius gibt den Radius der Eckenabrundung an. TextStyle-Nr. definiert das Schriftbild. Die Distance gibt den Abstand zum Rand der Box an.
Standard-String für eine Editbox festlegen. Weitere Strings geben den Default-String für die Obj-ID+1 an.
Strings und Codes an eine Editbox senden. Weitere Strings / Codes sendet an die Editbox mit der Obj-ID+1 usw.
Das Keyboard mit einer oder mehreren Editboxen (Obj-ID) verbinden.
Deaktivieren: Obj-ID =0; Keyboard-ID =0(alle), ¹ 0(Editboxen deaktivieren die dem Keyboard zugeordnet sind) Aktivieren: Obj-ID der Editbox. Der Parameter Keyboard-ID wird nicht benötigt.
angezeigt. Codes sind durch Komma getrennt oder als Bereichsstring angegeben: z.B. "0-9A-Za-z", welcher alle Ziffern und das lateinische Alphabet erlaubt (ab V1.2).
Eingabemaske für Editbox definieren. Der Parameter placeholder definiert den sichtbaren Charactercode als Platzhalter, z.B. '_'. Maskstring:
Integer %maxvalueI or %from;toI Float %maxvalueF or %from;toF ASCII %digitsA Unicode %digitsU Range
(#SER)
%digitsR
Beispiel Zeit: "Time: %23I:%59I:%0;59I" (ab V1.2)
Password input #S
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
Obj-ID, wildcardcode Anstelle des eigentlich eingegeben Codes wird der wildcardcode E W
angezeigt, was für eine Passworteingabe nützlich ist (ab V1.2).
65 / 172
Hier geht es zu den Befehlsbeispielen.
StringBox
EA uniTFT050-A
StringBox anzeigen
StringBox Styles
Zeile hinzufügen #S
Zeile entfernen #S
File anzeigen #SBFObj-ID, String-Nr.,
Set visible line #S
#S
Obj-ID, X,Y,Anker, B
Breite,Höhe,Radius, P
scrollbar breite
(Texthöhe)
#S
Obj-ID, DrawStyle-Nr. B
Background, S
DrawStyle-Nr.
Scrollbar, TextStyle-
Nr., DistanceX (0),
DistanceY (0),
AutoWrap (1)
Obj-ID, String-Nr., B
"String"; "String A
(Nr+1)"; "String
(Nr+2)";....
Obj-ID, String-Nr., B
String-Nr. ...
D
<textfile>
Obj-ID, Line-Nr., Zeit B
(0), Pfad-Nr (0)
O
Eine StringBox platzieren. Sie eignet sich für die Darstellung von Hilfetexten und Informationen. Die Scrollbarbreite setzt die Breite des Schiebereglers am Rand. Der Befehl #SBP darf erst nach Festlegung der Styles (#SBS) erfolgen. (ab V1.3)
Bei einer StringBox das Aussehen definieren. Der Background gibt den Boxhintergrund und die Outline vor. Der Style Scrollbar definiert den Balken des Schiebereglers. Distance X/Y gibt den Offset vom linken bzw. oberen Rand an. AutoWrap =1 aktiviert den automatischen Zeilenumbruch sollte die Zeile nicht in das Fenster passen, bei =0 wird die Zeile abgeschnitten und nicht dargestellt. (ab V1.3)
Der StringBox Obj-ID weitere Strings zufügen. String-Nr. gibt die Position vor. Die erste Zeile hat die Nummer 1. Ist String-Nr. = 0 wird der String am Ende hinzugefügt. (ab V1.3)
Aus der StringBox einzelne oder mehrere Strings entfernen. String-Nr. =0 alle Strings entfernen. Es können auch Bereiche angegeben werden, z.B. 1-8. (ab V1.3)
Eine StringBox kann zusätzlich komplette Textfiles anzeigen. Der Parameter <textfile> gibt dabei den Pfad zum file an, der Parameter String-Nr. gibt die Position an, wo das File eingefügt werden soll, bei =0 wird das File am Ende der bestehenden Strings angezeigt. (ab V1.3)
Per Befehl kann die anzuzeigende Zeile (Line-Nr.) vorgegeben werden. Das Scrollen kann animiert werden. Hierfür ist der Parameter Zeit ¹ 0 zu wählen und eine Pfad-Nr vorzugeben. Die Zeit wird in 1/100s angegeben. Ist die Zeit Positiv wird die Zeitdauer für den gesamten Scrollbereich verwendet, damit ist die Geschwindigkeit konstant. Ist die Zeitdauer negativ wird die Zeit angegeben bis die neue Zeile erreicht wird, somit ist die Geschwindigkeit abhängig von der zu scrollenden Zeilenanzahl. (ab V1.3)
Hier geht es zu den Befehlsbeispielen.
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
66 / 172
EA uniTFT050-A

Bilder / Vektorgrafiken

Befehlsgruppe um Bilder darzustellen. Wir empfehlen die Nutzung von Vektorgraphiken, da die Darstellung schnell und verlustfrei erfolgt. Alle Bilder, Vektorgraphiken und Gif-Animationen müssen in das jeweilige Format gewandelt werden. Die Designsoftware uniSKETCH wandelt die Daten automatisch in das korrekte Format.
Bild platzieren #P
Bildanimation ändern
Obj-ID, 'name'; P
X,Y,Anker (1), P
Breite (0),Höhe (0),
Winkel (0)
#PPAObj-ID,
Animationstyp (0),
Time, Bild-Nr.
Bild ('name') anzeigen. Die Breite und Höhe wird in Pixeln angegeben. Wird Breite =0 und Höhe =0 übergeben wird die Originalgröße des Bildes übernommen. Ist nur einer der beiden Parameter 0 wird das Bild proportional auf den jeweilig anderen angepasst.
Ändert eine vorhandene Bildanimation. Die Zeit (Time) und Bild-Nr. wird nur beachtet wenn der Animationstyp =7 ist.
Animationstyp:
1 = Zyklisch 5 = Einmalig 2 = Zyklisch
Rückwärts 3 = Ping
Pong 4 = Ping
Pong Rückwärts
6 = Einmalig Rückwärts
7 = Goto
Videobild platzieren
Bild über die Schnittstelle laden und platzieren
Hier geht es zu den Befehlsbeispielen.
#P
Obj-ID, X,Y,Anker(1), V
Breite(0),Höhe(0),
P
Winkel (0)
#PIPObj-ID, Binäre Daten;
X(0),Y(screen height -
1),Anker (1),
Breite (0),Höhe (0),
Winkel (0)
Anzeigen eines Videobildes an einer Postion. Die Breite und Höhe wird in Pixeln angegeben. Wird Breite =0 und Höhe =0 übergeben wird die Originalgröße des Videobildes übernommen. Ist nur einer der beiden Parameter 0 wird das Videobild proportional auf den jeweilig anderen angepasst. Der Videoeingang wird mit dem Befehl #HVB parametrisiert.
Ein Bild anzeigen. Statt des Bildnamens werden in diesem fall Binäre Daten (epg/evg) über die Schnittstelle übertragen und dann identisch zum Befehl #PPP platziert. (ab V1.3)
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
67 / 172
EA uniTFT050-A

Touchfunktionen

Befehlsgruppe um Touchfunktionen zu ermöglichen. Das Modul muss mit einem Touch ausgerüstet sein (Bestellnummern: EA uniTFTxxx-ATC oder EA uniTFTxxx-ATP). Es können einfache Taster und Schalter platziert werden, sowie Radiobuttons, Schieberegler, Bargraphen und Dreh-/Zeigerinstrumente.
Taster und Schalter
#T
Touch bereic h Recht eck
Touch bereic h Ellips e/Krei s
Touch bereic h Bild
Taster
Schalter
Taster
Schalter
Taster Schalter
Obj-ID, ButtonStyle­B
Nr., "Text normal"; R
"Text down";
X,Y,Anker (5),
#T
Breite(ButtonStyle),
S
Höhe(ButtonStyle)
R #T
Obj-ID, ButtonStyle­B
Nr., "Text normal"; E
"Text down";
X,Y,Anker (5),
#T
Breite(ButtonStyle),
S
Höhe(ButtonStyle)
E
Obj-ID, ButtonStyle-
#
Nr., "Text normal";
T
"Text down";
B
X,Y,Anker (5),
P
Breite(ButtonStyle),
#
Höhe(ButtonStyle)
T S P
Einen Touchbereich platzieren. Der Parameter "Text normal" gibt die Ausgabe im ungedrückten, "Text down" im gedrückten Zustand an. Im ButtonStyle wird das Aussehen angegeben. Die Breite und Höhe des Buttons wird aus dem ButtonStyle übernommen, kann aber mit den letzten Parametern überschrieben werden.
Einen Touchbereich platzieren. Der Parameter "Text normal" gibt die Ausgabe im ungedrückten, "Text down" im gedrückten Zustand an. Im
ButtonStyle wird das Aussehen angegeben. Die Breite (Æ X) und Höhe (Æ Y) des Buttons wird aus dem ButtonStyle übernommen, kann
aber mit den letzten Parametern überschrieben werden.
Einen Touchbereich platzieren. Der Parameter "Text normal" gibt die Ausgabe im ungedrückten, "Text down" im gedrückten Zustand an. Im
ButtonStyle wird das Aussehen angegeben. Die Breite (in Pixel) und Höhe (in Pixeln) des Buttons wird aus dem ButtonStyle übernommen,
kann aber mit den letzten Parametern überschrieben werden.
Touch bereic h Icon
Touch bereic h Objekt
Zustand Taster / Schalter abfragen
Hier geht es zu den Befehlsbeispielen.
Taster Schalter
Taster
Schalter
Obj-ID, X,Y,Anker,
#
'Buttonname normal';
T
Breite normal (0),
B
'Buttonname down' (ke
I
ine Änderung);
#
Breite down (0),
T
'Soundname'
S I
Obj-ID, ButtonStyle-
#
Nr., "Text normal";
T
"Text down";
B O
# T S O
#T
Obj-ID1, ..., Obj-IDn Der Zustand des Tasters / Schalters (Obj-ID) wird in den Sendepuffer Q S
Eine Touchbereich ohne ButtonStyle platzieren. 'Buttonname
normal/down' gibt die anzuzeigenden Bilder an. Die zugehörige Breite (in Pixeln) die Größe des Bildes. Die Höhe wird automatisch
intern proportional bestimmt. Bei Breite = 0 wird die Originalgröße des Bildes angezeigt. Der letzte Parameter 'Soundname' gibt das Soundfile an, welches bei Touchbetätigung abgespielt wird.
Ein beliebiges bestehendes Objekt wird in ein touchbaren Bereich gewandelt. Aus dem ButtonStyle werden Zusätzliche Informationen wie z.B. Soundname entnommen. Handelt es sich bei dem zu wandelten Objekt um eine grafische Primitive (z.B. Polygon) mit dem selben DrawSytle wie im ButtonStyle, wird für den gedrückten Zustand automatisch der DraswStyle des ButtonStyles übernommen.
gestellt.
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
68 / 172
EA uniTFT050-A
Einstellung von Tastern und Schaltern
Beschriftung ändern
Zustand ändern #T
Aktivieren / Deaktivieren
Rückmeldung Touchbereich#TC
Radiogroup
Schalter / Taster hinzufügen
Zustand der Radiogruppe abfragen
#TCLObj-ID, "Text normal";
"Text down";
State, Obj-ID1, ..., C
Obj-IDn
S #T
Active, Obj-ID1, ..., C
Obj-IDn
E
Event, Filter, Obj-
ID1, ..., Obj-IDn R
#T
Group-ID, Obj-ID1, ..., R
Obj-IDn
A #T
Group-ID1, ..., Group- Q
IDn
R
Beschriftung eines Touchbereichs ändern
Zustand der Touchbereiche (Obj-ID) ändern: State =1 ungedrückt; =2 gedrückt.
Aktvieren oder Deaktivieren von Touchbereichen (Obj-ID): Active =0 disable; =1 enable
Jedem Touchbereich kann zugeordnet werden ob und welche
Rückmeldungen in den Sendepuffer gelangen. Event =1 Up; =2 Down;
=4 Drag; =3 Up/Down; =5 Up/Drag;... Ob die Rückmeldung gesendet wird kann davon abhängig gemacht werden ob ein Makro definiert ist. Filter =0 nur senden wenn kein Makro definiert ist; =1 immer senden. Bei der Definition von Tastern wird automatisch der gedrückte Zustand gesendet wenn kein Makro definiert ist (= #TCR 2,0, Obj-ID). Bei Schaltern beide Zustände (= #TCR 3,0, Obj-ID). Bei Bargraphen und Instrumenten das Loslassen (= #TCR 1,0, Obj-ID). Eine Editbox sendet den Inhalt beim Deaktivieren (= #TCR 1,0,Obj-ID).
Einer bestehenden oder neuen Radiogruppe (Group-ID) werden eine oder mehrere Schalter (Obj-ID) zugefügt.
Der aktive Schalter der Radiogruppe (Group-ID) wird in den Sendepuffer gestellt.
Hier geht es zu den Befehlsbeispielen.
Spezielle Touchfunktion
Interne Verarbeitung von Touchaktionen
Hier geht es zu den Befehlsbeispielen.
#TIDmask, Obj-ID1, ...,
Obj-IDn
Einem Objekt (Obj-ID) kann eine spezielle Touchaktion zugewiesen, bzw. Toucheingabe ermöglicht werden: mask =1 interne Verarbeitung (z.B. Bargraphen / Instrumente / Editboxen per Touch einstellbar); =2 Move (Objekt kann per Touch durch den Bediener verschoben werden); =4 Objekt kann propotional vergrößert/verkleinert werden; =8 Objekt kann um den aktiven Anker gedreht werden; =16 Größenänderung mit zwei Fingern; =32 Rotieren mit zwei Fingern; =128 das Objekt bleibt unverändert, Touchmakros werden ausgeführt (freier Touchbereich). Die einzelnen Bits von mask können mit Bitveroderung zusammengefasst werden, sodass mehrere Touchaktion gleichzeitig möglich sind.
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
69 / 172
EA uniTFT050-A

Zeichnen / grafische Primitive

Befehlsgruppe um geometrische Formen und Linien darzustellen.
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
70 / 172
Geometrische Figuren
EA uniTFT050-A
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
71 / 172
EA uniTFT050-A
Rechteck #G
n-Eck #G
Stern #G
Kreis / Ellipse #GETObj-ID, DrawStyle-Nr,
Kreissektor / Kuchenstück
Kreissegment #G
Kreisbogen #G
Polylinie #GPLObj-ID, DrawStyle-Nr,
Polygon #GPFObj-ID, DrawStyle-Nr,
Polylinie / Polygon Punkt hinzufügen
Pfad #G
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
Obj-ID, DrawStyle-Nr, R
X,Y,Anker, Breite, R
Höhe (=Breite),
Radius (0), Border (0),
Winkel (0)
Obj-ID, DrawStyle-Nr, G
X,Y,Anker, Radius, P
Ecken, Border (0),
Winkel (0)
Obj-ID, DrawStyle-Nr, G
X,Y,Anker, Radius1, S
Radius2, Spitzen,
Border (0), Winkel (0)
X,Y,Anker, RadiusX,
RadiusY (=RadiusX),
Border (0), Winkel (0)
#G
Obj-ID, DrawStyle-Nr, E
X,Y,Anker, RadiusX, P
RadiusY, StartWinkel,
EndWinkel, Winkel (0)
Obj-ID, DrawStyle-Nr, E
X,Y,Anker, RadiusX, S
RadiusY, StartWinkel,
EndWinkel, Winkel (0)
Obj-ID, DrawStyle-Nr, E
X,Y,Anker, RadiusX, A
RadiusY, StartWinkel,
EndWinkel, Border(0),
Winkel (0)
X1,Y1, X2,Y2, ...
Xn,Yn
X1,Y1, X2,Y2, ...
Xn,Yn
#GPAObj-ID, X1,Y1,
X2,Y2, ... Xn,Yn
Obj-ID, DrawStyle-Nr, P
X,Y, Segment1, ..., P
SegmentN
Ein Rechteck zeichnen. Der DrawStyle gibt das Aussehen vor, der Parameter Radius rundet die Ecken ab. Border führt zu einem Rahmen. Der Winkel ist die Drehung um den Anker.
Ein regelmäßiges Vieleck mit Anzahl Ecken. Radius gibt die Größe der Figur vor. Der Winkel ist die Drehung um den Anker. Bei Anker =0 wird der Konstruktionspunkt verwendet.
Stern zeichnen: Die erste Spitze wird oberhalb des Mittelpunktes auf Radius1 gesetzt. Dann erfolgt die Verbindung zu Radius2 dann zurück zu Radius1 usw. bis die Anzahl Spitzen erreicht ist.
Kreis / Ellipse zeichnen. Border >0 führt zu einem Ring. Der Winkel ist die Drehung um den Anker.
Ein Kuchenstück zeichnen, Start/EndWinkel geben die Größe des Stücks an
Ein Kreissegment zeichnen, Start/EndWinkel geben die Größe des Segments an
Ein Kreisbogen zeichnen. Ist Border >0 entsteht ein Ringsektor
Eine Polylinie zeichnen.
Ein gefülltes Polygon zeichnen. Es wird automatisch eine Verbindung zwischen Xn,Yn und X1,Y1 eingefügt.
Einer bestehender Polylinie oder Polygon am ende Punkte hinzufügen. Beim Polygon wird die Figur automatisch geschlossen.
Freier Pfad: X,Y gibt die Startposition an, gefolgt von einzelnen Segmenten:
Horizontale Linie ?H X Vertikale Linie ?V Y Linie ?L X,Y Kreisbogen ?C t,r, X,Y Elliptischer Kreisbogen ?E t,rx,ry,a, X,Y Quadratische
Bézierkurve Glatte quadratische
Bézierkurve Kubische Bézierkurve ?S c1x,c1y, c2x,c2y, X,Y Glatte kubische
Bézierkurve Pfad schließen ?Z Neue Startkoordinaten
(Unterpfad)
Großbuchstaben der Segmentbefehle: Absolute Koordinaten
?Q c1x,c1y, X,Y
?R X,Y
?T c2x,c2y, X,Y
?M X,Y
72 / 172
Hier geht es zu den Befehlsbeispielen.
EA uniTFT050-A
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
73 / 172
EA uniTFT050-A
Bargraphen / Instrumente
Befehlsgruppe um Bargraphen, Schieberegler und Dreh-/Zeigerinstrumente darzustellen
Bargraph
Bargraph rechteckig
Bargraph dreieckig
Bargraph gebogen
#I
Obj-ID, DrawStyle­B
Front, DrawStyle­R
Back, X,Y,Anker,
Breite,Höhe,
Radius (0),
Startwert (0),
Endwert (100),
Richtung (1),
Winkel (0)
#IBTObj-ID, DrawStyle-
Front, DrawStyle-
Back, X,Y,Anker,
Breite,Höhe,
Spitze (0),
Startwert (0),
Endwert (100),
Richtung (1),
Winkel (0)
#I
Obj-ID, DrawStyle­B
Front, DrawStyle­A
Back, X,Y,Anker,
Radius, Border,
Startwinkel,
Endwinkel,
Startwert (0),
Endwert (100),
Richtung (1)
Rechteck mit Abgerundeten Ecken (Radius) zeichnen. Aus dem DrawStyle-Front wird die Füllfarbe übernommen und das Band gezeichnet. Der DrawStyle-Back gibt die Hintergrund- und Rahmenfarbe vor. Der Startwert und Endwert bestimmen die beiden Grenzen des Bargraphen. Die Laufrichtung wird durch Richtung bestimmt: Richtung =0 Rechts nach Links; =1 Links nach Rechts
Dreieckiger Bargraph. Die Spitze befindet sich Links: Spitze =0 Unten; =1 Oben; =2 Mitte. Die Laufrichtung wird durch Richtung bestimmt: Richtung =0 zur Spitze; =1 von der Spitze weg
Gebogener Bargraph (Radius), die Dicke wird über den Parameter Border definiert. Die beiden Parameter Start-/Endwinkel geben die Größe des Bargraphen an. Richtung bestimmt die Drehrichtung: =0 Gegen den Uhrzeigersinn; =1 im Uhrzeigersinn
Hier geht es zu den Befehlsbeispielen.
Schieberegler
Schieberegler entlang eines Pfades
#I
Group-ID, Path-ID, G
Slide-Id, S
Tangential (0),
Startwert (0),
Endwert (100)
Wandelt eine bestehende Gruppe in ein Schiebregler um. Die Gruppe muss mindestens zwei bestehende Objekte beinhalten: einem Pfad (Path-ID) und dem Regler (Slide-ID). In der Gruppe können weitere Objekte vorhanden sein. Der Regler wandert dem Pfad entlang. Er kann sich dabei tangential dem Pfad gegenüber drehen (Tangential = 1) oder sich nicht mitdrehen (Tangential = 0).
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
74 / 172
Dreh-/Zeigerinstrumente
EA uniTFT050-A
Zeigerinstrument aus Objekten#IG
Zeigerinstrument als Pixelbild
Hier geht es zu den Befehlsbeispielen.
Group-ID, Indicator-ID,
StartWinkel, M
DeltaWinkel,
Startwert (0),
Endwert (100)
#I
Object-ID, P
'InstrumentName'; P
X,Y,Anker, Breite (0),
Höhe (0),
Startwert (0),
Endwert (100),
Winkel (0)
Wandelt eine bestehende Gruppe in ein Zeigerinstrument um. Der Parameter Indicator-ID bestimmt den Zeiger. Der Parameter
StartWinkel setzt den Zeiger auf den Startwert der Skala. Der DeltaWinkel bestimmt die Drehrichtung und Winkel vom StartWinkel
aus gesehen. Dieser Befehl ist aus Kompatibilitätsgründen vorhanden. Fertige
Instrumente aus der eDIP-Serie, welche mit den LCDTools erstellt wurden können direkt angezeigt werden. Die Größe wird über die Parameter Breite und Höhe festgelegt. Wird Breite =0 und Höhe =0 übergeben wird die Originalgröße des Instruments übernommen. Ist nur einer der beiden Parameter 0 wird das Instrument proportional auf den jeweilig anderen angepasst.
Einstellungen Bargraph / Instrumente
Wert setzen #I
Wert Autoupdate #IVAObj-ID, Kalkulation,
Wert Autoupdate Kalkulation ändern
Start-/Endwert ändern
Obj-ID, Wert, Time (0), V
Kurve (0)
S
Time (0), Kurve (0)
#I
Obj-ID, Update Sobald sich der Wert von Update ändert wird der Wert des Bargraphs / V C
#I
Obj-ID, Startwert, V
Endwert (no change)
N
Ein Bargraph bzw. Instrument auf einen Wert setzten. Der Parameter Time (in 1/100s) gibt zusammen mit der Kurve die Änderungsgeschwindigkeit an mit der der neue Wert erreicht wird. Ist die Zeit Positiv wird die Zeitdauer für den Gesamtauschlag verwendet, damit ist die Geschwindigkeit des Zeigers konstant. Ist die Zeitdauer negativ wird die Zeit angegeben bis der neue Wert erreicht wird, somit ist die Geschwindigkeit abhängig von der Entfernung.
Der Wert eines Bargraphs wird automatisch berechnet. Die neue Anzeige erfolgt immer wenn sich der Wert der Kalkulation ändert. Die Kalkulation gibt gleichzeitig den anzuzeigenden wert vor.
Instruments anhand der Kalkulation von #IVA neu berechnet.
Dem Bargraphen / Instrument einen neuen Start- und Endwert zuordnen. (ab V1.1)
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
75 / 172
EA uniTFT050-A

Keyboard / Tastatur

Befehlsgruppe um ein Keyboard für Werteingaben darzustellen. Das Modul muss mit einem Touch ausgerüstet sein (Bestellnummern: EA uniTFTxxx-ATC oder EA uniTFTxxx-ATP). Im Normalfall wird das Keyboard mit einer Editbox verbunden.
Definition Layout des Keyboards#KD
Definition alternativer Tastenbeschriftu ng / Styles
Keyboard anzeigen
Obj-ID, Nr,
"ButtonStringLine1"; .. B
.; "ButtonStringLineN"
#K
Obj-ID, Code1, D
ButtonStyle1, S
"Label1"; Code2,
ButtonStyle2, "Label2"
...; CodeN,
ButtonStyleN,
"LabelN";
#K
Obj-ID, K
ButtonStyleNormal, P
ButtonStyleSpecial,
X,Y,Anker, Gap,
Breite, Höhe (0),
Erscheinen (0)
Bestimmung der Tasten: Ein Keyboard kann bis zu 4 unterschiedliche Layouts (Nr) haben. Jedem Layout können Tasten(Codes) zugeordnet werden. Mehrere Zeilen werden durch Stringende ';' gekennzeichnet. Für spezielle Tasten stehen folgende Keycodes zur Verfügung: \1: (code 1) Anzeigen von Keyboard Nr 1 \2: (code 2) Anzeigen von Keyboard Nr 2 \3: (code 3) Anzeigen von Keyboard Nr 3 \4: (code 4) Anzeigen von Keyboard Nr 4 \5: (code 5) SHIFT (Verwende für einen Tastendruck das Keyboard Nr 2, dann automatisch wieder Keyboard Nr 1) \6: (code 6) CAPSLOCK (Umschalten zwischen Keyboard Nr 1 und Nr 2 \7: (code 7) DELETE \8: (code 8) BACKSPACE \9: (code 9) Reserviert für zukünftige Verwendung \A: (code 10) Reserviert für zukünftige Verwendung \B: (code 11) INSERT / OVERWRITE \C: (code 12) CLEAR \D: (code 13) SEND \E: (code 14) Cursor left \F: (code 15) Cursor right \G: (code 16) Reserviert für zukünftige Verwendung \H: (code 17) Reserviert für zukünftige Verwendung \I: (code 18) POS1 \J: (code 19) END \K: (code 20) Reserviert für zukünftige Verwendung \L: (code 21) CANCEL \M: (code 22) Cursor On/Off \N: (code 23) Platzhalter (Dieser Keycode wird nicht gezeichnet) \O..\V: (code 24 .. 31) 8 x Funktionstasten
Einem bestimmten Keycode (Code) eine spezielle Tastenbeschriftung ("Label") und ButtonStyle zuweisen. Diese Einstellung überschreibt die Styledefinition des Befehls #KKP. Die ButtonStyles werden nicht komplett übernommen, so wird die Größenangabe aus dem ButtonStyle ignoriert, der Radius wird einmalig übernommen. Ändert sich der Radius im ButtonStyle im Nachhinein wird dieser Werte nicht im Keyboard übernommen, eine Farbänderung oder TextStyleänderung hingegen schon.
Das Keyboard platzieren. ButtonStyleNormal definiert den Style für Buchstaben und Ziffern, ButtonStyleSpecial gilt für Sondertasten. Gap ist der Abstand zwischen einzelnen Tasten. Die Breite einer Taste errechnet sich automatisch aus der GesamtBreite bzw. der Höhe und den Abständen zwischen den Tasten. Ist die GesamtHöhe, oder Breite =0 wird diese Länge automatisch aus der resultierenden Tastengröße berechnet. Die Größenwerte sind die gewünschten Maximalwerte. Die Tasten werden gleichmäßig aufgeteilt. Der letzte Parameter (Erscheinen) gibt an ob das Keyboard sofort angezeigt wird (=0) oder nach dem eine Animation definiert (#AOA / #AOR) wurde in 1/100s erscheint (>=1).
Hier geht es zu den Befehlsbeispielen.
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
76 / 172
EA uniTFT050-A
Eingabeelement per Touch
Befehlsgruppe Toucheingabelemente wie Menüs, SpinBoxen oder ComboBoxen zu erstellen. Die Funktionen sind ab der Firmware V1.2 verfügbar.
Menü
Styles definieren #E
M S
Einträge definieren
Icons dem Eintrag zuordnen
Check / uncheck Eintrag#EM
Disable / enable Eintrag
Menü anzeigen #E
#E M D
#EMIObj-ID, Item,
C #E
M E
M P
Obj-ID, typ, TextStyle-
Nr., DrawStyle-Nr.
Box, DrawStyle-Nr.
Selekt, DrawStyle-Nr.
Icon, "soundname"
Obj-ID, Item, "Entries" Dem Elternobjekt Subitems zuordnen. Das Hauptmenü hat die
"Iconname"; Item2,
"Iconname2"
Obj-ID, check, Item,
Item2...
Obj-ID, enable, Item,
Item2...
Obj-ID, X,Y,Anker,
radius, DistX, DistY,
time
Dem Menü Styles und grafisches Verhalten zuordnen. Der Style TextStyle-Nr. definiert das Aussehen der Texte, DrawStyle-Nr. Box das Aussehen des Hintergrundes. Der Selektrahmen wird durch DrawStyle-Nr. Selekt vorgegeben, DrawStyle-Nr Icon gibt den Hintergrund der Icons an. Typ definiert Bitkodiert das Aufklappverhalten: Bit 0: =0 nach unten / =1 nach oben aufklappen; Bit 1: =0 left / right aligned Menübox; Bit 2: Submenü align =0 Top / =1 so Platzsparend wie Möglich
Itemnummer 0. Die Hauptmenüeintrage $0001 - $00FF. Die Submenüeinträge werden mit dem nächsten höherwertigen Byte zugeordnet z.B. $0301, ordnet dem dritten Eintrag des ersten Menüeintrages weitere Subeinträge zu. Die Einzelnen Einträge werden mit dem Entriestring vorgegeben - getrennt mit einem Pipe '|' . Ein Doppelpipe '||' fügt einen Trennstrich / Seperator hinzu.
Jedem Eintrag kann ein Icon zugeordnet werden. Der Eintrag muss bereits vorhanden sein um ein Icon zuzuordnen.
Ein Eintrag auswählen / deaktivieren. Visuell wird ein Haken angezeigt. Check =0 uncheck; =1 check; =2 toggle. Per default ist kein Eintrag ausgewählt.
Ein Eintrag aktivieren / deaktivieren. Ist ein Eintrag deaktiviert kann er nicht per Touch ausgewählt werden. Enable =0 disable; =1 enable; 2=toggle. Per default sind alle Einträge aktiv.
Ein vorher definiertes Menü platzieren. Der Radius gibt die Eckenrundung an. DisX/Y gibt den Abstand der Einträge zueinander an. Durch time kann das Öffnen / Schließen des Menüs zeitlich in 1/10 s animiert werden.
Hier geht es zu den Befehlsbeispielen.
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
77 / 172
ComboBox
EA uniTFT050-A
Styles definieren #E
C S
Einträge definieren
Icons dem Eintrag zuordnen
Disable / enable Eintrag
ComboBox anzeigen
Eintrag selektieren
#E C D
#ECIObj-ID, Item,
#E C E
#E C P
#E C O
Obj-ID, typ, TextStyle-
Nr., DrawStyle-Nr.
Box, DrawStyle-Nr.
Selekt, DrawStyle-Nr.
Scroll, "soundname"
Obj-ID, "Entries" oder
Obj-ID, "Formatstring";
sv, ev
"Iconname"; Item2,
"Iconname2"
Obj-ID, enable, Item,
Item2...
Obj-ID, X,Y,Anker,
radius, width, lines,
DistX, DistY, time
Obj-ID, Item Ein Eintrag (Item) per Befehl auswählen.
Styles und grafisches Verhalten zuordnen. Der Style TextStyle-Nr. definiert das Aussehen der Texte, DrawStyle-Nr Box das Aussehen des Hintergrundes. Der Selektrahmen wird durch DrawStyle-Nr. Selekt vorgegeben, DrawStyle-Nr. Scroll gibt das Aussehen des Scrollbars an. Typ definiert die Richtung: =0 nach unten =1 nach oben öffnen
Einträge hinzufügen. Der Befehl hat zwei Parametersätze. Der direkte und einfache Satz fügt Einträge durch Pipe '|' getrennt hinzu, z.B. "Entry 1|Entry 2...". Der Zweite Satz sieht ein Formatstring mit Start- (sv) und Endwert (ev) vor. z.B. "%02d";0,59
Jedem Eintrag kann ein Icon zugeordnet werden. Der Eintrag muss bereits vorhanden sein um ein Icon zuzuordnen.
Ein Eintrag aktivieren / deaktivieren. Ist ein Eintrag deaktiviert kann er nicht per Touch ausgewählt werden. Enable =0 disable; =1 enable; 2=toggle. Per default sind alle Einträge aktiv.
Eine vorher definierte ComboBox platzieren. Der Radius gibt die Eckenrundung an. Width gibt in Pixeln die Breite der Box an, bei width =0 wird die Breite der Box anhand des breitesten Eintrages automatisch ermittelt. Lines definiert die höchstens anzuzeigenden Einträge. Sind mehr Einträge definiert (#ECD) wird automatisch eine Scrollbar angezeigt. DisX/Y gibt den Abstand der Einträge zueinander an. Durch time kann das Öffnen / Schließen der ComboBox zeitlich in 1/10 s animiert werden.
Hier geht es zu den Befehlsbeispielen.
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
78 / 172
SpinBox
EA uniTFT050-A
Styles definieren #E
S S
Einträge definieren
Icons dem Eintrag zuordnen
Disable / enable Eintrag
SpinBox anzeigen
Eintrag selektieren
#E S D
#ESIObj-ID, Item,
#E S E
#E S P
#E S O
Obj-ID, typ, TextStyle-
Nr., DrawStyle-Nr.
Box, DrawStyle-Nr.
Selekt, "soundname"
Obj-ID, Box-Nr.,
"Entries" oder
Obj-ID, Box-Nr.,
"Formatstring"; sv, ev
"Iconname"; Item2,
"Iconname2"
Obj-ID, enable, Item,
Item2...
Obj-ID, X,Y,Anker,
radius, width, lines,
DistX, gap
Obj-ID, Item Ein Eintrag (Item) per Befehl auswählen.
Styles und grafisches Verhalten zuordnen. Der Style TextStyle-Nr. definiert das Aussehen der Texte, DrawStyle-Nr. Box das Aussehen des Hintergrundes. Der Selektrahmen wird durch DrawStyle-Nr. Selekt vorgegeben. Typ definiert Bitkodiert das Rollverhalten und die Position des Selektionsrahmens: Bit 0: =0 rollen =1 am Ende der Liste stoppen; Bit 1: =0 Selektionsrahmen hinter den Text, =1 Selektionsrahmen vor den Text.
Einträge hinzufügen. Der Befehl hat zwei Parametersätze. Der direkte und einfache Satz fügt Einträge durch Pipe '|' getrennt hinzu, z.B. "Entry 1|Entry 2...". Der Zweite Satz sieht ein Formatstring mit Start- (sv) und Endwert (ev) vor. z.B. "%02d";0,59. Der Parameter Box-Nr. gibt an welche Box gemeint ist. Eine SpinBox kann bis zu 4 untergeordnete Boxen besitzen.
Jedem Eintrag kann ein Icon zugeordnet werden. Der Eintrag muss bereits vorhanden sein um ein Icon zuzuordnen. Item setzt sich wie folgt zusammen:
High Word Low Word
High Byte Low Byte High Byte Low Byte
Box 4 Box 3 Box 2 Box 1
Ein Eintrag aktivieren / deaktivieren. Ist ein Eintrag deaktiviert kann er nicht per Touch ausgewählt werden. Enable =0 disable; =1 enable; 2=toggle. Per default sind alle Einträge aktiv.
Eine vorher definierte SpinBox platzieren. Der Radius gibt die Eckenrundung an. Width gibt in Pixeln die Breite der Box an, bei width =0 wird die Breite der Box anhand des breitesten Eintrages automatisch ermittelt. Lines definiert die anzuzeigenden Einträge oberhalb der Auswahlbox. DisX gibt den Abstand des Eintrages zum Boxrand und dem Icon an. Gap definiert den Abstand der Boxen innerhalb der SpinBox-Gruppe.
Hier geht es zu den Befehlsbeispielen.
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
79 / 172
EA uniTFT050-A

Action / Animation

Befehlsgruppe um Objekte zu animieren, z.B. Erscheinen, Wegfliegen, Rotieren oder Ausblenden zu lassen.
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
80 / 172
Action / Animation definieren
EA uniTFT050-A
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
81 / 172
EA uniTFT050-A
Definition Start/End
Action / Anima tion definie ren
Absolut
Relativ
#A
Start Start =1 Animationsdefinition beginnen, keine Animation starten; =0 D C
Obj-ID, Action1, ...,
#
ActionN
A O A
# A O R
Definition fertig, alle neuen Animationen starten. Ist die Animationsdefinition innerhalb eines Makros ist dieser Befehl nicht notwendig, da ein Makro immer komplett abgearbeitet wird, bevor der Bildschirminhalt neu gezeichnet wird.
Ein Objekt animieren. Der Parameter Action gibt die Animation vor:
100+ 1..10 Position
150+ 1..10 Position Pfad
200+ 1..10 Skalierung
250+ 1..10 Skalierung Pfad
300+ 1..10 Rotieren
350+ 1..10 Rotieren Pfad
400+ 1..10 Scheren
450+ 1..10 Scheren Pfad
500+ 1..10 Deckkraft
550+ 1..10 Deckkraft Pfad
600+ 1..10 Farbkanal
X,Y Das Objekt bewegt sich in einer Geraden
zum angegeben Punkt. Der zeitliche verlauf wird durch die Aktionskurve (1..10) vorgegeben.
Aktionspf ad, Offset
ScaleX, ScaleY
Aktionspf ad, Offset
Winkel Drehung des Objekts um Winkel-Grad (<0
Aktionspf ad, Offset
ShearX, ShearY
Aktionspf ad, Offset
Opacity Ändern der Objektdeckkraft.
Aktionspf ad, Offset
R,G,B Ändern der Farbkanäle Rot, Grün und Blau
Das Objekt folgt dem Aktionspfad (#APD), der Offset bestimmt Prozentual den Startwert. Der zeitliche verlauf wird durch die Aktionskurve (1..10) vorgegeben.
Die Objektgröße wird linear prozentual auf die Originalgröße verändert. Der zeitliche verlauf wird durch die Aktionskurve (1..10) vorgegeben.
Das Objekt ändert seine Größe anhand des Aktionspfads, der Offset bestimmt Prozentual den Startwert. Der X-Wert des Pfades bestimmt die Vergrößerung in X­Richtung, der Y-Wert entsprechend die Vergrößerung in Y-Richtung.
im, >0 gegen den Uhrzeigersinn). Drehung folgt dem X-Offset des
Aktionspfads. Der Offset bestimmt den
Prozentual den Startwert. Das Objekt um ShearX-,ShearY-Grad
scheren. Das Objekt ändert seine Scherung anhand
des Aktionspfades, der Offset bestimmt Prozentual den Startwert. Der X-Wert des Pfades bestimmt die Scherung in X-Grad, der Y-Wert entsprechend die Scherung in Y-Grad.
Deckkraft folgt dem X-Offset des
Aktionspfads. Der Offset bestimmt den
Prozentual den Startwert.
Action-/Animtaio nstyp / Time
Action / Animation Stoppen
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und
Action /
Applikationsbeispiele
Animation
#AOTObj-ID, Typ,
Gesamtzeit (100),
Start (0), End (0)
#A
Obj-ID, Stop (0), Jump O
(0)
S #AOObj-ID, ..., Obj-IDn Die Animation wird gelöscht (Obj-ID =0 allen)
Die Gesamtzeit der Animation beinhaltet die Verzögerung beim Start und am Ende. Der Typ gibt den Animationstyp vor:
1 = Erscheinen 4 = Change 2 = Verschwinden (Obj-
ID wird gelöscht) 3 = Invisible 6 = Ping Pong
Die Animation wird sofort nach diesem Befehl gestartet, außer es wurde vorher #ADC 0 gesetzt - dann erfolgt der Start bei #ADC 1.
Die Animation wird angehalten. Stop =0 sofort; =1 am Anfang; =2 am Ende. Der Parameter Jump gibt das Verhalten an: =0 normale Bewegung; =1 Sprung; =2 Objekt löschen; 3= Objekt unsichtbar
5 = Zyklisch
82 / 172
Hier geht es zu den Befehlsbeispielen.
Aktionskurve und Aktionspfade
EA uniTFT050-A
Aktionspfad erstellen
Aktionskurve erstellen
#A
Pfad-Nr, X,Y, P
Segment1, ..., D
SegmentN
#A
Kurvennummer, C
X1,Y1, X2,Y2 D
Das Objekt folgt dem Aktionspfad. Die Pfad-Nr ist auf 1..10 begrenzt. Die Segmente des Pfades werden nach dem Selben Prinzip erstellt wie beim Zeichnen von Pfaden (#GPP):
Horizontale Linie ?H X Vertikale Linie ?V Y Linie ?L X,Y Kreisbogen ?C t,r, X,Y Elliptischer Kreisbogen ?E t,rx,ry,a, X,Y Quadratische
Bézierkurve Glatte quadratische
Bézierkurve Kubische Bézierkurve ?S c1x,c1y, c2x,c2y, X,Y Glatte kubische
Bézierkurve Pfad schließen ?Z Neue Startkoordinaten
(Unterpfad)
Großbuchstaben der Segmentbefehle: Absolute Koordinaten Kleinbuchstaben der Segmentbefehle: relative Koordinaten zum letzten Punkt r = Radius rx = X-Radius ry = Y-Radius a = Winkel
?Q c1x,c1y, X,Y
?R X,Y
?T c2x,c2y, X,Y
?M X,Y
t=0: gegen Uhrzeigersinn kleiner Kreisbogen t=1: im Uhrzeigersinn kleiner Kreisbogen t=2: gegen Uhrzeigersinn großer Kreisbogen t=3: im Uhrzeigersinn großer Kreisbogen
Aktionskurve erstellen, die den zeitlichen Verlauf der Animation vorgibt. Es sind 10 Kurven vordefiniert. Der Wertebereich der Parameter ist für X 0...100, für Y -200...300.
Aktionskurve
Die Aktionskurven geben den zeitlichen Verlauf der Animation vor. Es sind 10 Kurven vordefiniert, die verändert werden können (#ACD). Bei den Kurven handelt es sich um kubische Bézierkurven mit zwei Stützpunkten:
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
83 / 172
1 Linear
#ACD 1, 10,10, 90,90
EA uniTFT050-A
2 Beschleunigung ®
Linear
#ACD 2, 40,0, 60,40
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
84 / 172
3 Linear ® Abbremsend
#ACD 3, 40,60, 60,100
EA uniTFT050-A
4 Beschleunigend ®
Linear ® Abbremsend
#ACD 4, 40,0 60,100
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
85 / 172
5 Unterschwingend ®
Linear
#ACD 5, 30,0 30,-60
6 Linear ®
Überschwingend
#ACD 6, 70,160, 70,100
EA uniTFT050-A
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
86 / 172
7 Unterschwingend ®
Linear ® Überschwingend
#ACD 7, 30,-60, 70,160
8 Schwingend ® Linear
#ACD 8, 40,40, 20,-100
EA uniTFT050-A
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
87 / 172
9 Linear ® Schwingend
#ACD 9, 80,200, 60,60
EA uniTFT050-A
10Linear ® Schwingend
® Linear
#ACD 10, 60,200 40,-100
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
88 / 172
EA uniTFT050-A

Objektverwaltung

Befehlsgruppe um Objekte zu Verwalten, zu Verändern oder zu Gruppieren.
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
89 / 172
Objektmanipulation
EA uniTFT050-A
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
90 / 172
EA uniTFT050-A
Löschen #ODIObj-ID, ..., Obj-IDn Objekt löschen. Bei Obj-ID =0 werden alle Objekte gelöscht; =-1 alle
Objekte und Hintergrund wird gelöscht (from V1.2)
Löschschutz #ODPProtect, Obj-ID, ...,
Obj-IDn
Sichtbarkeit #OVISichtbar, Obj-ID, ...,
Obj-IDn
PositionAbsolut
Relativ
X,Y, Obj-ID, ..., Obj-
#
IDn
O P A
#
X,Y, Obj-ID, ..., Obj-
O
IDn
P R
Objekte mit protect=1 können vom Befehl #ODI nicht gelöscht werden und bleiben bestehen. Sie werden ebenso nicht auf die Hintergrundebene verschoben (ab V1.2).
Objekt Sichtbar =1 bzw. unsichtbar =0 machen. Obj-ID =0 Sichtbarkeit auf alle Objekte anwenden.
Objekte verschieben auf eine neue Postion setzen. Obj-ID =0 Alle Objekte verschieben
Größe n­änder ung
RotationAbsolut
Scher ung
Absolut
Relativ
Relativ
Absolut Relativ
Breite, Höhe, Obj-
#
ID, ..., Obj-IDn
O S A
#
Breite in %, Höhe in O
%, Obj-ID, ..., Obj-IDn S R
Winkel, Obj-ID, ...,
#
Obj-IDn
O R A
#
Winkel, Obj-ID, ..., O
Obj-IDn
R R
ShearX, ShearY, Obj-
#
ID, ..., Obj-IDn
O H A
#
ShearX, ShearY, Obj­O
ID, ..., Obj-IDn H R
Die Breite bzw. Höhe eines Objektes prozentual ändern. Obj-ID =0 Größenänderung bei allen Objekten.
Um den Winkel wird das Objekt (Obj-ID) gedreht. Obj-ID =0 Drehung aller Objekten.
Die Neigung / Scherung eines Objektes ändern. ShearX und ShearY werden in Grad angegeben. Obj-ID =0 Scherung bei allen Objekten.
Deckk raft / Opacit y
Farbe ändern #OCCR,G,B, Obj-ID, ...,
Style ändern #OCSStyle-Nr, Obj-ID, ...,
Rahmen /
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und
Hintergrund
Applikationsbeispiele
Absolut
Relativ
Opacity, Obj-ID, ...,
#
Obj-IDn
O O A
#
Opacity in %, Obj­O
ID, ..., Obj-IDn O R
Obj-IDn
Obj-IDn
#OFPDrawStyleNr, addX,
addY, Obj-ID, ..., Obj-
IDn
Sichtbarkeit (Opacity) von 0 (komplett durchsichtig) bis 100 (Sichtbar) einstellen. Obj-ID =0 auf alle Objekte anwenden.
Der Farbanteil des Kanals (Rot, Grün, Blau) wird prozentual verändert (-100...+100). Obj-ID =0 auf alle Objekte anwenden.
Einem Objekt (Obj-ID =0 allen) wir ein neuer Style zugewiesen. Der Style richtet sich nach dem Objekt. Einer Zeichenkette wird automatisch ein TextStyle zugewiesen.
Einem Objekt (Obj-ID =0 allen) ein Hintergrund zuordnen. Die Farben werden über den DrawStyle bestimmt. Die beiden Parameter addX und addY ändern am Linken/Rechten bzw. Oberen/Unteren Rand die
91 / 172
Gruppe
EA uniTFT050-A
Objekte zur Gruppe hinzufügen
#O
Group-ID, Obj-ID, ...,
G
Obj-IDn
A
Background (ab V1.2)
Objekte auf Hintergrundeben e verschieben
Bild von der SD­Karte direkt auf den Hintergrund schreiben
#O
RGB, Obj-ID, ..., Obj-
B
IDn
G
#O
Picture-name';
B
X(0),Y(0), anchor (7),
P
'gradient name'; time, reverse, 'macro finished'
Eine Gruppe (Group-ID) erstellen bzw. einer bestehenden Gruppe Objekte hinzufügen.
Existierende Objekte auf den Hintergrund verschieben. Die Hintergrundfarbe wird durch den Parameter RGB vorgegeben. Nach dem PowerOn-Reset ist die Hintergrundfarbe Schwarz (RGB=0). Wird für RGB=-1 übergeben bleibt die bisher eingestellte Farbe unverändert.
Bild direkt von der SD-Karte auf dem Hintergrund darstellen. Transformationen (wie Skalieren) sind unmöglich. Wenn Transformationen notwendig sind, muss ein Bildobjekt erstellt werden (#PPP) und die Transformationen angewendet werden. Das Objekt wird dann mit dem Befehl #OBGauf den hintergrund verschoben. Der Parameter gradient name gibt ein Graustufenbild an, welches zur Überblendung verwendet wird. Das Überblenden wird durch die Grauwerte und der Zeit time in 1/10 s bestimmt. Der Überblendeffekt kann rückweärts (reversed) dargestellt werden. Nach dem Überblenden wird das Makro 'macro finished' aufgerufen.
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
92 / 172
EA uniTFT050-A

Styles

Befehlsgruppe um Formatvorlagen zu erstellen. Das Aussehen jedes Objekts basiert auf einer Style passend zur Objektart. Für jeden Style stehen maximal 500 zur Verfügung, also Style-Nr [0...500-1].
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
93 / 172
DrawStyle
EA uniTFT050-A
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
94 / 172
EA uniTFT050-A
Füllung: Löschen
Füllung: Vollfarbe
Füllung: Linearer Farbverlauf
Füllung: Radialer Farbverlauf
Füllung: Konischer Farbverlauf
Füllung: Muster / Pattern#CFP
Füllung ändern: Winkel (linearer Farbverlauf)
Füllung ändern: Rampe (Farbverlauf)
Füllung ändern: Fokus
Füllung ändern: Muster / Pattern ändern
#CFDDrawStyle-Nr Der DrawStyle hat keine Füllung
#CFCDrawStyle-Nr, RGB,
#CFLDrawStyle-Nr, Ramp-
#CFRDrawStyle-Nr, Ramp-
#CFKDrawStyle-Nr, Ramp-
#CFADrawStyle-Nr, Winkel Den Winkel eines linearen Farbverlaufes wird verändert.
#C F G
#CFFDrawStyle-Nr, FokusX,
#CFNDrawStyle-Nr,
Opacity (100)
Nr, Winkel (0)
Nr, FokusX (5000),
FokusY (0)
Nr, FokusX (5000),
FokusY (0), Richtung (1)
DrawStyle-Nr, 'PatternName';
Größe (0), Winkel (0), Wiederholung (0), FokusX (5000), FokusY (0), PatternAnker (1)
DrawStyle-Nr, Ramp­Nr,
FokusY,
PatternAnker (no change)
'PatternName'
Der DrawStyle hat eine voll-farbige (RGB) Füllung. Die Deckkraft wird prozentual über Opacity angegeben.
Der DrawStyle hat eine lineare Verlaufsfüllung. Die Rampe bestimmt die Füllung und deren Ausrichtung (Winkel in Grad).
Der DrawStyle hat eine radiale Verlaufsfüllung. Die Rampe bestimmt die Füllung. Der Fokus bestimmt prozentual den Startpunkt des Verlaufs. Bei FokusX =5000 wird mit FokusY der Anker angegeben der als Startpunkt des Verlaufs verwendet werden soll.
Der DrawStyle hat eine konische Verlaufsfüllung. Die Rampe bestimmt die Füllung. Der Fokus bestimmt prozentual den Startpunkt des Verlaufs. Bei FokusX =5000 wird mit FokusY der Anker angegeben der als Startpunkt des Verlaufs verwendet werden soll. Die DrehRichtung des Verlaufs ist im Uhrzeigersinn =1 oder gegen den Uhrzeigersinn =0.
Ein Muster ( 'PatternName') als Füllung verwenden. Die Größe verwendet die Originalgröße =0, oder aber sie wird proportional prozentual verändert. Wiederholung =1 spiegeln; =0 wiederholen. Der Fokus bestimmt prozentual den Startpunkt des Patterns. Bei FokusX =5000 wird mit FokusY der Anker angegeben der als Startpunkt des Patterns verwendet werden soll. Das Pattern wird direkt mit dem PatternAnker auf den Fokuspunkt gesetzt.
Die Rampe einer Füllung ändern
Der Fokus bestimmt prozentual den Startpunkt des Verlaufs oder des Patterns. Bei FokusX =5000 wird mit FokusY der Anker angegeben der als Startpunkt des Verlaufs verwendet werden soll. Der letzte Parameter gilt nur bei Pattern: Es wird direkt mit dem PatternAnker auf den Fokuspunkt gesetzt.
Der Füllung ein neues Muster ( 'PatternName') zuweisen.
Füllung ändern: Muster / Pattern Größe ändern
Füllung ändern: Muster / Pattern Wiederholungsm ode
Linie: Löschen #CLDDrawStyle-Nr Der DrawStyle hat keine Außen-Linie
Linie: Farbe, Dicke
Linie ändern: Farbe
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und
Linie ändern:
Applikationsbeispiele
Breite
#CFSDrawStyle-Nr, Größe Die Größe verwendet die Originalgröße =0 des Patterns, oder aber sie
wird proportional prozentual verändert
#CFTDrawStyle-Nr,
Wiederholung
#CLSDrawStyle-Nr, RGB,
Opacity (100), Breite (1), Verbindung (0), Dash­Nr (1)
#CLCDrawStyle-Nr, RGB,
Opacity (no change)
#CLDrawStyle-Nr, Breite Die Dicke der Linie verändern
Die Wiederholung =1 spiegeln; =0 wiederholen gibt an wie die einzelnen Patterns aneinander gereiht werden.
Eine Außen-Linie definieren: Farbe (RGB) und Deckkraft (Opacity in Prozent), Linien-Breite in Pixeln. Der Parameter Verbindung bestimmt die Art des Linienendes bzw, Verbindung: =0 Hartes Ende; =1 Abgerundet. Um eine gestrichelte Linie zu erhalten muss ein
Linienmuster (Dash-Nr) definiert sein.
Der Linie eine neue Farbe (RGB) zuordnen.
95 / 172
Hier geht es zu den Befehlsbeispielen.
TextStyle
EA uniTFT050-A
TextSyle definieren
TextStyle ändern: Font
TextStyle ändern: Größe#CTS
TextStyle ändern: Ausrichtung / Alignment
TextStyle ändern: DrawStyle
TextStyle ändern: Kursiv#CTI
TextStyle ändern: Abstände
TextStyle ändern: Leerzeichenbreit e
#CTFTextStyle-Nr,
#CTNTextStyle-Nr,
#CTATextStyle-Nr, Align Ausrichtung ändern: Align =0 Linksbündig; =1 Mittig;
#CTCTextStyle, DrawStyle-NrFarbe mit Hilfe des DrawStyles ändern.
#CTGTextStyle, LineSpace,
#C T W
Definition eines TextStyle mit Font ('FontName'), Größe (Size in 'FontName'; Size (20),
Align (0), DrawStyle (0), Italic (0), LineSpace (0), CharSpace (0)
'FontName' TextStyle-Nr, Size Größe ändern: Size in Pixeln; =0 Originalgröße und gilt nur bei
TextStyle, Italic Kursive Schrift: Italic in Grad (-45°...+45°)
CharSpace (no change)
TextStyle-Nr, SpaceCode,
spacewidth(100)
Pixeln; =0 Originalgröße und gilt nur bei Bildfonts). Mit Align wird die
Ausrichtung festgelegt: =0 Linksbündig; =1 Mittig; =2 Rechtsbündig.
Der DrawStyle gibt die Farbe vor. Wir empfehle aus
Performancegründen eine einfache Füllung ohne Außenlinie. Italic
ermöglicht kursive Schrift und wird in Grad (-45°...+45°) angegeben.
LineSpace und CharSpace gibt den Zeilenabstand bzw.
Ziffernabstand an =0 Standardwert aus Font
Font ändern
Bildfonts)
=2 Rechtsbündig.
Mit LineSpace und CharSpace wird ein zusätzlicher Zeilen- bzw.
Zeichenabstand definiert (Angabe in % der Zeichenhöhe). Auch
negative Werte sind erlaubt.
Die Breite des Leerzeichens kann von einem beliebigen anderen Code
(SpaceCode) übernommen werden. Zusätzlich kann die Breite in %
definiert werden: Standard: 100 (spacewidth). (ab V.1.2)
Hier geht es zu den Befehlsbeispielen.
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
96 / 172
ButtonStyle
EA uniTFT050-A
ButtonStyle: Picture
ButtonStyle: Draw
ButtonStyle: Text
ButtonStyle: DownEvent
ButtonStyle: DownEvent Sound
ButtonStyle: Disabled
#C
ButtonStyle-Nr,
B
'ButtonNameNormal';
P
'ButtonNameDown' (= Normal); Breite (0), Höhe (0)
#C
ButtonStyle-Nr,
B
DrawStyle-Normal,
D
DrawStyle­Down (=Normal), Breite (0), Höhe (0), Radius (0)
#CBTButtonStyle-Nr,
TextStyleNormal,
TextStyleDown (=Nor mal), OffsetX (0), OffsetY (0)
#C
ButtonStyle-Nr,
B
OffsetX (0),
O
OffsetY (=OffsetX), Size (100), Winkel (0)
#C
ButtonStyle-Nr,
B
'SoundName' (Lösche
S
n)
#C
R (-30), G (=R),
B
B (=R), Opacity (0)
G
ButtonStyle definieren: Anzeige eines Bildes ('ButtonNameNormal'),
im gedrückten Zustand wird ...Down angezeigt. Die Größe wird über
Breite und Höhe bestimmt; =0 Originalgröße
ButtonStyle definieren: Anzeige von zwei DrawStyles für den
gedrückten (Down) bzw. ungedrückten (Normal) Zustand. Die Breite
und Höhe des Buttons und der EckenRadius wird mit den folgenden
Parametern vorgegeben.
Den Text des ButtonStyles definieren. Der Offset gibt einen
Zusätzlichen Abstand in Pixeln an, wo der Text auf dem Button
positioniert wird.
Das Verhalten des Buttons im gedrückten Zustand: Button mit Offset in
Pixeln zeichnen, Größe proportional prozentuzal (Size) ändern, sowie
den Winkel in Grad.
Im DownEvent des ButtonStyles wird ein Jingle ('SoundName')
abgespielt. Ist der Parameter 'SoundName' leer wird das Jingle
gelöscht
Der deaktivierte Zustand eines Buttons ist die prozentuale
Farbänderung des ButtonStyle-Normal. Jeder Farbkanal ist dabei
einzeln ansprechbar. Die Deckkraft (Opacity) kann ebenfalls verändert
werden.
Hier geht es zu den Befehlsbeispielen.
Farb-Rampen / Farbverlauf
Farb-Rampe definieren
Farb-Rampe animieren
#C
Ramp-Nr, Offset1,
C
RGB1, Opacity1, ...
R
Offset10, RGB10, Opacity10
#C
Ramp-Nr, Typ (1),
A
Zeit (100)
C
Linien-Muster / Dash Pattern
Linien-Muster definieren
Linien-Muster animieren
#C
Dash-Nr, Offset, Set1,
D
Space1, ..., Set10,
P
Space10
#C
Dash-Nr, Typ (1),
A
Zeit (100)
D
Einen Farbverlauf definieren. Der Stützpunkt (Offset) definiert den
Farbpunkt im Verlauf in Prozent, die Farbe wird durch RGB und
Deckkraft (Opacity) angegeben. Es können maximal 10 Stützpunkte
angegeben werden.
Die Position der Stützpunkte des Farbverlaufs werden verändert. Typ
=0 Animation stoppen; =1 Zyklisch; =2 Zyklisch Rückwärts;
=3 PingPong; =4 PingPong Rückwärts. Die Zeit in 1/100 s gibt die
Zeitdauer an.
Linien-Muster erstellen: Set ist die Länge in Pixeln des Strichs, Space
die Länge ohne Pixel. Der Offset bestimmt in Prozent den Start des
Musters.
Der Offset (Dashphase) werden verändert. Typ =1 Zyklisch; =2 Zyklisch
Rückwärts; =3 PingPong; =4 PingPong Rückwärts. Die Zeit in 1/100 s
gibt die Zeitdauer an.
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
97 / 172
EA uniTFT050-A

Makros

Einzelne oder mehrere Befehlsfolgen können als sogenannte Makros zusammengefasst und auf der Mikro SD-Karte fest abgespeichert werden. Diese können dann mit den Befehlen gestartet werden.
Makros ausführen
Makro ausführen #
Makro bedingt ausführen
Makro verzögert ausführen
I/O-Portmakro manuell ausführen
I/O-Bitmakro manuell ausführen
Analogmakro manuell ausführen
Touchmakro manuell ausführen
'makroname' Das Makro 'makroname' wird ausgeführt
M R N
#
(Bedingung),
M
'makroname(TRUE)';
R
'makroname(FALSE)' ('
C
')
#
Delay-Nr, time,
M
'makroname'
R D
#
Port Manuell ein Portmakro (Port 0...15) ausführen
M R P
#
Portpin, Flanke Manuell ein Bitmakro (Portpin 0...127) ausführen. Flanke =0 fallend;
M R B
#
Kanal, Typ Analogmakro des Kanal (0...3) ausführen. Typ:
M R A
#
Obj-ID, Typ, PointNr
M
(0)
RT
Wenn die Bedinung wahr ist wird das erste Makro ausgeführt,
ansonsten das zweite.
Makro wird verzögert ausgeführt. Es können gleichzeitig bis zu 10
Makro verzögert gestartet werden (Delay-Nr 1...10). Die Zeit (time)
wird in 1/100 s angegeben.
=1 steigend
0 = bei jeder Änderung
1 = decrement 6 = obere Grenze 2 2 = increment 7 = Fenster verlassen 3 = untere
Grenze 1 4 = obere
Grenze 1
Die Parametrisierung des Analogeingangs (Grenzen, Hysterese)
werden mit der Befehlsgruppe 'Analog Input' eingestellt.
Touchmakro ausführen. Typ =1 Normal; 2= gedrückt; 3= Drag. PointNr
(0...4) gibt den Finger an: 0=erster, 1=zweiter usw. Berührpunkt.
5 = untere Grenze 2
8 = Fenster eintreten
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
98 / 172
Makros definieren
EA uniTFT050-A
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
99 / 172
EA uniTFT050-A
Touchmakro definieren
Makro-Prozess definieren
Bedingter Makro-Prozess definieren
#
Obj-ID, 'makroname
M
down' (alten löschen);
DT
'makroname up' (alten löschen); 'makroname drag' (alten löschen)
#
Prozess-Nr, time,
M
'makroname';
P
Startnummer (none),
D
Endnummer (startnummer), typ (1)
#
Prozess-Nr, time,
M
(Bedingung),
P
'makroname';
C
Startnummer (none), Endnummer (startnummer), typ (1)
Ein Touchmakro definieren. Das Makro 'makroname down' wird
aufgerufen wenn die Taste gedrückt wird, 'makroname up' beim
loslassen, '...drag' bei ziehen (vor allem für Bargraphen und
Instrumente sinnvoll). Bei einem Leerstring wird das entsprechende
Makro gelöscht.
Für das Modul mit kapazitven Touchpanel können die einzelnen Makros
speziell dem Berührpunkt aufgerufen werden. Es werden bis zu 5
Punkte erkannt. Die ersten drei Makronamen gelten dann für den ersten
Punkt, die nächsten drei für den zweiten Finger usw. Ist kein spezielles
Makro für den Punkt definiert werden immer die Makros für den ersten
Punkt aufgerufen.
Makroprozesse definieren einen automatischen zeitlichen Ablauf von
Makros. Der Prozess (Prozess-Nr 1...10) ruft automatisch in (time) hs
das nächste Makro ('makroname') auf. Es können mehrere Makros
aufgerufen werden (Startnummer bis Endnummer z.B. #MPD 1, 100,
"Makro"; 1, 50 ® Makro1 .. Makro50 werden aufgerufen. Der Typ gibt
die Aufrufreihenfolge an:
1 = Zyklisch 2 = Zyklisch Rückwärts 3 = PingPong
Bedingte Makroprozesse definieren einen automatischen zeitlichen
Ablauf von Makros wenn eine Bedingung erfüllt (wahr) ist. Der Prozess
(Prozess-Nr 1...10) ruft automatisch in (time) hs das nächste Makro
('makroname') auf. Es können mehrere Makros aufgerufen werden
(Startnummer bis Endnummer z.B. #MPD 1, 100, "Makro"; 1, 50 ®
Makro1 .. Makro50 werden aufgerufen. Der Typ gibt die
Aufrufreihenfolge an:
1 = Zyklisch 2 = Zyklisch Rückwärts 3 = PingPong
4 = PingPong Rückwärts 5 = Einmalig 6 = Einmalig Rückwärts
4 = PingPong Rückwärts 5 = Einmalig 6 = Einmalig Rückwärts
Automatischer Makro-Prozess#M
Makro-Prozess Zeit ändern
Action-End Makro definieren#M
I/O-Portmakro definieren
I/O-Bitmakro definieren
Technische Änderungen vorbehalten. Wir übernehmen keine Haftung für Druckfehler und Applikationsbeispiele
Analogmakro
Prozess-Nr, time, (Berechnung),
PA
'makroname';
Startnummer (none), Endnummer (startnummer), typ (1)
#
Prozess-Nr, time Die Zeit (time in 1/100s =0 stop; =-1 neu starten mit alter Zeit) für den
M PT
Obj-ID, 'makroname' Nach dem Ende einer Objekt-Animation (Obj-ID) wird das Makro
D A
#
Port,
M
'makroname' (alten
H
löschen)
P #
Portpin, Flanke,
M
'makroname' (alten
H
löschen)
B #
Kanal, Typ,
Automatische Makroprozesse definieren einen automatischen
zeitlichen Ablauf von Makros wenn der Wert der Berechnung sich
geändert hat. Die Berechnung wird in time (1/100 s) neu berechnet.
Es können mehrere Makros aufgerufen werden (Startnummer bis
Endnummer z.B. #MPD 1, 100, "Makro"; 1, 50 ® Makro1 .. Makro50
werden aufgerufen. Der Typ gibt die Aufrufreihenfolge an:
1 = Zyklisch 2 = Zyklisch Rückwärts 3 = PingPong
Makroprozess (Prozess-Nr =0 alle) ändern
aufgerufen
Das Portmakro wird aufgerufen wenn sich der Status des Ports (0...15)
ändert.
Das Bitmakro wird aufgerufen wenn die Flanke (= 0 fallend; = 1
steigend) am Portpin (0...127) registriert wird.
Einem A/D-Eingang (Kanal 0...3) wird ein Makro ('makroname')
4 = PingPong Rückwärts 5 = Einmalig 6 = Einmalig Rückwärts
100 / 172
Loading...