|
|
检测温度和湿度,单加温度正常,加上湿度温度忽高忽低,但是湿度带动马达后,温度正常,,是什么原因。。。。太纠结了。。。。 
int tempPin = 2;//wendu
long valtemp = 0;
float temperature = 0;
int wetPin = 3;//shidu
long valwet = 0;
float wet = 0;
void setup() {
pinMode(5,OUTPUT);//wendu
pinMode(6,OUTPUT);//shidu
pinMode(3,OUTPUT);//fan
pinMode(2,OUTPUT);//curtain
Serial.begin(9600);
}
void loop() {
tempTest();
wetTest();
delay(400);
}
void wetTest(){
valwet=analogRead(wetPin);
wet = (valwet*0.0048828125*100);
Serial.print("shidu= ");
Serial.println(wet);
if ( wet > 23 && f == 0){
digitalWrite( 6 , LOW );//led
digitalWrite( 2 , HIGH );//curtain
}else if( wet < 23 && f == 0){
digitalWrite( 6, HIGH );//LED
digitalWrite( 2 , LOW );//curtain
}
}
void tempTest(){
valtemp=analogRead(tempPin);
temperature = (valtemp*0.0048828125*100);
Serial.print("Tep= ");
Serial.print(temperature);
Serial.println(" C");
if ( temperature > 40 && f == 0){
digitalWrite( 5 , HIGH );//LED
digitalWrite( 3 , HIGH );//open fan
}else if(temperature<40 && f == 0){
digitalWrite( 5 , LOW );
digitalWrite( 3 , LOW );//close fan\
if( temperature<30)digitalWrite( 9 , HIGH );//open heater
if(temperature>30)digitalWrite( 9 , LOW );//close
}
}
|
|