Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <math.h>
- // Skala:
- // c - Celsius
- // f - Fahrenheit
- int redPin = 2;
- int greenPin = 3;
- int fotoPin = 5;
- int fotoDane;
- float B = 4300.0f, T0 = 298.15f, R0 = 50000.0f, R_D = 10000.0f;
- float Temperature(int AinPin, char Skala, float B, float T0, float R0, float R_D)
- {
- float R,T;
- R=R_D*(1024.0f/float(analogRead(AinPin))-1);
- T=1.0f/(1.0f/T0+(1.0f/B)*log(R/R0));
- switch(Skala)
- {
- case 'c' :
- T = T - 273.15f;
- break;
- case 'f' :
- T = 9.0f*(T-273.15f)/5.0f+32.0f;
- break;
- default:
- break;
- };
- return T;
- }
- void setup() {
- pinMode(redPin, OUTPUT);
- pinMode(greenPin, OUTPUT);
- Serial.begin(9600);
- }
- void loop() {
- float temp = Temperature(0,'c', B, T0, R0, R_D);
- fotoDane = analogRead(fotoPin);
- Serial.print("Oswietlenie = ");
- Serial.println(fotoDane);
- delay(1000);
- if(temp<31 && fotoDane > 600)
- {
- digitalWrite(greenPin, LOW);
- digitalWrite(redPin, HIGH);
- }
- else
- {
- digitalWrite(redPin, LOW);
- digitalWrite(greenPin, HIGH);
- }
- Serial.print("Temp:");
- Serial.print(temp);
- Serial.println(" C");
- delay(500);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement