정보나눔

오픈소스하드웨어 프로젝트에 대한 다양한 정보를 나누는 공간입니다.

초음파 두게를 &&로 했는데 안읽혀요 ㅠㅠㅠ
이재환 | 2016-04-29

~~~2는 값이 추출되는데

~~~1은 값이 추출되지않습니다 혹시 해결방안 아시는분 있으신가요 ??ㅜㅜ

 

int echoPin2 = 3; //  초음파
int trigPin2 = 4;

int echoPin1 = 5; //  초음파
int trigPin1 = 6;

char sendMsg;   

void setup() {
  Serial.begin(115200);
  pinMode(trigPin1, OUTPUT); //초음파
  pinMode(echoPin1, INPUT);
  
  pinMode(trigPin2, OUTPUT); //초음파
  pinMode(echoPin2, INPUT);

   sendMsg = '0';
  // put your setup code here, to run once:

}

void loop() {
  float duration1, distance1 ;
 digitalWrite(trigPin1, HIGH);
 delay(10);
 digitalWrite(trigPin1, LOW);
 // 초음파를 보낸다. 다 보내면 echo가 HIGH 상태로 대기하게 된다.
 
 duration1 = pulseIn(echoPin1, HIGH); // echoPin 이 HIGH를 유지한 시간을 저장 한다.
distance1 = ((float)(340 * duration1) / 10000) / 2;

 float duration2, distance2 ;
 digitalWrite(trigPin2, HIGH);
 delay(10);
 digitalWrite(trigPin2, LOW);
 // 초음파를 보낸다. 다 보내면 echo가 HIGH 상태로 대기하게 된다.
 
 duration2 = pulseIn(echoPin2, HIGH); // echoPin 이 HIGH를 유지한 시간을 저장 한다.
distance2 = ((float)(340 * duration2) / 10000) / 2;
  
  
  if (distance1&&distance2 < 7) //7cm 이하면
  { 
   sendMsg = 'S'; //멈춤

    delay(100);
  }
  
    else
    {
      if (7 < distance1&&distance2 < 18) // 7~18
    
        { 
          sendMsg = 'H';
      
          delay(100);
        }
        else // 18 이상
        {
         sendMsg = 'M';
         
         delay(100);
         }
    }
  

 Serial.write(sendMsg);
}

이전글   |    아두이노를 이용하여 대기행렬을 적용한 엘리베이터를 만드는데..질문이있어요... 2016-04-29
다음글   |    맥 아두이노 업로드 에러 문제입니다. 2016-05-01