Una riga di programma "umidity.h" non diventa rossa. Mistero pericoloso?

#include <LiquidCrystal.h>

#include <DHT.h>

 #define DHTPIN 8
// 8 è il pin di Arduino a cui collego il sensore di temperatura
#define DHTTYPE DHT11
// dht11 è il tipo di sensore che uso
DHT dht(DHTPIN, DHTTYPE);
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
// connessione display (pin)
 
void setup() {
lcd.begin(16, 2);
// imposto il tipo di display (colonne, righe)
lcd.print("Temperatura");
lcd.setCursor(0,1);
lcd.print("Umidita'");
}
void loop() {
int t = dht.readTemperature();
int h = dht.readHumidity();
// posiziono il cursore alla colonna 12 e riga 0
lcd.setCursor(14, 0);
lcd.print(t);
lcd.setCursor(14, 1);
lcd.print(h);
}

Funziona ma la dichiarazione int=hdht.readHumidity();

Non diventa ROSSA mentre int.h = dht.readTemperature(); SI

Perchè tale stranezza? può incidere su futuri programmi? GRAZIE

= dht.readTemperature

Le parole chiavi nel editore del IDE vengono colorate in funzione del file keyword.txt dato insieme alla libreria. Dipende cosa é scritto lí se diventa arancione. Ciao Uwe

Se è scritta così come hai scritto hdht.readHumidity(); ovvio che non diventa rossa.

invece se è scritta come il codice che hai postato, è strano che non lo diventi. Riscarica di nuovo la libreria semmai e magari installa anche l'IDE di Arduino aggiornato.

Il colore delle righe NON ha alcuna importanza ... l'importante sono gli errori del compilatore :D

E' capitato anche a me che l'autore della libreria si sia scordato di mettere nel file che genera i colori qualche chiamata, ma ripeto, è una pura cosa "estetica" che NON ha alcuna influenza sul programma.

Quindi @calandra, non ti preoccupare :)

Guglielmo

Ah io pensavo che gli dava pure errore :) Allore che ti frega :) Se proprio ti dà fastidio riscarica un'altra libreria e vedi.

As_Needed: Se proprio ti dà fastidio riscarica un'altra libreria e vedi.

Può scaricare la librerie infinite volte, però se chi l'ha realizzata non ha inserito quella voce nel file keyword.txt non si colorerà mai perché senza quell'informazione l'IDE non cosa deve fare. In tutti i casi quello che conta è solo la compilazione a buon fine, la colorazione è solo un fattore estetico e un aiuto alla leggibilità del codice, non ha nulla a che vedere con il compilatore.

astrobeed: Può scaricare la librerie infinite volte, però se chi l'ha realizzata non ha inserito quella voce nel file keyword.txt non si colorerà mai perché senza quell'informazione l'IDE non cosa deve fare.

Ho comunque idea che questa volta invece ... [u]sia un bugs dell'IDE[/u] ... ::)

float h = dht.readHumidity(); float t = dht.readTemperature();

Nel file keywords.txt quella riga c'è ... ho appena verificato. Non solo, pensando che ci fosse qualche carattere non valido l'ho anche riscritto tutto io a mano ...

###########################################
# Syntax Coloring Map For DHT-sensor-library
###########################################

###########################################
# Datatypes (KEYWORD1)
###########################################

DHH               KEYWORD1

###########################################
# Methods and Functions (KEYWORD2)
###########################################

begin             KEYWORD2
readTemperature   KEYWORD2
readHumidity      KEYWORD2
convertCtoF       KEYWORD2
convertFtoC       KEYWORD2
computeHeatIndex  KEYWORD2
read              KEYWORD2

... ma nulla, anche se si apre l'esempio a corredo della libreria, readHumidity NON viene colorato ... vai a capire perché ... :confused:

Guglielmo

GRAZIE! Siete stati Fantastici! Ora dormo sonni tranquilli, mi sono fatto un mazzo tanto per mettere a posto le library…ho seguito tutto il tread, e ringrazio tutti

Ciao C. :slight_smile: