아하
검색 이미지
전기·전자 이미지
전기·전자학문
전기·전자 이미지
전기·전자학문
재빠른황로99
재빠른황로9923.11.29

어떤 코드부분이 잘못된건가요?

제가 요새 팅커캐드를 통한 아두이노를 만들고 있는 중인데... 도저히 어떤 코드가 잘못되서 실행이 안되는건지...너무답답해서 글올려요ㅠㅡㅠ

(제 아두이노코드이니... 무단으로 퍼가시지 말아주세요...)


일단 제가 만들고 싶은건 어두울때 조도센서를 통해서 LED와 피에조 스피커가 같이 빛을 내며 소리를 내어 어두운것을 주위에게 알리는 것인데요... 아무리 시뮬레이션을 눌러도 피에조만 소리가 제멋대로 나고 조도센서랑 LED는 아예 작동도 안하구.. 뭐가 문제인지 알려주세요!

코드


// C++ code

//

int distance = 0;


long readUltrasonicDistance(int triggerPin, int echoPin)

{

pinMode(triggerPin, OUTPUT); // Clear the trigger

digitalWrite(triggerPin, LOW);

delayMicroseconds(2);

// Sets the trigger pin to HIGH state for 10 microseconds

digitalWrite(triggerPin, HIGH);

delayMicroseconds(10);

digitalWrite(triggerPin, LOW);

pinMode(echoPin, INPUT);

// Reads the echo pin, and returns the sound wave travel time in microseconds

return pulseIn(echoPin, HIGH);

}


void setup()

{

pinMode(A0, INPUT);

pinMode(13,OUTPUT);

Serial.begin(9600);

pinMode(6,OUTPUT);


}


void loop()

{

int var = analogRead(A0);

Serial.println(var);

if (var>600){

digitalWrite(13,HIGH);

digitalWrite(12,LOW);

}

if (var>800){

digitalWrite(13,LOW);

}

delay(200);

tone(6,659,600);


delay(600);


tone(6,587,500);


delay(500);


tone(6,523,400);


delay(400);


tone(6,587,400);


delay(400);


tone(6,659,700);


delay(700);


tone(6,659,700);


delay(700);


tone(6,659,100);


delay(100);


tone(6,587,800);


delay(800);


tone(6,587,800);


delay(800);


tone(6,587,100);


delay(100);


tone(6,659,700);


delay(700);


tone(6,659,700);


delay(700);


tone(6,659,100);


delay(100);


tone(6,659,600);


delay(600);


tone(6,587,400);


delay(400);


tone(6,523,600);


delay(600);


tone(6,587,700);


delay(700);


tone(6,659,800);


delay(800);


tone(6,659,800);


delay(800);


tone(6,659,800);


delay(800);


tone(6,587,600);


delay(600);


tone(6,587,600);


delay(600);


tone(6,659,800);


delay(800);


tone(6,587,600);


delay(600);


tone(6,523,500);


delay(500);


}


55글자 더 채워주세요.
답변의 개수
1개의 답변이 있어요!
  • 탈퇴한 사용자
    탈퇴한 사용자23.11.29

    안녕하세요! 손성민 과학전문가입니다.

    그렇다면 문제는 아마도 코드에 있을 가능성이 높습니다.

    우선 코드를 작성하실 때 조도센서와 LED 그리고 피에조 스피커를 제어하는 부분을 각각 따로 작성하셨는지 확인해주세요. 그리고 코드에서 조도센서의 값을 읽어오는 부분과 LED를 제어하는 부분을 연결해주셔야 합니다. 이 부분을 확인해보시고 문제가 해결되는지 확인해보세요.

    또 다른 가능성으로는 조도센서의 값이 제대로 읽어지지 않는 경우가 있을 수 있습니다. 이 경우에는 조도센서의 연결 상태를 확인하고 필요하다면 다른 조도센서로 대체해보시는 것도 좋은 방법입니다.

    코드를 작성하실 때 주의해야 할 점은 변수의 이름을 제대로 설정하는 것입니다. 변수의 이름을 잘못 설정하면 코드가 정상적으로 작동하지 않을 수 있으니 변수의 이름을 다시 한번 확인해보시는 것도 좋은 방법입니다.

    위의 내용들을 확인하시고도 문제가 해결되지 않는다면 다시 문의해주시면 더 자세한 도움을 드릴 수 있도록 노력하겠습니다. 감사합니다.

    도움이 되셨다면 아래 추천과 좋아요 부탁드립니다.

    만족스러운 답변이었나요?간단한 별점을 통해 의견을 알려주세요.