BASIC4MCU | 질문게시판 | 답변 : 아두이노 코딩 관련 문의
페이지 정보
작성자 master 작성일2019-11-05 08:50 조회4,299회 댓글1건
https://www.basic4mcu.com/bbs/board.php?bo_table=gac&wr_id=10540
본문
// MCU BASIC: https://www.basic4mcu.com// DateTime : 2019-11-05 오전 8:49:32// by Ok-Hyun Park//#include <Wire.h>#include <LiquidCrystal_I2C.h>LiquidCrystal_I2C lcd(0x27,20,4);//int sw1=13; // 스위치 1번int MQ3pin=A0,MQ4pin=A1; // 센서핀int redPin=7,greenPin=6,bluePin=5; // LED R,G,B//int data1=0,data2=0'int cnt1=0,MQ3val,MQ4val;int MQ3zero,MQ4zero; // 추가------------------------------bool flag=0,flag1=0,flag2=0;//void setup(){pinMode(sw1,INPUT_PULLUP);pinMode(redPin,OUTPUT); pinMode(greenPin,OUTPUT); pinMode(bluePin,OUTPUT);pinMode(MQ3pin,INPUT); pinMode(MQ4pin,INPUT);Serial.begin(9600);lcd.init(); lcd.backlight();lcd.setCursor(0,0); lcd.print("Welcome to");lcd.setCursor(0,1); lcd.print("Gas sensing system");delay(3000);MQ3zero=analogRead(MQ3pin); MQ4zero=analogRead(MQ4pin); // 추가------------------------------}//void loop(){if(digitalRead(sw1)==LOW){if(flag==0){ flag=1; if(++cnt1>=3)cnt1=2; }}else{ flag=0; }//-----------------------------------------------------if(cnt1==0){analogWrite(redPin,0); analogWrite(greenPin,0); analogWrite(bluePin,0);lcd.setCursor(0,0); lcd.print("Welcome to ");lcd.setCursor(0,1); lcd.print("Gas sensing system");lcd.setCursor(0,2); lcd.print("1.Start 3.Reset ");lcd.setCursor(0,3); lcd.print(" ");}if(cnt1==1){analogWrite(redPin,0); analogWrite(greenPin,0); analogWrite(bluePin,0);lcd.setCursor(0,0); lcd.print("Select Food ");lcd.setCursor(0,1); lcd.print("1.Milk ");lcd.setCursor(0,2); lcd.print(" ");lcd.setCursor(0,3); lcd.print(" ");}if(cnt1==2){MQ3val=analogRead(MQ3pin)-MQ3zero; if(MQ3val<0)MQ3val=0; // 추가------------------------------MQ4val=analogRead(MQ4pin)-MQ4zero; if(MQ4val<0)MQ4val=0; // 추가------------------------------data1=data2=0; flag1=flag2=0;delay(500);//if(analogRead(MQ3pin)<=5&&analogRead(MQ4pin)<=5){ // 유통기한 이내analogWrite(redPin,0); analogWrite(greenPin,0); analogWrite(bluePin,255);lcd.setCursor(0,0); lcd.print("Blue Light ");lcd.setCursor(0,1); lcd.print("Before day ");lcd.setCursor(0,2); lcd.print(" ");MQ3val=analogRead(MQ3pin)-MQ3zero; if(MQ3val<0)MQ3val=0; // 추가------------------------------MQ4val=analogRead(MQ4pin)-MQ4zero; if(MQ4val<0)MQ4val=0; // 추가------------------------------lcd.setCursor(0,2); lcd.print(MQ3val);lcd.setCursor(5,2); lcd.print(MQ4val);lcd.setCursor(0,3); lcd.print(" ");delay(50);}else if(analogRead(MQ3pin)<=10&&analogRead(MQ4pin)<=10){ // 섭취가능analogWrite(redPin,0); analogWrite(greenPin,255); analogWrite(bluePin,0);lcd.setCursor(0,0); lcd.print("Green Light ");lcd.setCursor(0,1); lcd.print("You can eat ");lcd.setCursor(0,2); lcd.print(" ");MQ3val=analogRead(MQ3pin)-MQ3zero; if(MQ3val<0)MQ3val=0; // 추가------------------------------MQ4val=analogRead(MQ4pin)-MQ4zero; if(MQ4val<0)MQ4val=0; // 추가------------------------------lcd.setCursor(0,2); lcd.print(MQ3val);lcd.setCursor(5,2); lcd.print(MQ4val);lcd.setCursor(0,3); lcd.print(" ");delay(50);}else{ // 섭취불가능analogWrite(redPin,255); analogWrite(greenPin,0); analogWrite(bluePin,0);lcd.setCursor(0,0); lcd.print("Red Light ");lcd.setCursor(0,1); lcd.print("You can't eat ");lcd.setCursor(0,2); lcd.print(" ");MQ3val=analogRead(MQ3pin)-MQ3zero; if(MQ3val<0)MQ3val=0; // 추가------------------------------MQ4val=analogRead(MQ4pin)-MQ4zero; if(MQ4val<0)MQ4val=0; // 추가------------------------------lcd.setCursor(0,2); lcd.print(MQ3val);lcd.setCursor(5,2); lcd.print(MQ4val);lcd.setCursor(0,3); lcd.print(" ");delay(50);}}delay(500);}
댓글 1
조회수 4,299김레이드님의 댓글
김레이드 작성일
안녕하세요.
지식인에서부터 시작해서 추가문의까지
진행하는데 있어서 많은 도움을 주셔서 진심으로 감사합니다 ㅠ