habe lange immer wieder mal mitgelesen und viele kleinere Programme geschrieben und getestet.
Nun wollte ich diese zusammenbringen und teilweise klappt es auch, jedoch funktioniert mein Programm nur direkt nach dem Flashen bzw. wenn ich "bestromt" die Platine über den Knopf resete.
Spannungsversorgung kommt über einen DC/DC der den Bildschirm und den Uno versorgt. Hat es evtl. etwas mit dem Nextion Availible zu run? Wie Syncronisieren sich die beiden das Sie "DA" sind?
Ich lese meine bald vorhandenen Buttons am Display aus und sende dann ein entsprechendes Can Frame.
Da ich die Serielle TX RX Schnittstelle am Uno nicht verwenden kann benutze ich 5&6. Zudem würde ich gerne den Spannungs "Wert" an das Display übertragen. Hier klappt aber keine der ganzen Varianten mit nextion.Print
oder nextion.write und dann auf das vorhandene TXT Feld. Vll. kann mir hier auch noch einer von euch einen Tipp geben oder ein Codeschnippsel.
vergesst den oberen Post
ich glaube ich habe es selbst gelöst, ein kleines delay scheint zu helfen
Mache mich jetzt an den Nextion übertrag und melde mich hier nochmals mit dem neuen Programm.
delay(200);
SPI.begin(); //Begins SPI communication
while (!nextion);
nextion.begin(9600);
pinMode(Spannung, INPUT);
//Serial.begin(38400);
mcp2515.reset();
mcp2515.setBitrate(CAN_500KBPS, MCP_8MHZ); //Sets CAN at speed 500KBPS and Clock 8MHz
mcp2515.setNormalMode();
@Dieter: keine Ahnung.... is schon wieder raus... hab alles versucht was ich ergooglen konnte.
Senden von Werten geht auch, habe zuvor falsch konvertiert.
Also, nun stehe ich an diesem Punkt, dass die Kommunikation grundlegend funktioniert, auf der ersten Seite gehen die 4 Buttons und der MCP schickt meinen Frame.
Sobald ich auf die zweite oder dritte Seite umschalte, jeweils auch 4 Buttons mit 1-12 durchnummeriert passiert folgendes:
Auf dem SerialPrint liegt der analogeingang und der String "daten_display", also die leeren Felder entspricht dem leeren String.
Das muss er m.M. nicht, da ich jedem mit Button einen "print 01" "print 02" Befehl übergebe, damit sendet er nur zahlen von 1 bis 12 und die werte ich aus.
Damit geht er in diese Bedingung -> if (daten_display == "01")
bernd_meier_123:
Das muss er m.M. nicht, da ich jedem mit Button einen "print 01" "print 02" Befehl übergebe, damit sendet er nur zahlen von 1 bis 12 und die werte ich aus.
Damit geht er in diese Bedingung -> if (daten_display == "01")
Hast du dir denn im seriellen Monitor mal angesehen, was tatsächlich übertragen wird ?