Themabewertung:
  • 0 Bewertung(en) - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Einarbeitung in Nextion Displays
#1
Hallo zusammen,

@Jupp: ich sehe Du verstehst die Edzelf-Firmware und deren Aufbau und wohl auch den Quellcode. Wahrscheinlich kann ich Dir da gar nichts erklären bzw. ist es kein Problem für Dich passende Änderungen an den Display-Routinen und damit am HMI vorzunehmen.

(06.05.2020, 20:51)Neuling schrieb: Eine Frage an Bernhard: Kann mann die Nextion HMI in der Software auf einen 3.5 Zoll Nextion umstricken?

Dieter ich gestehe, diese Nextion-Displays sind mir gar nicht so geläufig, hatte noch keines in der Hand. Mit Jupps Links habe ich mich in diese Sache aber mal reingelesen. Im Prinzip sind das stink-normale Displays mit einem eigenen Front-Prozessor der xxx - MHz Klasse. Der macht dann relativ einfach über eine externe Designsoftware ein GUI und kommuniziert mit dem Hauptprozessor des Systems über ein Minimalprotokoll (serielle Schnittstelle RX/TX). Dieser "Komfort" schlägt sich natürlich im Display-Preis nieder, klar.
Allerdings und das muss ich sagen, der ESP32 hat genug Rechenleistung über, um mit einem "normalen" Display und einer GUI-Lib das gleiche Ergebnis zu erzielen, vielleicht nicht immer mit jeder Lib so komfortabel, aber ja, das geht auch preiswerter, meine Meinung.  Spätestens wenn man auf einem Kontroller ein richtiges OS (irgendein RTOS, Linux) laufen lässt, es also in Richtung iRadio geht, hat das Nextion dann seinen Reiz komplett verloren, denn für diese Systeme gibt es sehr viel leistungsfähigere HMI-Designer! Also in Richtung QT usw., so wie ich das im iRadio-Thread schon mal ansatzweise demonstriert habe.

Ich bin daher etwas gespalten was die Nextion-Displays angeht. Sie bringen mir und auch dem iRadio nicht im Ansatz neue Funktionen oder Bedienkomfort, sondern verteuern die Sache (wegen dem zwischengeschalteten Frontprozessor) nur. Die Edzelf-Firmware ist auf dieses Display rudimentär eingegangen, dass sehe ich am Quellcode, aber da will ich mich gar nicht reinhängen, denn wie gesagt sind die Displays aus Sicht des Hauptprozessors ja nix anderes als eine serielle Schnittstelle.
Für das iRadio kann ich mir das nur vorstellen, wenn das plötzlich in der Breite gewünscht wird und ich Zuschriften dazu erhalte, aber bisher kommen alle mit den HMI und GUI-Designern, die Fremdbibliotheken für Linux mitbringen, wohl ganz gut zurecht. Die Nextion-Displays zielen also mehr auf den uC-Bereich und weniger auf die viel größeren und leistungsfähigeren SoCs (System on Chips), mit denen ich mich, was Internetradios angeht, seit der Urversion des iRadios beschäftige und die so ein GUI bzw. HMI mal so nebenbei berechnen und ausgeben können. 

Ich weiß also nicht wie ich im Moment weiter nützlich sein kann was die Edzelf-Firmware angeht? Es scheint ja, als habt Ihr die Firmware  in aller Schnelle verstanden und könnt die Funktionalität im Quellcode wiederfinden. Super. Das ist doch schon mehr als die halbe Miete, der Rest ist nur C wie im Einsteigerkurs Mikrocontrollerprogrammierung gezeigt, oder wie es im Forum auch für das iRadio schon angewendet wird. 
Ihr könnte ja jetzt sowohl die GUI für LCD-Module oder andere Displays anpassen, in dem Ihr die Funktionen aus Dummytft.h in einer eigenen Header selbst anlegt und re-implementiert oder einen bestehenden Header verändert/überschreibt. Die Daten die noch nicht auf dem Display dargestellt werden, findet Ihr ja in den globalen Variablen im Hauptprogramm Esp32_radio.ino.

