if(DHT.humidity >= 80)
{
digitalWrite(led_yellow,HIGH);
delay(500);
analogWrite(fan_a,HIGH);
delay(1000);
digitalWrite(6,0);
delay(700);
digitalWrite(6,1);
}
else if(DHT.humidity < 80)
{
digitalWrite(led_yellow,LOW);
delay(500);
analogWrite(fan_a,LOW);
delay(1000);
}
else if(DHT.temperature >= 30)
{
digitalWrite(led_green,HIGH);
delay(500);
digitalWrite(6,0);
delay(700);
digitalWrite(6,1);
}
else if(DHT.temperature < 30)
{
digitalWrite(led_green,LOW);
delay(500);
}
else if(huoyan_value >= 760||sensorValue >= 500)
{
digitalWrite(led_red,HIGH);
delay(500);
digitalWrite(6,0);
delay(700);
digitalWrite(6,1);
}
else if(huoyan_value < 760||sensorValue < 500)
{
digitalWrite(led_red,LOW);
delay(500);
}
直流电机无法正常工作
void loop()
{
delay(2000);
float h = dht.readHumidity();
// Read temperature as Celsius (the default)
float t = dht.readTemperature();
Serial.print(F("Humidity: "));
Serial.print(h);
Serial.print(F("% Temperature: "));
Serial.print(t);
Serial.println(F("°C "));
if(t>=31) //设置温度的上限阈值为31℃,高于31℃风扇打开
{
int offsetX=525; //当控制杆位于中位时的模拟输入值,不同的控制杆可能有不同的偏差。
int x =analogRead(A2);
bool isFoward = x <= offsetX;
speed = x==offsetX ? 0: (isFoward ? (255- map(x,0,offsetX,0,255)): map(x,0,1024,0,255));
Serial.println(speed);
isFoward ? forward() : backward();
}
if(t<31) //设置温度的阈值为31℃,低于31℃风扇关闭
{
int offsetX=0; //当控制杆位于中位时的模拟输入值,不同的控制杆可能有不同的偏差。
int x =0;
bool isFoward = x <= offsetX;
speed = x==offsetX ? 0: (isFoward ? (0- map(x,0,offsetX,0,0)): map(x,0,1024,0,0));
Serial.println(speed);
isFoward ? forward() : backward();
}
}
void backward()
{
analogWrite(fan_a, 0);
analogWrite(fan_b, speed);
}
void forward()
{
analogWrite(fan_a, speed);
analogWrite(fan_b, 0);
}
if(80<=DHT.humidity ) {
digitalWrite(led_yellow,HIGH); delay(500); analogWrite(fan_a,HIGH); delay(1000); digitalWrite(6,0); delay(700); digitalWrite(6,1);
} else if( DHT.humidity < 80 ) {
digitalWrite(led_yellow, LOW); delay(500); analogWrite(fan_a, LOW); delay(1000);
} else if(30<=DHT.temperature ) {
digitalWrite(led_green ,HIGH); delay(500); digitalWrite(6,0); delay(700); digitalWrite(6,1);
} else if( DHT.temperature < 30 ) {
digitalWrite(led_green, LOW); delay(500);
} else if(760<=huoyan_value || 500<=sensorValue ) {
digitalWrite(led_red ,HIGH); delay(500); digitalWrite(6,0); delay(700); digitalWrite(6,1);
} else if( huoyan_value < 760 || sensorValue < 500) {
digitalWrite(led_red , LOW); delay(500);
}
直流电机无法正常工作
void loop() {
delay(2000);
float h = dht.readHumidity();
// Read temperature as Celsius (the default)
float t = dht.readTemperature();
Serial.print(F("Humidity: "));
Serial.print(h);
Serial.print(F("% Temperature: "));
Serial.print(t);
Serial.println(F("°C "));
if(31<=t) {//设置温度的上限阈值为31℃,高于31℃风扇打开
int offsetX = 525; //当控制杆位于中位时的模拟输入值,不同的控制杆可能有不同的偏差。
int x = analogRead(A2);
bool isFoward = (x <= offsetX);
speed = (x==offsetX) ? 0 : (isFoward ? (255- map(x,0,offsetX,0,255)): map(x,0,1024,0,255));
Serial.println(speed);
isFoward ? forward() : backward();
} else {//(t<31) //设置温度的阈值为31℃,低于31℃风扇关闭
int offsetX = 0; //当控制杆位于中位时的模拟输入值,不同的控制杆可能有不同的偏差。
int x = 0;
bool isFoward = (x <= offsetX);
speed = (x==offsetX) ? 0: (isFoward ? (0- map(x,0,offsetX,0,0)): map(x,0,1024,0,0));
Serial.println(speed);
isFoward ? forward() : backward();
}
}
void backward() {
analogWrite(fan_a, 0);
analogWrite(fan_b, speed);
}
void forward() {
analogWrite(fan_a, speed);
analogWrite(fan_b, 0);
}
自创C语言填表式编码风格。欢迎大家用各种语言及其编码风格来PK! https://bbs.csdn.net/topics/380157851