Daten an ein Nextion-Display senden

OP #6834226
Guten abend,

ich spiele gerade mit meinem Nextion herum und habe folgendes Problem. 
Ich möchte eigentlich nur eine kleine C-Funktion schreiben, mit der ich 
Strings an verschiedene Textfelder senden kann. Als Parameter möchte ich 
dabei 1) den Namen des Textfeldes und 2) den Ausgabetext übergeben. Im 
konkreten Fall (ist nur ein Testprogramm) soll wenn am uC ein Taster 
betätigt wird (low-active) der Text "LOW" ans Display gesendet werden, 
andernfalls "HIGH".
Mein Problem: Im Textfeld des Nextion erscheint bei gedrücktem Taster 
der Text "Lt4" und unbetätigt "Ht4" wobei "t4" der Name des Textfeldes 
ist. Als IDE verwende ich Atmel-Studio7 und der uC ist ein Nano(328p). 
Ich Poste mal wesentliche Teile des Codes:
1
// Variablen für Textfeld am Nextion
2
char func_name[] = "";
3
char func_txt[] = "";
4

5
// Funktion zum Senden von Text an das Nextion-Display
6
void send_nex_txt(const char *func_name, const char *func_txt){
7
  
8
  PRINT("%s.txt=", func_name);
9
  PRINT("\"");
10
  PRINT("%s", func_txt);
11
  PRINT("\"");
12
  uart0_putc(255);
13
  uart0_putc(255);
14
  uart0_putc(255);
15
  
16
  
17
}
18

19
// read Button0
20
    butt = ((PINB & (1 << PINB0)) ? 1 : 0 );
21

22
    if (butt > 0) {
23
      strcpy(func_txt, "HIGH");
24
      //PRINT("TEST: %s", func_txt);
25
    }
26
    if (butt == 0) {
27
      strcpy(func_txt, "LOW");
28
    }
29
    
30

31
    // test
32
    strcpy(func_name, "t4");
33
                // rufe Funktion auf und übergebe Name und Text
34
    send_nex_txt(func_name, func_txt);

Zum Senden verwende ich die Fleury-Uart. Sende ich die Daten ohne 
Funktion, wird am Nextion alles richtig dargestellt. Die Ausgabe 
erscheint auch am Terminal Programm falsch. Ich finde aber den Fehler 
nicht und wäre über Hilfe dankbar.

LG Markus

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 5 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.