Ich weiß nicht, ob Ihr damit klar kommt. Wollen wir jetzt mal ein (ich Rede mal in der Sprache des iRadio) Displaydaemon, also Displayansteuerung für irgendein Display gemeinsam neu erstellen, oder ein bestehendes Display (zum Beispiel für ein 16x2 LCD) anpassen???  Wo kann ich helfen?  Wir können ja auch gemeinsam ein Nextion GUI mit dem Designer für das ESP32-Radio von Edzelf entwickeln. Ich allerdings nur mit Hilfe des Radios und einem Displaysimulator, ihr da Ihr solche Displays wohl habt, sicher in echter Hardware.

Gruß
Bernhard
Ansprechpartner für Umbau oder Modernisierung von Röhrenradios mittels SDR,DAB+,Internetradio,Firmwareentwicklung. 
Unser Open-Source Softwarebaukasten für Internetradios gibt es auf der Github-Seite! Projekt: BM45/iRadio (Google "github BM45/iRadio")
Zitieren
#2
Hallo Bernhard,
sagen wir mal so: ich habe gefunden wo ich ein paar Parameter ändern kann um meine hardware anzubinden. Das bedeutet nicht daß ich den code komplett verstehe. Das werde ich auch nie. Wie gesagt genügt es mir wenn ich damit umgehen kann.

Zitat:Wollen wir jetzt mal ein (ich Rede mal in der Sprache des iRadio) Displaydaemon, also Displayansteuerung für irgendein Display gemeinsam neu erstellen, oder ein bestehendes Display (zum Beispiel für ein 16x2 LCD) anpassen???

es wäre schon schön wenn das 16x2 mehr Informationen liefern würde und nicht eine ganze Zeile brach liegen lässt. Auch schön wäre die Einbindung eines LCD 20x4. Das könnte dann schon Romane erzählen.

@Dieter:
ich hab mir gestern noch ein Tutorial angeschaut und gesehen daß man im Nextion-Editor einfach oben rechts über "Device" den Displaytyp ändern kann. Natürlich muss man die Elemente dann auf die neue Größe anpassen.

Zu Nextion schreib ich gleich noch was.
Gruß,
Jupp
-----------------------------

was du baust ist immer mit dir verbunden
(Lego)

Einsamkeit ist nur ein Mangel an Technologie
(@beetlebum)
Zitieren
#3
Bernhard45 schrieb:..Ich bin daher etwas gespalten was die Nextion-Displays angeht. Sie bringen mir und auch dem iRadio nicht im Ansatz neue Funktionen oder Bedienkomfort, sondern verteuern die Sache (wegen dem zwischengeschalteten Frontprozessor) nur..

Bernhard, ich kann aus deiner Sicht deine Einstellung nachvollziehen. Du hast kein Problem damit schnell einen Displaytreiber zu schreiben oder mit egal welcher Bibliothek egal welches Display in C++ einzubinden. Aber sieh es mal aus der Sicht des normalen Anwenders. Er kann mit einer kleinen kostenlosen software (Nextion-Editor) völlig losgelöst von Programmiersprachen schöne grafische Oberflächen zusammenklicken mit Scrolltexten, Buttons, Fortschrittsbalken, Checkboxen usw. Alles was man braucht.

zur Geschwindigkeit. Sämtliche Grafikberechnungen laufen auf dem Display. Stell dir mal eine Anwendung bei iRadio vor mit dem ältesten Raspberry. Eine Animation mit Skalenbild und bewegtem Zeiger braucht kein X11 mehr, keine Trickserei mehr mit KMS-Treibern oder Hochtaktung. Der Raspberry kümmert sich nur noch um den cvlc und gpiod und das display liefert die flüssige Animation/Simulation.

weiteres Beispiel: der kleinste attiny bräuchte nur den I2C-Bus um einen FM-Baustein zu bedienen und hätte per Nextion eine Grafikausgabe wie ein "großes" board.

letzter Punkt: Kosten. Ein 3,5" Nextion kostet 28 Euro. Ein vergleichbares 3,5" HDMI Display knapp 20 Euro (beides beim Chinesen). Ein saintsmart oder gar ein waveshare Display kostet gleich ein mehrfaches.

Spielpotential ohne Ende....
Gruß,
Jupp
-----------------------------

was du baust ist immer mit dir verbunden
(Lego)

Einsamkeit ist nur ein Mangel an Technologie
(@beetlebum)
Zitieren
#4
(07.05.2020, 10:42)saarfranzose schrieb: Aber sieh es mal aus der Sicht des normalen Anwenders. Er kann mit einer kleinen kostenlosen software (Nextion-Editor) völlig losgelöst von Programmiersprachen schöne grafische Oberflächen zusammenklicken mit Scrolltexten, Buttons, Fortschrittsbalken, Checkboxen usw. Alles was man braucht.

Na ganz so einfach ist es dann nicht Jupp, Du musst auch bei dem Nextion-Display dafür sorgen das der Hauptprozessor die Daten in einem bestimmten Format an das Display mit dem Frontprozessor sendet. Du musst auf dem Hauptprozessor also doch zur Programmiersprache und Compiler greifen und die Daten so über eine serielle Schnittstelle schicken, wie es das Nextion haben will. Und das Aufbauen einer grafischen Oberfläche kannst Du mit dem kostenlosen QT-Designer oder dem GUI-Buildern von fltk, gtk+ und vielen anderen Libs auch einfach durch zusammenklicken von Elementen. Das Anschließen der GUI an den Hauptprozessor braucht hier genauso viel Aufwand wie bei den Nextions. Einziger Unterschied bei den Nextions berechnet die Ausgabe ein zusätzlicher Prozessor, im anderen Fall gleich der Hauptprozessor der sich sowieso meist noch langweilt. Und nur weil ein GUI-Builder da ist, baut man nicht gleich die grafisch schönsten Oberflächen, weder bei den Nextions noch bei QT oder sonst einer Lib.


saarfranzose schrieb:zur Geschwindigkeit. Sämtliche Grafikberechnungen laufen auf dem Display. Stell dir mal eine Anwendung bei iRadio vor mit dem ältesten Raspberry.

...

letzter Punkt: Kosten. Ein 3,5" Nextion kostet 28 Euro. Ein vergleichbares 3,5" HDMI Display knapp 20 Euro (beides beim Chinesen). Ein saintsmart oder gar ein waveshare Display kostet gleich ein mehrfaches.


Naja, selbst der älteste Raspberry übertrifft den Frontprozessor der schnellsten und größten Nextions-Display in der 100er Euro-Klasse um Längen, selbst wenn er noch cvlc nebenher laufen lassen muss! Und die preiswerten Nextions haben auch nur Frontprozessoren im 2-stelligen MHz-Bereich. 
Das große Problem bei fotorealistischen Skalensimulationen ist halt das "Foto", das hat eine gewisse Größe und pro Sekunde müssen eine zweistellige Zahl an Frames berechnet werden. Das macht ein Raspberry 1 immer noch schneller als ein Nextion-Displayprozessor. Will man soetwas (Skalensimulation) auf einem Nextion flüssig darstellen, muss man arg tricksen (da hilft auch keine Editorsoftware weiter) und die Simulation anders aufbauen. Würde man diese umgebaute Simulation dann genauso auf auf den Pi 1 laufen lassen, also statt mit SDL2 in einer "sparsameren" Lib die auch das Nextion braucht, mein lieber Mann! Mit relativ statischen GUIs, Touchscreens etc., also unsere nicht X11 Displayd im iRadio, da langweilt sich sowohl der Ur-Pi wie auch der Nextion-Frontprozessor im Display.


Also ich sehe da keine Vorteile von den Nextion-Displays. Gut, eine Spielerei, hat man mit anderen ähnlichen GUI-Umgebungen noch nicht gearbeitet, ist es möglicherweise plötzlich die Offenbarung (auf die bald die Ernüchterung folgt), aber solche GUI-Systeme gab es für viele uC-Systeme und SPS ja auch schon vor Nexiton und wo der Hauptprozessor zu ausgelastet war, hat man vom Design her schon zwei Prozessoren (Front/Haupt) genutzt. Nix neues, alter Wein in neuen Schläuchen....  Man hat durch die Nextion-Displays auch nicht weniger Entwicklungsaufwand/Programmieraufwand, man verteilt die Sache nur auf zwei getrennte Rechnersysteme und Toolchains. Aber Du kannst ja gern mal ein Nextion-Displayd parallel zum bestehenden fltk-Displayd im iRadio erstellen! Das kann ich dann auch aufs Github stellen wenn Du willst. Du wirst sehen, nur mit dem GUI-Builder von Nextion allein kommst Du da nicht weit! Ansonsten unterstützen wir im iRadio ja schon Displaydaemonen mit der gesamten Palette aller verfügbaren GUI-Builder/Libs die es für Unix/Linux jemals gab. Das "Kommunikationsprotokoll" ist von cvlc vorgeben und TCP/IP (via nc zum Beispiel) ist der "Kleber" zu sämtlichen Technologien.
 
