BASIC4MCU | 질문게시판 | 답변 : 아두이노의 지속 시간에 대해 질문합니다.
페이지 정보
작성자 master 작성일2022-05-23 13:33 조회323회 댓글0건본문
//4핀 LCD모듈
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
int num1=0,num2=0,num3=0,num4=0,num5=0,sum=0; //남은 자리 칸을 셀 변수
LiquidCrystal_I2C lcd(0x27,16,2);
//
int infrared1=2,infrared2=6,infrared3=11,infrared4=4,infrared5=8;
//
int led1=3,led2=7,led3=12,led4=5,led5=9;
//
int state1=0,state2=0,state3=0,state4=0,state5=0;
//
void setup(){
// 적외선 장애물 감지 센서 핀을 INPUT으로 설정합니다.
pinMode(infrared1,INPUT); pinMode(infrared2,INPUT); pinMode(infrared3,INPUT); pinMode(infrared4,INPUT); pinMode(infrared5,INPUT);
// LED 핀을 OUTPUT으로 설정합니다.
pinMode(led1,OUTPUT); pinMode(led2,OUTPUT); pinMode(led3,OUTPUT); pinMode(led4,OUTPUT); pinMode(led5,OUTPUT);
//
lcd.init(); lcd.backlight();
lcd.begin(16,2); //LCD 모니터
lcd.print("EMPTY SEAT is "); //남은 자리 수는
}
//
void loop(){
// 적외선 감지 센서 부터 센서값을 읽습니다.
// 감지되면 0,감지되지 않으면 1이 나옵니다.
if(digitalRead(infrared1)==0)state1=30; // 측정된 센서값이 0(감지)면 30초 설정
if(digitalRead(infrared2)==0)state2=30;
if(digitalRead(infrared3)==0)state3=30;
if(digitalRead(infrared4)==0)state4=30;
if(digitalRead(infrared5)==0)state5=30;
//
if(state1){
num1=0; digitalWrite(led1,HIGH); // LED를 켜지도록 합니다.
if(--state1==0){ // 30초 동안 감지가 없으면
num1=1; digitalWrite(led1,LOW); // LED를 꺼지도록 합니다.
}
}
if(state2){
num2=0; digitalWrite(led2,HIGH); // LED를 켜지도록 합니다.
if(--state2==0){ // 30초 동안 감지가 없으면
num2=1; digitalWrite(led2,LOW); // LED를 꺼지도록 합니다.
}
}
if(state3){
num3=0; digitalWrite(led3,HIGH); // LED를 켜지도록 합니다.
if(--state3==0){ // 30초 동안 감지가 없으면
num3=1; digitalWrite(led3,LOW); // LED를 꺼지도록 합니다.
}
}
if(state4){
num4=0; digitalWrite(led4,HIGH); // LED를 켜지도록 합니다.
if(--state4==0){ // 30초 동안 감지가 없으면
num4=1; digitalWrite(led4,LOW); // LED를 꺼지도록 합니다.
}
}
if(state5){
num5=0; digitalWrite(led5,HIGH); // LED를 켜지도록 합니다.
if(--state5==0){ // 30초 동안 감지가 없으면
num5=1; digitalWrite(led5,LOW); // LED를 꺼지도록 합니다.
}
}
//
sum=num1+num2+num3+num4+num5;
lcd.setCursor(0,14); lcd.print(sum); // 칸 수 출력
//
delay(1000);
}
감지 될 때마다 새롭게 30초를 추가하고 있습니다.
마지막 감지 시간부터 30초동안 켜있다가 꺼지는 것이죠
댓글 0
조회수 323등록된 댓글이 없습니다.