Domanda

Attualmente sto scrivendo questo semplice codice per controllare il sensore Temp

#include <One Wire . h>

int DS18S20_Pin = 2; //DS18S20 Signal pin on digital 2

//Temperature chip i/o
OneWire ds(DS18S20_Pin); // on digital pin 2

void setup(void) {
 Serial.begin(9600);
}

void loop(void) 
{
 float temperature = getTemp();
 Serial.println(temperature);

 delay(100); //just here to slow down the output so it is easier to read

}
.

I m Ottenere "Sketch_feb27a: 14: Errore: 'GetTemp' non è stato dichiarato in questo ambito"
qualcuno può dirmi perché?

È stato utile?

Soluzione

Qui la tua chiamata che prova GetTemp (); .Ma la seguente funzione non è definita sotto lo schizzo stesso..Se aggiungi l'attività relativa a GetTemp (); Deve funzionare.

float temperature = getTemp();
.

Altri suggerimenti

O non hai estratto la Biblioteca OneWire nella posizione corretta o ha commesso un errore nella linea #include. Includi senza spazi

*include<OneWire.h>
.

Se GetTemp () non è una parte della Biblioteca Ovviamente, ovviamente devi creare la tua funzione GetTemp ()

È possibile utilizzare la libreria DALLESTEMperature.

Usa tutto questo:

#include <OneWire.h>
#include <DallasTemperature.h>

// Data wire is plugged into port 2 on the Arduino
#define ONE_WIRE_BUS 2

OneWire dsOneWire(DS_ONE_WIRE_BUS);

// Pass our oneWire reference to Dallas Temperature.
DallasTemperature dsSensorControler(&dsOneWire);

dsSensorControler.begin();

dsSensorControler.requestTemperatures();

float temp = dsSensorControler.getTempCByIndex(0);
.

Codice da Libreria DALLESTEMPERATURE Esempio.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top