Gruß
Bernhard

PS: Hier mal als Beispiel eines der vielen Konkurrenzsysteme zur Nextion: https://www.st.com/content/st_com/en/stm...rface.html
Auch damit baut man HMI/GUIs mit einem Builder, hat aber den Vorteil beliebige 0815-Displays mit unterschiedlichen HW-Schnittstellen an eine uC-Architektur klatschen zu können. Man ist also nicht auf das Display-Produkt einer Firma angewiesen. Hier mit QT (praktisch schon einem "Industriestandard" was HMI angeht und in Autos, Radio, Navis, … wiederzufinden) ist man sehr frei bei der Prozessor und Display-Wahl https://www.qt.io/
Gibt unzählige ähnliche Systeme, da ist Nextion kein Vorreiter, nur das man sich bei denen direkt auf die Hardware (Display und Schnittstelle zum Hauptprozessor) schon festlegt.
Ansprechpartner für Umbau oder Modernisierung von Röhrenradios mittels SDR,DAB+,Internetradio,Firmwareentwicklung. 
Unser Open-Source Softwarebaukasten für Internetradios gibt es auf der Github-Seite! Projekt: BM45/iRadio (Google "github BM45/iRadio")
Zitieren
#5
Hallo, vielen Dank, Bernhard, für die langen Ausführungen über den Nextion. Die .tft und die HMI habe habe ich bereits auf meinem Nextion 3.5. Ich bin jedoch nicht unbedingt auf den Nextion fest gelegt. Ein vierzeiliger TFT würde auch gehen. Ich habe den Nextion nur noch vom educstv Radio liegen. So, morgen kommt mein bestellter Adafruit vs 1053. Dann gehts weiter mit basteln.
Eine andere Frage habe ich noch an Dich: kann ich das iRadio auch mit einem Rasbian mit Bildschirm und Tastatur installieren?

Gruß
Dieter
Zitieren
#6
Für mich ist es jedenfalls (noch) eine Offenbarung. Wie sich ein Skalenbild im Hintergrund macht werden wir noch sehen. Möglich daß dann eine Ernüchterung kommt. Vielleicht aber auch nicht. Der serielle Dialog muss natürlich im Hauptprogramm eingepflegt werden. Bei unserem Edzelf-Radio ist das ja schon der Fall. Eigene Anpassungen werden dann nur noch im Nextion-Editor gebaut. Das Edzelf-Programm muss ich dafür nicht mehr anfassen.
Ich habe das 3,5" Nextion jetzt aktiviert. Die HMI-Datei von Edzelf wurde erst mal automatisch konvertiert auf den aktuellsten Softwarestand und ich konnte dann den Displaytyp umstellen. Weitere Anpassungen hab ich noch nicht vorgenommen. Dazu muss ich mich noch in den Editor einarbeiten.
Es sind die GPIOS 16 und 17 von Edzelf vorgesehen, welche RXD2 und TXD2 entsprechen. Die Ausgabe ist schon bedeutend informativer als mit dem LCD und die Steuerung funktioniert auch bestens per touch.

   

   
Gruß,
Jupp
-----------------------------

was du baust ist immer mit dir verbunden
(Lego)

Einsamkeit ist nur ein Mangel an Technologie
(@beetlebum)
Zitieren
#7
(07.05.2020, 21:20)Neuling schrieb: Eine andere Frage habe ich noch an Dich: kann ich das iRadio auch mit einem Rasbian mit Bildschirm und Tastatur installieren?

Hallo Dieter, 

ja das ist kein Problem. 

Gruß
Bernhard
Ansprechpartner für Umbau oder Modernisierung von Röhrenradios mittels SDR,DAB+,Internetradio,Firmwareentwicklung. 
Unser Open-Source Softwarebaukasten für Internetradios gibt es auf der Github-Seite! Projekt: BM45/iRadio (Google "github BM45/iRadio")
Zitieren
#8
(07.05.2020, 21:20)Neuling schrieb: Hallo, vielen Dank, Bernhard, für die langen Ausführungen über den Nextion. Die .tft und die HMI habe habe ich bereits auf meinem Nextion 3.5. Ich bin jedoch nicht unbedingt auf den Nextion fest gelegt. Ein vierzeiliger TFT würde auch gehen. Ich habe den Nextion nur noch vom educstv Radio liegen. So, morgen kommt mein bestellter Adafruit vs 1053. Dann gehts weiter mit basteln.
Eine andere Frage habe ich noch an Dich: kann ich das iRadio auch mit einem Rasbian mit Bildschirm und Tastatur installieren?

Gruß
Dieter

Hallo Dieter,

die HMI-Datei ist die Projektdatei für den Editor. Die tft ist der Export für das Display. Die HMI braucht also nicht auf die SD-Karte.
Dein iRadio behandeln wir in einem extra thread, sonst kommen wir hier offtopic. Ich hoffe es ist dir recht wenn wir deinen thread hier benutzen um Edzelf mit seinen Möglichkeiten vorzustellen. Das hat sich alles jetzt so entwickelt und muss ja nicht fragmentiert werden.
Gruß,
Jupp
-----------------------------

was du baust ist immer mit dir verbunden
(Lego)

Einsamkeit ist nur ein Mangel an Technologie
(@beetlebum)
Zitieren
#9
(07.05.2020, 21:31)saarfranzose schrieb: Der serielle Dialog muss natürlich im Hauptprogramm eingepflegt werden. Bei unserem Edzelf-Radio ist das ja schon der Fall. Eigene Anpassungen werden dann nur noch im Nextion-Editor gebaut. Das Edzelf-Programm muss ich dafür nicht mehr anfassen.

Sofern Du dich auf die Default-Datensätze beschränkst, die er auf der seriellen Schnittstelle zum Display bereits herausgibt, ja das reicht. Das trifft aber auch auf die anderen Displays von LCD bis OLED zu, welche die Firmware unterstützt. Für alle anderen Daten/Sonderwünsche wirst Du definitiv die Edzelf-Firmware erweitern müssen, da reicht der Nextion-Editor allein nicht mehr aus, damit kannst Du die Datenelemente auf dem Display lediglich optisch neu "anrichten". Auch das Nextion-Display kann halt nur die Daten in einer GUI anzeigen, die es vom Hauptprozessor (über RX/TX) geliefert bekommt, Hexen und Wahrsagen kann das Nextion leider auch nicht nur weil es einen eigenen Prozessor mitbringt. Das wäre ja zu schön! Wink

Wenn Dir also die Standard-Daten ausreichen die Edzelf sowieso schon ausgibt, dann ist alles gut. Ansonsten müssten wir den Datensatz erweitern der per serieller Schnittstelle zum Display geht. Schreibe mir welche Daten Du aus dem globalen Bereich noch brauchst, dann können wir das umstricken.
Auch wenn Du so eine Spielerei wie einen Skalenzeiger haben willst, wobei alle Sender der Senderliste gleichmäßig über die Skale verteilt werden, müssen wir das erst auf der Edzelf-Firmware "berechnen" lassen, um die Daten dann auf Nachfrage zum Display zu senden. Also wir brauchen mindesten Senderlistenumfang und aktuelle Nummer des wiedergegebenen Senders in der Programmliste, die waren so glaube noch nicht enthalten? Erst wenn wir die Daten dann auf der Displayseite haben, können wir schauen wie wir das im Nextion-Editor grafisch am Besten verwursten.

Gruß
Bernhard
Ansprechpartner für Umbau oder Modernisierung von Röhrenradios mittels SDR,DAB+,Internetradio,Firmwareentwicklung. 
Unser Open-Source Softwarebaukasten für Internetradios gibt es auf der Github-Seite! Projekt: BM45/iRadio (Google "github BM45/iRadio")
Zitieren
#10
wir müssen ja nicht jedes Radio mit Nachtschaltung und Wecker ausbauen :-) Zum aktuellen Zeitpunkt vermisse ich mal keine Datensätze.
Gruß,
Jupp
-----------------------------

was du baust ist immer mit dir verbunden
(Lego)

Einsamkeit ist nur ein Mangel an Technologie
(@beetlebum)
Zitieren
#11
saarfranzose schrieb:
Dein iRadio behandeln wir in einem extra thread, sonst kommen wir hier offtopic. Ich hoffe es ist dir recht wenn wir deinen thread hier benutzen um Edzelf mit seinen Möglichkeiten vorzustellen. Das hat sich alles jetzt so entwickelt und muss ja nicht fragmentiert werden.

