Arduino und Nextion Display hat schon jemand Erfahrung?

Hallo.
Seid gestern kämpfe ich mit arduino Library und Nextion Editor.
Zurzeit benutze ich Nextion Editor V0.41
und
Arduino 1.6.9,
Arduino Library ITEADLIB_Arduino_Nextion (letzte Versio- unstabil)
und
Arduino Library ITEADLIB_Arduino_Nextion 0.7.0 (ältere Version- stabil)

bei der Arduino Library ITEADLIB_Arduino_Nextion fehlt mehrere #include SD.h SPI.h und SoftwareSerial.h
bei der Datei NexConfig.h anstatt #define nexSerial Serial2 (für Arduino Mega)
muss
#define nexSerial Serial (für UNO)

Problem wird es mit Arduino MKR1000 er findet kein SoftwareSerial.h in der Library.
Einfach kopieren von Hardware/arduino/avr/libraris/SoftwareSerial in der Ordner Libraries
-> kommt dann bei kompilieren Fehler no such file of directory "util/delay_basic.h" -> wahrscheinlich weil MKR1000 mit 48MHZ arbeitet. Wahrscheinlich kann mir jemand sagen wo ich das ändern muss?

Hat schon Jemand ein fertiges und funktioniertes Sketch mit dem ich anfangen kann?

Vielen Dank für Unterstützung

Bei diesem Händler gibt es ein Tutorial.

Gruß Tommy

Tommy56:
Bei diesem Händler gibt es ein Tutorial.

Gruß Tommy

habe ich schon geguckt. Funktioniert leider nur mit älteren Nextion editor + Arduino Library ITEADLIB_Arduino_Nextion 0.7.0 (Alt)
mit der MKR1000 ist leider funktioniert nicht

Du musst ja nicht mit der Arduino-Lib arbeiten.

Gruß Tommy

Dann könnte sein daß die Biblothek nicht für den MKR1000 geschrieben ist.
Grüße Uwe

uwefed:
Dann könnte sein daß die Biblothek nicht für den MKR1000 geschrieben ist.
Grüße Uwe

ja aber das ist nur Stanadard über UART Verbindung. warum SoftwareSerial nicht mit mkr1000 funktioniert?
ich vermute der Fehler liegt in softwareserial.h mit mkr1000

Tommy56:
Du musst ja nicht mit der Arduino-Lib arbeiten.

Mann kann auch ohne Bibliothek arbeiten, leider finde ich kein passendes Sketch dafür.

Gruß Tommy

Da ist in den verlinkten Dokumenten etwas gesagt.
Ansonsten nimm doch erst mal die ältere Variante.

Gruß Tommy

Tommy56:
Da ist in den verlinkten Dokumenten etwas gesagt.
Ansonsten nimm doch erst mal die ältere Variante.

Gruß Tommy

leider mkr1000 leuft bei beiden Libraries nicht

Dann lass doch erst mal das Display weg und versuche eine serielle Verbindung von dem Teil hin zu bekommen. Per Serial-USB-Wandler wieder in den PC oder zu einem anderen Arduino.

Ohne funktionierende serielle Verbindung funktioniert auch die Nutzung ohne Lib beim Nextion nicht.

Um erst mal die Menge der beteiligten Systeme zu reduzieren.
Das Ding basiert ja wohl auf dem Zero? Mal schauen, ob es zum Zero eigene SoftSerielle Libs gibt?

