Questo esempio illustra come utilizzare una scheda Arduino per commutare le pagine di un modulo Smart Display standard da 3,5 pollici tramite Modbus RS485. Come controller host viene utilizzato un Arduino Mega 2560, abbinato a uno shield Modbus RS485, un pulsante fisico e un LED.
In questa demo, premendo il pulsante fisico, lo Smart Display passa dalla prima alla seconda pagina. Premendo nuovamente il pulsante, il display torna alla prima pagina.

Schema a blocchi del sistema
Componenti necessari
- Smart Display Modbus da 3,5 pollici
- Arduino Mega 2560
- Shield Modbus RS485 per Arduino Mega 2560
- Arduino IDE v2.0.4
- Dongle Modbus RS485
- Pulsante fisico
- GUI Builder v0.4.2 o versione successiva
- LED
Flusso della demo
- Progettazione del progetto in GUI Builder
- Compilazione e caricamento del progetto
- Programmazione dell'host Arduino
Progettazione del progetto in GUI Builder
Per prima cosa, creare un nuovo progetto in GUI Builder e inserire il nome del progetto. In "Device Type", selezionare il dispositivo TFT da 3,5 pollici; in "Protocol", selezionare "ModbusRTU (RS485)" e impostare l'orientamento del display su Landscape. Successivamente, selezionare Blank in "UI Template" e fare clic su "Create" per creare il progetto, come mostrato di seguito.

Una volta creato il progetto, in GUI Builder viene visualizzata la pagina iniziale.

Questa demo utilizza due pagine. Fare clic su "Page", quindi su "+" per aggiungere la seconda pagina.

Gli stili dello sfondo possono essere gestiti nella sezione Resource.

Successivamente, nella sezione "Page" è possibile selezionare lo sfondo desiderato per ciascuna pagina.

Compilazione e caricamento del progetto
Dopo aver progettato le due pagine, configurare le impostazioni di connessione e caricare il progetto sullo Smart Display. Per prima cosa, passare alla pagina "Page Info", fare clic su "Device" e selezionare "Device Property". Nella Device Config Window, verificare che il protocollo sia impostato su "ModbusRTU (RS485)", selezionare la porta COM appropriata e impostare il baud rate sullo stesso valore configurato per lo Smart Display. Fare clic su "OK" per applicare le impostazioni, quindi su "Connect to Device". Una volta stabilita la connessione con lo Smart Display, fare clic su "Upload The Project" per caricare il progetto.

Al termine del caricamento del progetto, fare clic su "OK".

Al termine del caricamento, sullo Smart Display viene visualizzata la schermata di avvio.

Successivamente, lo Smart Display passa dalla schermata di avvio alla prima pagina, indicando che il progetto è stato caricato correttamente.

Programmazione dell'host Arduino
Quando si utilizza Modbus per collegare l'host allo Smart Display, è importante utilizzare nel programma gli indirizzi di registro corretti. Per maggiori informazioni sulla comunicazione RS485 tra l'host e lo Smart Display, fare riferimento al log di comunicazione in GUI Builder. La figura seguente mostra le definizioni degli indirizzi di registro richieste nel programma Arduino IDE per questo esempio.

Successivamente, configurare le modalità dei pin e i componenti esterni, come il pulsante fisico e il LED, quindi impostare il baud rate per la comunicazione seriale.

La figura seguente mostra come l'host Arduino rileva una variazione dell'ingresso del pulsante fisico e invia il valore corrispondente allo Smart Display tramite comunicazione Modbus per cambiare la pagina visualizzata.

Dopo aver verificato e caricato il programma tramite Arduino IDE, è possibile utilizzare il pulsante fisico per cambiare pagina sullo Smart Display. Quando è visualizzata la prima pagina, il LED è spento; premendo il pulsante fisico per passare alla seconda pagina, il LED si accende, come mostrato di seguito.

Il programma Arduino è disponibile su GitHub, dove sono disponibili ulteriori dettagli sul progetto demo. La configurazione hardware effettiva è mostrata di seguito. Per maggiori informazioni sullo shield Modbus RS485 utilizzato in questa demo, consultare la documentazione tecnica.

Conclusione
Questo esempio illustra come utilizzare Arduino Mega 2560 come controller host per cambiare le pagine di uno Smart Display tramite Modbus RS485. Dopo aver creato le pagine e completato le impostazioni necessarie in GUI Builder, l'host Arduino può passare da una pagina all'altra in base all'input del pulsante fisico.
Questo esempio fornisce agli sviluppatori una conoscenza di base della comunicazione Modbus e del controllo tra un host Arduino e uno Smart Display e può essere utilizzato come riferimento per lo sviluppo di applicazioni Smart Display controllate da un host.