Oh, entschuldigt. Da hab ich nicht darüber nachgedacht. Wird nicht wieder vorkommen.
Gruß
Dieter
Zitieren
#12
erste Übungen. Anpassen der vorhandenen HMI an ein Nextion NX4832T035_11.
(An dem volume-slider ist der Knopf abgebrochen .. muss ich noch suchen)

Der obere rot-grüne slider ist übrigends die Batterieanzeige.

   

   
Gruß,
Jupp
-----------------------------

was du baust ist immer mit dir verbunden
(Lego)

Einsamkeit ist nur ein Mangel an Technologie
(@beetlebum)
Zitieren
#13
heute mal ein design aus den 70ern (Der Zeiger ist statisch).

   
Gruß,
Jupp
-----------------------------

was du baust ist immer mit dir verbunden
(Lego)

Einsamkeit ist nur ein Mangel an Technologie
(@beetlebum)
Zitieren
#14
(09.05.2020, 20:36)saarfranzose schrieb:  (Der Zeiger ist statisch).

Wenn du ein GUI-Element nimmst, dessen Position zur Laufzeit verschiebbar ist, lässt sich das ändern. Vielleicht auch über die Zeichenbefehle!

Beispiel-Befehl vom Host: draw 10,10,50,50,GREEN 0xff 0xff 0xff: Stellt einen grünen Rahmen mit der Kantenlänge 50 an der Position x=10 und y=10 dar.
Allerdings pro Frame wird dann auch ein CLS-Befehl gebraucht!

Und die Edzelf-Firmware muss dann auch die Soll-Position an das Display kontinuierlich senden bzw. passend antworten wenn das Display die Zeigerposition zum Beispiel über einen Timer-Event anfordert. Im Prinzip auch nichts anderes als das was wir unter SDL2 machen, nur das statt zwei Prozessen (cvlc, sdlskale) zwei getrennte Firmwares (Edzelf,Nextion) genutzt werden und TCP/IP gegen serielle Schnittstelle ausgetauscht wird. Das könnte zum Flaschenhals werden und eine flüssige Skalensimulation tatsächlich verhindern.

Hier ist ein guter Einstieg für den Bereich Smart-Embedded-Displays, am Beispiel von Nextion: https://www.boecker-systemelektronik.de/..._Tutorials

Solange der Zeiger über der Skale steht, wie in deinem Fall oben, brauchst Du ja auch keine Transparenz, ist das Skalenglas vor dem Zeiger wird man wegen des Alphakanals wieder mit unkomprimierten und großen PNGs arbeiten müssen. Wie der Frontprozessor des Nextion diese Datenmenge verkraftet, kann ich noch nicht sagen. Ich vermute mal auch die Latenzzeiten des Simulators stimmen nicht mit der Zeit des echten Displays überein? Die sind nämlich gar nicht mal so ohne und alles in der Bedienung wirkt wie in Zeitlupe, das wäre dann auch Gift für flüssige Wiedergabe bei der Nutzung der Grafikprimitiven auf dem Display.

Jupp, kannst Du bitte mal ein paar Benchmarks auf der richtigen Hardware ausführen und schauen wie viele FPS das echte Display überhaupt macht ? Also erstmal mit einem (blanken, also ohne Edzelf drauf) ESP32 den Zeiger synthetisch zeichnen lassen und Frame für Frame von links nach rechts animiert wandern lassen? Alles per serieller Schnittstelle, danach das Ganze nochmal, aber direkt auf dem Interpreter im Displayprozessor, also ohne das der ESP32 ständig das Display "informieren" muss. Wie "gut" schafft das Display diese Aufgabe und bei welcher Methode geht das flüssiger?
Bernhard
Ansprechpartner für Umbau oder Modernisierung von Röhrenradios mittels SDR,DAB+,Internetradio,Firmwareentwicklung. 
Unser Open-Source Softwarebaukasten für Internetradios gibt es auf der Github-Seite! Projekt: BM45/iRadio (Google "github BM45/iRadio")
Zitieren
#15
eine umfangreiche Aufgabe für mich. Das Tutorial hab ich zwar komplett durchgelesen, aber ich verstehe es erst wenn ich es Stück für Stück in die Praxis umsetze. Jetzt hab ich den FTDI-Adapter rausgesucht und versuche darüber an das display zu kommen.
Was ich bis jetzt schon sagen kann: evtl. macht uns die fehlende Transparenz einen Strich durch die Rechnung. Wieweit die crop-Funktion das ausgleicht wird sich noch zeigen.
Gruß,
Jupp
-----------------------------

was du baust ist immer mit dir verbunden
(Lego)

Einsamkeit ist nur ein Mangel an Technologie
(@beetlebum)
Zitieren
#16
ich denke ich lasse den thread ab post#53 abtrennen. Titel: Einarbeitung in Nextion Displays
Das wird noch ein umfangreiches Thema und entfernt sich vom Ursprungsthema.
Gruß,
Jupp
-----------------------------

was du baust ist immer mit dir verbunden
(Lego)

Einsamkeit ist nur ein Mangel an Technologie
(@beetlebum)
Zitieren
#17
Thema auf Jupp´s Wunsch abgetrennt
mit freundlichen grüßen aus Dielfen (Siegerland)
Dietmar
Wenn einer dem anderen hilft ohne daraus Profit schlagen zu wollen dann sind wir auf einem guten Weg
Zitieren
#18
ich danke dir, Dietmar! Dann kann es weitergehen.

In einem Testprogramm lasse ich einen Zähler bis 100 laufen und übergebe den Wert an eine ProgressBar. Die Zeit bis der Balken am Ende ankommt beläuft sich auf knapp etwas mehr als 1 Sekunde.

Code:
int i;

void setup() {
    Serial.begin(9600);
    Serial2.begin(9600);
}

void loop() {
        for (i=1; i<101; i++) {
        Serial.println(i);
        Serial2.print("j0.val=");
        Serial2.print(i);
        Serial2.write(0xff);
        Serial2.write(0xff);
        Serial2.write(0xff);
        //delay(1000);
        }
}

ich benutze absichtlich keine Nextion library. Auch ist mir klar daß man die 3 x 0xff eleganter hinterher schicken kann.
Gruß,
Jupp
-----------------------------

was du baust ist immer mit dir verbunden
(Lego)

Einsamkeit ist nur ein Mangel an Technologie
(@beetlebum)
Zitieren
#19
meine nächsten Übungen hab ich in einem Video zusammengefasst, das hat mehr Aussage.



als pic benutze ich einen roten Zeiger 5x320px (ID0). Das cls ruiniert wirklich die flüssige Wiedergabe. Dann hab ich einen Trick angewendet. Ein anderer Zeiger (ID1) hat rechts und links einen 5px breiten Rand in Hintergrundfarbe, dadurch wird der rote Anteil des Zeigers des vorherigen frame automatisch überschrieben. Das Ergebnis ist eine sehr schöne, flüssige Animation, die natürlich nur bei unifarbigem Hintergrund funktioniert.

Am Quellcode hat sich wenig geändert, will nur noch mal zeigen wie man eine Variable in die Bildkoordinaten bringt. Das war für mich eine Herausforderung. CLS und delay sind hier grade auskommentiert, das pic ID1 ist ausgewählt.

Code:
int i;

void setup() {
    Serial.begin(9600);
    Serial2.begin(9600);

    Serial2.print("cls WHITE");
    Serial2.write(0xff);
    Serial2.write(0xff);
    Serial2.write(0xff);
}

void loop() {
        for (i=0; i<466; i+=1) {
        Serial.println(i);
        /*Serial2.print("cls WHITE");
        Serial2.write(0xff);
        Serial2.write(0xff);
        Serial2.write(0xff);*/
        Serial2.print("pic ");
        Serial2.print(i);
        Serial2.print(",0,1");
        Serial2.write(0xff);
        Serial2.write(0xff);
        Serial2.write(0xff);
        //delay(100);
        }
}

btw.. wenn man an einem ESP die USB-Buchse kaputtgespielt hat kann man sich auf diese Art behelfen:

   

und dann hier noch einen link mit einer übersichtlichen Zusammenfassung der Zeichenbefehle:

technical publishing
Gruß,
Jupp
-----------------------------

was du baust ist immer mit dir verbunden
(Lego)

Einsamkeit ist nur ein Mangel an Technologie
(@beetlebum)
Zitieren
#20
die pic Funktion hat in meine 70er Jahre Skala Bewegung gebracht.

Gruß,
Jupp
-----------------------------

was du baust ist immer mit dir verbunden
(Lego)

Einsamkeit ist nur ein Mangel an Technologie
(@beetlebum)
Zitieren


Gehe zu: