Dieses Beispiel zeigt, wie sich mit einem Arduino-Board die Seiten eines standardmäßigen 3,5-Zoll-Smart-Display-Moduls über Modbus RS485 umschalten lassen. Als Host-Controller kommt ein Arduino Mega 2560 mit einem Modbus-RS485-Shield, einem physischen Taster und einer LED zum Einsatz.
In dieser Demo wird das Smart Display durch Drücken des physischen Tasters von der ersten auf die zweite Seite umgeschaltet. Durch erneutes Drücken des Tasters wechselt die Anzeige zurück zur ersten Seite.

Systemblockdiagramm
Erforderliche Komponenten
- 3,5-Zoll Modbus Smart Display
- Arduino Mega 2560
- Modbus-RS485-Shield für Arduino Mega 2560
- Arduino IDE v2.0.4
- Modbus-RS485-Dongle
- Physischer Taster
- GUI Builder v0.4.2 oder höher
- LED
Ablauf der Demo
- Projekt im GUI Builder erstellen
- Projekt kompilieren und hochladen
- Arduino-Host programmieren
Projekt im GUI Builder erstellen
Erstellen Sie zunächst ein neues Projekt im GUI Builder und geben Sie einen Projektnamen ein. Wählen Sie unter "Device Type" das 3,5-Zoll-TFT-Gerät und unter "Protocol" die Option "ModbusRTU (RS485)" aus. Stellen Sie anschließend die Displayausrichtung auf Landscape ein. Wählen Sie danach unter "UI Template" die Option Blank aus und klicken Sie auf "Create", um das Projekt zu erstellen.

Nach dem Erstellen des Projekts wird die Startseite im GUI Builder angezeigt.

Für diese Demo werden zwei Seiten verwendet. Klicken Sie auf "Page" und anschließend auf "+", um eine zweite Seite hinzuzufügen.

Die Hintergrundstile können im Bereich Resource verwaltet werden.

Anschließend kann im Bereich "Page" für jede Seite der gewünschte Hintergrund ausgewählt werden.

Projekt kompilieren und hochladen
Nachdem die beiden Seiten erstellt wurden, konfigurieren Sie die Verbindungseinstellungen und laden Sie das Projekt auf das Smart Display hoch. Wechseln Sie zunächst zur Seite "Page Info", klicken Sie auf "Device" und wählen Sie "Device Property" aus. Prüfen Sie im Device Config Window, ob das Protokoll auf "ModbusRTU (RS485)" eingestellt ist, wählen Sie den entsprechenden COM-Port aus und stellen Sie die Baudrate auf denselben Wert wie beim Smart Display ein. Klicken Sie auf "OK", um die Einstellungen zu übernehmen, und anschließend auf "Connect to Device". Sobald die Verbindung zum Smart Display hergestellt ist, klicken Sie auf "Upload The Project", um das Projekt hochzuladen.

Wenn das Hochladen des Projekts abgeschlossen ist, klicken Sie auf "OK".

Nach Abschluss des Uploads erscheint der Startbildschirm auf dem Smart Display.

Anschließend wechselt das Smart Display vom Startbildschirm zur ersten Seite. Dies zeigt an, dass das Projekt erfolgreich hochgeladen wurde.

Arduino-Host programmieren
Bei der Verbindung des Hosts mit dem Smart Display über Modbus ist es wichtig, im Programm die richtigen Registeradressen zu verwenden. Weitere Informationen zur RS485-Kommunikation zwischen Host und Smart Display finden Sie im Kommunikationsprotokoll des GUI Builder. Die folgende Abbildung zeigt die Registeradressdefinitionen, die für dieses Beispiel im Arduino-IDE-Programm benötigt werden.

Konfigurieren Sie anschließend die Pin-Modi und die externen Komponenten, wie den physischen Taster und die LED, und stellen Sie die Baudrate für die serielle Kommunikation ein.

Die folgende Abbildung zeigt, wie der Arduino-Host eine Änderung am Eingang des physischen Tasters erkennt und den entsprechenden Wert über die Modbus-Kommunikation an das Smart Display überträgt, um die angezeigte Seite zu wechseln.

Nachdem das Programm in der Arduino IDE erfolgreich überprüft und hochgeladen wurde, können die Seiten des Smart Display über den physischen Taster umgeschaltet werden. Wenn die erste Seite angezeigt wird, ist die LED ausgeschaltet. Wird der Taster gedrückt und zur zweiten Seite gewechselt, leuchtet die LED auf, wie unten dargestellt.

Das Arduino-Programm steht auf GitHub zum Download bereit. Dort finden Sie auch weitere Informationen zu diesem Demo-Projekt. Der tatsächliche Hardwareaufbau ist unten dargestellt. Weitere Informationen zum in dieser Demo verwendeten Modbus-RS485-Shield finden Sie in der technischen Dokumentation.

Fazit
Dieses Beispiel zeigt, wie ein Arduino Mega 2560 als Host-Controller eingesetzt wird, um die Seiten eines Smart Display über Modbus RS485 umzuschalten. Nachdem die Anzeigeseiten im GUI Builder erstellt und die erforderlichen Einstellungen vorgenommen wurden, kann der Arduino-Host abhängig vom Eingangssignal des physischen Tasters zwischen den beiden Seiten wechseln.
Das Beispiel vermittelt Entwicklern grundlegende Kenntnisse über die Modbus-Kommunikation und die Steuerung zwischen einem Arduino-Host und einem Smart Display und kann als Referenz für die Entwicklung hostgesteuerter Smart-Display-Anwendungen dienen.