BASIC4MCU | 질문게시판 | 루프를 두개 쓸순없나요??
페이지 정보
작성자 강아지후니 작성일2019-04-15 14:42 조회3,539회 댓글0건본문
릴레이 모듈은 1초 딜레이 영향을 안받게 하고싶고
lcd는 1초 딜레이 영향을 무조건 받아야합니다.
그래서 따로 쓰려고 void loop를 두개잡았는데 그러면 안되는거같더라구요.
두개를 합치는법을 알려주세요
고쳐야할 부분 색으로 칠해놨어요 ㅜ
#include <LiquidCrystal_I2C.h>
#include <DHT.h>
#define DHTPIN A1
#define DHTTYPE DHT11
DHT dht(DHTPIN, DHTTYPE);LiquidCrystal_I2C lcd(0x27,16,2);
int Sensor_pin = A1; // 온습도센서 핀을 A1으로 설정
int LED_R = 3; // 빨간색 LED 핀을 3번핀으로 설정
int LED_G = 4; // 초록색 LED 핀을 4번핀으로 설정
int Relaypin1 = 1; // IN1
void setup(){
Serial.begin(9600);
lcd.init();
lcd.backlight(); // 백라이트 ON
pinMode(LED_R,OUTPUT); // 빨간색 LED핀을 출력으로 설정
pinMode(LED_G,OUTPUT); // 초록색 LED핀을 출력으로 설정
pinMode(Relaypin1,OUTPUT); // 릴레이 제어 1번핀을 출력으로 설정
}void loop(){
int h = dht.readHumidity();
if(h < 45){ // 공기에 수분이 부족하면
digitalWrite (Relaypin1, LOW); // 릴레이 ON
}
else{
digitalWrite (Relaypin1, HIGH); // 릴레이 OFF
}
}void loop(){
int h = dht.readHumidity();
int t = dht.readTemperature();
Serial.println(h);// 센서값을 시리얼모니터로 전송delay(1000); // 0.1초 간격으로 센서값 출력
// 이부분좀 해결 부탁드려요 ㅜㅜ
if(h < 45){ // 공기에 수분이 부족하면
lcd.clear();
digitalWrite(LED_R,HIGH); // 빨간색 LED ON
digitalWrite(LED_G,LOW);
lcd.setCursor(0,0);
lcd.print("device on"); // 가습기 작동중 문구 출력
lcd.setCursor(0,1); // 1번째, 2라인
lcd.print("humidity:");
lcd.setCursor(9,1); // 1번째, 2라인
lcd.print(h);}
else{ // 공기에 수분이 충분하면
lcd.clear();
digitalWrite(LED_G,HIGH); // 파란색 LED ON
digitalWrite(LED_R,LOW);
lcd.setCursor(0,0);
lcd.print("device off"); // 가습기 off 문구 출력
lcd.setCursor(0,1); // 1번째, 2라인
lcd.print("humidity:");
lcd.setCursor(9,1); // 1번째, 2라인
lcd.print(h);}
}
댓글 0
조회수 3,539등록된 댓글이 없습니다.