Salve a tutti ho seguito questo tutorial Pagina ingresso sensore DS18B20 ma in fase di compilazione il programma mi dà errore. Ho provato a riscaricare le librerie ma non funziona. Utilizzo la versione 1.0.4 di IDE.
#include <OneWire.h>
#include <DallasTemperature.h>
// Data wire is plugged into pin 2 on the Arduino
#define ONE_WIRE_BUS 2
// Setup a oneWire instance to communicate with any OneWire devices
// (not just Maxim/Dallas temperature ICs)
OneWire oneWire(ONE_WIRE_BUS);
// Pass our oneWire reference to Dallas Temperature.
DallasTemperature sensors(&oneWire);
void setup(void)
{
// start serial port
Serial.begin(9600);
Serial.println("Dallas Temperature IC Control Library Demo");
// Start up the library
sensors.begin();
}
void loop(void)
{
// call sensors.requestTemperatures() to issue a global temperature
// request to all devices on the bus
Serial.print(" Requesting temperatures...");
sensors.requestTemperatures(); // Send the command to get temperatures
Serial.println("DONE");
Serial.print("Temperature for Device 1 is: ");
Serial.print(sensors.getTempCByIndex(0)); // Why "byIndex"?
// You can have more than one IC on the same bus.
// 0 refers to the first IC on the wire
}
e qui c'è l'errore
In file included from C:\Users\utente\Desktop\arduino-0022\arduino-0022\hardware\arduino\cores\arduino/WProgram.h:6,
from sketch_jun13a.cpp:11:
c:/users/utente/desktop/arduino-0022/arduino-0022/hardware/tools/avr/lib/gcc/../../avr/include/math.h:439: error: expected unqualified-id before 'double'
c:/users/utente/desktop/arduino-0022/arduino-0022/hardware/tools/avr/lib/gcc/../../avr/include/math.h:439: error: expected `)' before 'double'
c:/users/utente/desktop/arduino-0022/arduino-0022/hardware/tools/avr/lib/gcc/../../avr/include/math.h:439: error: expected `)' before 'double'
Non sempre basta modifica la lib per caricare Arduino.h al posto di WProgram.h per risolvere il problema.
In questo caso serve proprio la OneWire aggiornata.
Per la prossima volta: nel tuo primo post metti l'errore ma non completo.
Se fosse stato completo avremmo visto che era nella DallasTemperature.cpp e ti avremmo indirizzato meglio subito.
Un favore, sul tuo primo post, puoi modificare il titolo aggiungendo [Risolto] ?
@david:
ti avevo già spiegato di procurarti l'ultima versione della lib perché la modifica con l'inclusione di Arduino.h non risolve sempre il problema:
leo72:
Non sempre basta modifica la lib per caricare Arduino.h al posto di WProgram.h per risolvere il problema.
In questo caso serve proprio la OneWire aggiornata.