BASIC4MCU | 질문게시판 | 답변 : 아두이노 센서 코딩 오류
페이지 정보
작성자 master 작성일2023-11-02 08:18 조회694회 댓글0건
https://www.basic4mcu.com/bbs/board.php?bo_table=gac&wr_id=23346
본문
const int tiltPin=2;
const int ledPin=5;
const int trig[]={ 9,10,11};
const int echo[]={A0,A1,A2};
//
int cnt=0;
//
void setup(){
pinMode(ledPin,OUTPUT);
for(int i=0;i<3;i++)pinMode(trig[i],OUTPUT);
Serial.begin(9600);
}
//
void loop(){
for(int i=0;i<3;i++){ // 100ms*3=300ms
delay(100); // 초음파 센서 딜레이
digitalWrite(trig[i],1); delayMicroseconds(10); digitalWrite(trig[i],0);
long duration=pulseIn(echo[i],1);
int distance=duration/29/2;
// 30cm 미만 또는 틸트 미 감지 시 종료
if((distance<30)||(digitalRead(tiltPin)==0)){ digitalWrite(ledPin,0); cnt=0; return; }
}
if(cnt<16)cnt++; // 300ms * 17 = 5100ms
else digitalWrite(ledPin,1); // 30cm 미만 및 틸트 감지 5100ms 이상이면 LED ON
}
댓글 0
조회수 694등록된 댓글이 없습니다.