Hi,
Sorry to dredge up an old topic, but thought it was better than starting a new one for the same project.
I am only able to get the digital 3 output to light up, both other LEDs stay off - no matter what changes I make to the baseline temp and other debugging I've tried. The circuit is set up exactly as shown in the guide, my code is below:
const int sensorPin = A0;
const float baselineTemp = 20.0;
void setup (){
Serial.begin(9600); // open a serial port
for(int pinNumber = 2; pinNumber<5; pinNumber++){
pinMode(pinNumber, OUTPUT);
digitalWrite(pinNumber, LOW);
}
}
void loop (){
int sensorVal = analogRead (sensorPin);
Serial.print("Sensor Value: ");
Serial.print(sensorVal);
//convert the ADC reading to voltage
float voltage = (sensorVal/1024.0) *5.0;
Serial.print(", Volts: ");
Serial.print(voltage);
Serial.print(", Degrees C: ");
// convert voltage to temperature in degrees
float temperature = (voltage - .5) * 100;
Serial.println(temperature);
if(temperature < baselineTemp){
digitalWrite(2, LOW);
digitalWrite(3, LOW);
digitalWrite(4, LOW);
}else if(temperature >= baselineTemp+2 &&
temperature < baselineTemp+4) {
digitalWrite(2, HIGH);
digitalWrite(3, LOW);
digitalWrite(4, LOW);
}else if(temperature >= baselineTemp+4 &&
temperature < baselineTemp+6) {
digitalWrite(2, HIGH);
digitalWrite(3, HIGH);
digitalWrite(4, LOW);
}else if(temperature >= baselineTemp+6 &&
temperature < baselineTemp+8) {
digitalWrite(2, HIGH);
digitalWrite(3, HIGH);
digitalWrite(4, HIGH);
}
delay(1);
}
I'd really appreciate any tips anyone can provide, or if you can see where I'm going wrong, it would be a great help.
Thanks,
Tai