const int sensorPin = A7;
const int redPin = 2;
const int greenPin = 3;
const int bluePin = 4;
float lastTemperature = -100.0;
void setup() {
pinMode(redPin, OUTPUT);
pinMode(greenPin, OUTPUT);
pinMode(bluePin, OUTPUT);
Serial.begin(9600);
}
void loop() {
int analogValue = analogRead(sensorPin);
float voltage = analogValue * (5.0 / 1023.0);
float temperatureC = voltage * 100;
if (temperatureC < 30) {
setColor(0, 0, 255);
} else if (temperatureC >= 30 && temperatureC < 45) {
setColor(0, 255, 0);
} else {
setColor(255, 0, 0);
}
if (abs(temperatureC - lastTemperature) >= 0.5) {
Serial.print("Analog Value: ");
Serial.print(analogValue);
Serial.print(" ---- Voltage: ");
Serial.print(voltage, 2);
Serial.print(" V --- Temperature: ");
Serial.print(temperatureC, 1);
Serial.println(" °C");
lastTemperature = temperatureC;
}
delay(500);
}
void setColor(int red, int green, int blue) {
analogWrite(redPin, red);
analogWrite(greenPin, green);
analogWrite(bluePin, blue);
}