2014-02-27 1 views
0

나는 현재 내가 받고 있어요 임시 센서를DS18B20 온도 센서와 아두 이노

#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 

} 

을 확인하는 간단한 코드를 작성하고있다 "sketch_feb27a : 14 : 오류 : 'getTemp은'이 범위에서 선언되지 않았다"
수 누군가 왜 나 한테 말해?

+0

은 getTemp() 라이브러리 함수입니까 ?? 그것을 포함 시켰습니까? –

답변

1

올바른 위치로 OneWire 라이브러리를 추출하지 않았거나 #include 줄에서 실수를 한 것입니다. getTemp은() 라이브러리 OneWire의 일부가 아닌 경우 당신이 여기

0

자신의 getTemp() 함수를 만들 필요가 분명히 다음 공간

*include<OneWire.h> 

없이 포함하여 노력 전화 getTemp();. 하지만 아래 함수는 스케치 자체에서 정의되지 않습니다. 과 관련된 활동을 추가하면 getTemp(); 작동해야합니다.

float temperature = getTemp(); 
0

DallasTemperature 라이브러리를 사용할 수 있습니다.

이처럼 사용

#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); 

코드 샘플 DallasTemperature library에서합니다.