Ich kann auch nur raten, da ich beide Systeme nicht habe. Ich bekomme ein Nextion (7") zum Geburtstag im Februar - hoffentlich.

Gruß Tommy

Hallo,

also Ich habe irgendwie auch ein Verständnisproblem mit diesem Nextion… . Habe auch schon etwas zum laufen gebracht, allerdings nicht mein Projekt.

Es handelt sich um einen Dual Inkremental Decoder. Dieser funktioniert im Debug Modus einwandfrei. Habe jetzt einmal probiert diesen Code auf das Nextion umzuschreiben ---- ohne Erfolg.

Genutzt wird ein MEGA

Hier mal der Code ohne Nextion :

// HH191 MFD TX RS232 (2 Hz @ 57600)
int encoderPin1 = 2;
int encoderPin2 = 3;

int encoderPin3 = 5;
int encoderPin4 = 4;

int RESETLZ1=6;
int RESETLZ1WERT = 0;

int RESETLZ2=7;
int RESETLZ2WERT = 0;

volatile int lastEncoded = 0;
volatile long encoderValue = 0;

volatile int lastEncodedA = 0;
volatile long encoderValueA = 0;

long lastencoderValue = 0;

long lastencoderValueA = 0;

int lastMSB = 0;
int lastLSB = 0;

int lastMSBA = 0;
int lastLSBA = 0;

void setup() {
// 57600 Bps
Serial.begin (57600);

pinMode(encoderPin1, INPUT);
pinMode(encoderPin2, INPUT);

pinMode(encoderPin3, INPUT);
pinMode(encoderPin4, INPUT);

pinMode(RESETLZ1,INPUT);
pinMode(RESETLZ2,INPUT);

digitalWrite(encoderPin1, HIGH);
digitalWrite(encoderPin2, HIGH);

digitalWrite(RESETLZ1, HIGH);
digitalWrite(RESETLZ2, HIGH);

digitalWrite(encoderPin3, HIGH);
digitalWrite(encoderPin4, HIGH);

attachInterrupt(0, updateEncoder, CHANGE);
attachInterrupt(1, updateEncoder, CHANGE);

attachInterrupt(2, updateEncoder, CHANGE);
attachInterrupt(3, updateEncoder, CHANGE);

}

void loop(){

RESETLZ1WERT=digitalRead(RESETLZ1);
if (RESETLZ1WERT == LOW) encoderValue = 0; // Wenn Eingang 6 (RESETLZ1 auf “0”, dann Zähler rücksetzen)

RESETLZ2WERT=digitalRead(RESETLZ2);
if (RESETLZ2WERT == LOW) encoderValueA = 0; // Wenn Eingang 7 (RESETLZ2 auf “0”, dann Zähler rücksetzen)

Serial.print (“LZ1 (KW500) = “);
Serial.print (encoderValue*(1.0/40.0*40.0/40.0), 1.0);Serial.print (” m”);

Serial.print (" LZ2 (DPS) = “);
Serial.print (encoderValueA*(0.1/80.0*40.0), 1.0);Serial.print (” m");

delay(125); //500ms (2 Hz)

}

void updateEncoder(){

int MSB = digitalRead(encoderPin1);
int LSB = digitalRead(encoderPin2);

int encoded = (MSB << 1) |LSB;
int sum = (lastEncoded << 2) | encoded;

if(sum == 0b1101 || sum == 0b0100 || sum == 0b0010 || sum == 0b1011) encoderValue ++;
if(sum == 0b1110 || sum == 0b0111 || sum == 0b0001 || sum == 0b1000) encoderValue --;

lastEncoded = encoded;

int MSBA = digitalRead(encoderPin3);
int LSBA = digitalRead(encoderPin4);

int encodedA = (MSBA << 1) |LSBA;
int sumA = (lastEncodedA << 2) | encodedA;

if(sumA == 0b1101 || sumA == 0b0100 || sumA == 0b0010 || sumA == 0b1011) encoderValueA ++;
if(sumA == 0b1110 || sumA == 0b0111 || sumA == 0b0001 || sumA == 0b1000) encoderValueA --;

lastEncodedA = encodedA;

//store this value for next time

}

Funktioniert ohne Probleme. Anbei die Nextion Oberfläche. Ausgegeben soll Dezimal mit Komma (also wie bisher).

Vielleicht kann mir ja jemand helfen.

MFDV1_Hintergrund.jpg

Hallo,
wenn ich das richtig überflogen habe, dann hat das Ding KEINE TTL-Schnittstelle.
Die ist zwingend erforderlich für das Nextion.

Keine serielle Schnittstelle- kein Nextion.

Da mußt Du Dir etwas basteln, HardWare oder SoftWare.

Ob die Nextion-Lib mit dem Ding läuft, sollte eigentlich der Dokumentation
zu dieser Lib entnehmen zu sein.

Das Nextion läßt sich ohne Nextion-Lib “leichter” bedienen, als mit.
Kloppt die Lib am besten in die Tonne.

Wie man das Nextion vom Arduino aus anspricht, ist hier im Forum beschrieben.
Mal nach gesucht?
Und wenn ihr dabei seid, sucht gleich nach “serielle Übertragung”.

“probiert diesen Code auf das Nextion umzuschreiben”

Ich kann nichts entdecken, was auch nur ansatzweise mit dem Nextion zu tun
haben könnte.

Code setzt man hier im Forum üblicherweise in CodeTags (Editor </>)

Ja, ja, alles blödes Gequatsche von mir- aber das sind mir zuviele Baustellen.
Es ist alles dokumentiert, hier im Forum wie auch extern.

Gruß und Spaß
Andreas

“Ich bekomme ein Nextion (7”)"

Wünsche Dir das 5", gleiche Auflösung, aber RattenScharfe Abbildung.

Ich kann auch nicht verstehen, warum man unbedingt einen älteren Thread kapern muss, der auch noch ein total anderen Hintergrund hat.

Nun Seriell auf dem PC geht ohne Probleme. Werde es mal ohne LIB probieren und direkt auf Serial2 schreiben.

void setup()

{

Serial2.begin(xxxxxxx);

}

void loop()

{

Serial.print("nexNumber.txt=");

Serial.write(0x22);

Serial.print....................................................

Serial.write(0x22);

Serial.write(0xff);

Serial.write(0xff);

Serial.write(0xff);

Ha

Django3000:
Nun Seriell auf dem PC geht ohne Probleme. Werde es mal ohne LIB probieren und direkt auf Serial2 schreiben.

Hallo...
Mach mal für deine Frage einen neuen Thread auf und setze deinen Sketch in Code-Tags.
Dann kann man den evtl. auch lesen.

Ok, hat sich aber erledigt. Der Tipp ohne Library hat auf Anhieb funktioniert. Ausgabe findet statt und alles Prima.

---CLOSED---

Hallo zusammen

Hat noch jemand die Version 0.41 vom nextion Editor?
Die neueren Versionen haben keinen hmistructur Export mehr was ich wingend für die Verwendung mit Simhub benötige.

Vielen Dank für Euer Feedback

Gruss
Thomas

http://nextion.itead.cc/download/nextion-setup-v041.zip