• Witaj na Forum Arduino Polska! Zapraszamy do rejestracji!
  • Znajdziesz tutaj wiele informacji na temat hardware / software.
Witaj! Logowanie Rejestracja


Ocena wątku:
  • 0 głosów - średnia: 0
  • 1
  • 2
  • 3
  • 4
  • 5
Nextion-Arduino biblioteka ITEADLIB_Arduino_Nextion
#1
Czy ktoś może wie lub zobaczyć dlaczego podczas włączenia komunikacji danych między nextion a arduino wywala na stronę (page 0) ? nawet gdy podejrzę port szeregowy w programie arduino resetuje do strony 0 

https://github.com/itead/ITEADLIB_Arduino_Nextion


Trochę to uciążliwe bo na tej stronie mam logo animację startową i chciał bym jeżeli to konieczne to żeby zaczynało od strony 1.  Bo każde włączenie tego zestawu powoduje że na wyświetlaczu przelatuje 2x strona startowa page 0.
Arduino zostało wymyślone po to, by robić dobrze jedną prostą rzecz – migać diodą. 
 
Odpowiedź
#2
Umieść kod na forum.
 
Odpowiedź
#3
Arduino (UNO/NANO) jest tak skonstruowane, że otwarcie portu szeregowego (lub zmiana baudrate, bo to faktycznie jest zamknięcie i otwarcie w nowym ustawieniu) powoduje reset Arduino. Jest to pomocne przy programowaniu, gdzie port jest otwierany, następuje reset płytki, uruchomienie bootloadera, który czeka sekundę na kod, jak nic nie ma to leci dalej uruchamiając już wgrany kod.
Można to wyłączyć przecinając ścieżkę, wylutowując zworkę - zależy jaką masz płytkę. Wtedy tracisz autoreset. Przy każdym wgrywaniu kodu trzeba wcisnąć przycisk reset paluchem.
Możesz też użyć sobie jakiegoś softuarta to wysyłania komunikatów z Arduino, Arduino MEGA i nasłuchiwać komunikatów z płytki na uart2 czy 3 i odbierać je niezależnym konwerterem. Wtedy nie ma problemu, że podłączenie się do Arduino resetuje płytkę.
Miło być decenianym https://buycoffee.to/kaczakat
 
Odpowiedź
#4
(21-10-2018, 12:48)es2 napisał(a): Umieść kod na forum.

Kod raczej w ardunio nie ma tu nic do rzeczy, raczej biblioteka ale jeśli trzeba to taki kod testowy

Kod:
#include "Nextion.h"

#include "DHT.h"
#define DHTPIN 4
#define DHTTYPE DHT11   // DHT 11

DHT dht(DHTPIN, DHTTYPE);

// Declare your Nextion objects - Example (page id = 0, component id = 1, component name = "b0")

NexText tTempC = NexText(2, 3, "tTempC");
NexText tHumidity = NexText(2, 4, "tHumidity");
NexButton bUpdate = NexButton(2,5, "bUpdate");

NexTouch *nex_listen_list[] = {
 &bUpdate,
 NULL
};


void setup(void) {    
 dht.begin();
 Serial.begin(9600);
   
 // You might need to change NexConfig.h file in your ITEADLIB_Arduino_Nextion folder
 // Set the baudrate which is for debug and communicate with Nextion screen
 nexInit();

}

void loop(void) {  

float h = dht.readHumidity();
 // Read temperature as Celsius (the default)
 float t = dht.readTemperature();

 if (isnan(h) || isnan(t)) {
   return;
 }
 
 static char temperatureCTemp[6];
 dtostrf(t, 6, 2, temperatureCTemp);
 tTempC.setText(temperatureCTemp);

 char hTemp[10] = {0};
 utoa(int(h), hTemp, 10);
 tHumidity.setText(hTemp);
 delay(5000);
}

Dzieki za wyjaśnienia kaczakat, dlatego szukam w bibliotece co powoduje że każde otwarcie portu wysyła do wyświetlacza "page 0"

https://scr.hu/82y50YN
Arduino zostało wymyślone po to, by robić dobrze jedną prostą rzecz – migać diodą. 
 
Odpowiedź
#5
Ale o czym Ty mówisz? Przecież jak robisz reset Arduino to program startuje od nowa, wyświetla stronę 0 - nexInit();. Czego szukasz?
Miło być decenianym https://buycoffee.to/kaczakat
 
Odpowiedź
#6
No właśnie tego szukałem Wink ja raczkujący i uczący sięWink

Bo dziś walczyłem z funkcją " dims" dlaczego kody pokazane w internecie nie odczytywały zawartości w pamięci. Ale doszedłem sam co trochę to coś nowego się uczeBig Grin
Arduino zostało wymyślone po to, by robić dobrze jedną prostą rzecz – migać diodą. 
 
Odpowiedź
  


Skocz do:


Przeglądający: 1 gości