nachdem Helmut mich auf dem Stammtisch in Hamburg mit dem Nextion-display-Fieber angesteckt hat, versuche ich gerade die Anbindung mit meinem Modul IPS2GPIO.
Aber: Ich habe noch so einige Herausforderung dort, aber auch mit dem Editor zu meistern.
Dieser Thread soll dazu dienen, Fragen zur Programmierung des displays mit dem Editor zu lösen.
Da fange ich gleich mal an:
Ich habe zwei Dual-State-Button erstellt und mit tollen Grafiken versehen, bekomme es aber nicht hin:
das je nach Zustand zwei verschiedene Status gesendet werden
Hallo Joachim,
sind die beiden Inhalte Bilder und Zeichenketten? Schick mal ne Goggel Mail mit dem HMI-File, sonst texten wir hier zu viel rum
Gruß Helmut
So müßte es gehen:
Der Befehl heißt, wenn Du nur eine Seite hast
bt0.val=0 oder bt0.val=1
$ENDE="FF FF FF" ;
SPRT_SendText(12345 /*[HMI Serial Port]*/, "bt0.val=0"." ".$ENDE);
//Wenn Du mehr als eine page hast müßte der Seitenname davor gerade getestet
SPRT_SendText(1234 /*[HMI Serial Port]*/, "page0.bt0.val=0"." ".$ENDE);
Will man den Dual State Zustand vom Display haben heißt der Befehl get bt0.val oder get page0.bt0.val
Grundsätzlich muß man einen Timer bauen, der weist den Variablen den Inhalt der intergrierten Uhr zu, damit das Display immer aktualisiert wird,
Beispiel ist hier
Ein IP-Symcon Script zum Setzen der Uhr im Display:
<?
date_default_timezone_set("Europe/Berlin");
$timestamp = time();
$uhrzeit_std = date("H",$timestamp);
$uhrzeit_min = date("i",$timestamp);
$uhrzeit_sek = date("s",$timestamp);
$datum_jahr = date("Y",$timestamp);
$datum_monat = date("m",$timestamp);
$datum_tag = date("d",$timestamp);
SPRT_SendText(34638 /*[HMI Serial Port]*/, "rtc0=".$datum_jahr."\xFF\xFF\xFF"); //Sendet das Jahr
SPRT_SendText(34638 /*[HMI Serial Port]*/, "rtc1=".$datum_monat."\xFF\xFF\xFF"); //Sendet den Monat
SPRT_SendText(34638 /*[HMI Serial Port]*/, "rtc2=".$datum_tag."\xFF\xFF\xFF"); //Sendet den Tag
SPRT_SendText(34638 /*[HMI Serial Port]*/, "rtc3=".$uhrzeit_std."\xFF\xFF\xFF"); //Sendet den stunde
SPRT_SendText(34638 /*[HMI Serial Port]*/, "rtc4=".$uhrzeit_min."\xFF\xFF\xFF"); //\"$datum\"Sendet die Minute
SPRT_SendText(34638 /*[HMI Serial Port]*/, "rtc5=".$uhrzeit_sek."\xFF\xFF\xFF"); //Sendet die Sekunde
SPRT_SendText(34638 /*[HMI Serial Port]*/, "dims=5\xFF\xFF\xFF"); //Sendet ein 5% Dimmwert und speichert es ab
?>
wäre es grundsätzlich technisch im IPS umsetzbar, eine Funktion zu schaffen um das Display-Update über IPS und die serielle Schnittstelle zu realisieren?
Idee:
Datei im Nextion-Display Editor erstellen
Projekt-Datei über IPS einlesen
Daten über die serielle Anbindung zum Display
Hintergrund:
wenn das Display erst einmal eingebaut ist, wäre das Update - durch den Anschluss an den Rechner mit dem Editor oder die Übertragung via Micro-SD - ziemlich umständlich…
(der Editor läuft unter Windows, das Display hängt aber an der seriellen Schnittstelle eines Raspberry Pi…)
…und zumindest wir beide mittendrin statt nur dabei!
Wenn der Upload der neuen Datei aus IPS heraus zu lösen ist, dann wäre dass schon ein starkes Argument für die Nutzung.
Was mich in ganz anderer Weise noch beschäftigt, ist ein schöner Rahmen zum Einbau…
magst Du hier vielleicht noch mal ein paar Fotos von dem Rahmen einstellen?
In welchen Farben wäre die möglich?
Für welche Displaygrößen wären diese lieferbar?
Was kostet es?
Helmut, er hat sich sogar persönlich bei mir verabschiedet. Ich gehe mal davon aus, dass wir uns nicht unsympathisch sind.
Der Hinweis war nur, damit sich der Fragende nicht wundert, weil keine Antwort kommt.