qui il #include <Nextion.h>
#define ledpin 6 // il led e' connesso alla porta 6
uint32_t cursore = 0;
float temperatura = 0;
int valore = 0; // zona utilizzata nel calcolo della temperatura
char tem [6] = {0}; // zona in cui inserire il valore della temperatura da trasmettere al nextion
// dichiarazione degli oggetti nextion che interagiscono con Arduino; tra parentesi
// il numero di pagina, il numero ID e tra apici il nome dell'oggetto in Nextion
NexButton bon = NexButton (0, 3, "bon");
NexButton boff = NexButton (0, 4, "boff");
NexSlider h0 = NexSlider (0, 5, "h0");
NexText temp = NexText (1, 4, "temp");
NexButton bupdate = NexButton (1, 5, "bupdate");
// lista degli oggetti touch
NexTouch *nex_listen_list[] =
{
&bon,
&boff,
&h0,
&bupdate,
NULL
};
/*
routine attivata nel momento in cui viene rilasciato il bottone "bon".
accensione del led
*/
void accendiled(void *ptr)
{
digitalWrite(ledpin, HIGH);
}
/*
routine attivata nel momento in cui viene rilasciato il tasto "boff"
spegnimento del led
*/
void spegniled(void *ptr)
{
digitalWrite(ledpin, LOW);
}
/*
routine attivata nel momento in cui viene mosso e rilasciato il cursore
variazione dell'intensita' luminosa del led
*/
void intensitaled(void *ptr)
{
h0.getValue(&cursore);
analogWrite(ledpin, cursore); // varia la luminosita' del led
}
/*
routine attivata nel momento in cui viene rilasciato il tasto bupdate
aggiona temperatura
*/
void aggiornatemperatura(void *ptr)
{
valore = analogRead (0);
temperatura = (valore * 48.8758) / 100.00;
dtostrf(temperatura, 6, 2, tem);
temp.setText(tem);
}
void setup(void)
{
Serial.begin(9600);
nexInit();
// registrazione delle routines che devono essere attivate al verificarsi di un evento
bon.attachPop(accendiled, &bon); // routine accendiled da attivare quando sul nextion viene rilasciato il bottone bon
boff.attachPop(spegniled, &boff); // routine spegniled da attivare quando sul Nextion viene rilasciato il bottone boff
h0.attachPop(intensitaled); // routine intensitaled da attivare quando viene rilasciato il cursore h0
bupdate.attachPop(aggiornatemperatura, &bupdate); // da attivare quando viene rilasciato il bottone bupdate
pinMode(ledpin, OUTPUT);
}
void loop(void)
{
/* quando il nextion invia o deve ricevere qualcosa, la routine nexLoop (presente nella
* liberia Nextion su Arduino, lancia la corrispondente routine
*/
nexLoop(nex_listen_list);codice
Nella compilazione viene fuori errore:nexbotton,does not name a type.Ho usato la libreria originale GitHub - itead/ITEADLIB_Arduino_Nextion.Sto ammatendo ma niente,Qualcuno puo' venirmi in aiuto?.Grazie
Avatar utente
papa10
61 1 2 4
Frequentatore
Frequentatore
Messaggi: 199
Iscritto il: 20 ott 2011, 16:11
Top