2025년 5월 22일 목요일

피에조 부저



  • 참고 : 능동부저 vs 수동부저 







소스 코드 예시
void setup() {
  tone(11, 262, 1000);  
  delay(1000); 
}
void loop() {
}

프롬프트 예시
아두이노 우노에서 11번 핀에 피에조 부저를 연결했어. 
1초간 4옥타브 도 음을 내는 소스 코드를 작성해줘.




소스 코드 예시
void setup() {
  pinMode(3, INPUT_PULLUP);
}
void loop() {
  if (!(digitalRead(3) == HIGH)) {
    tone(11, 392, 300);
    delay(300);
    tone(11, 392, 300);
    delay(300);
    tone(11, 440, 300);
    delay(300);
    tone(11, 440, 300);
    delay(300);
  }
}

프롬프트 예시
아두이노 우노에서 11번 핀에 피에조 부저를 3번 핀에 버튼을 연결했어. 
버튼은 내부 풀업 기능을 이용하여 버튼이 눌렸을 때 경고음(4옥타브 도음)을 내는 코드를 작성해줘.






소스 코드 예시
void setup() {
  pinMode(2, INPUT_PULLUP);
  pinMode(3, INPUT_PULLUP);
  pinMode(4, INPUT_PULLUP);
}
void loop() {
  if (!(digitalRead(2) == HIGH)) {
    tone(11, 262, 100);
  }
  if (!(digitalRead(3) == HIGH)) {
    tone(11, 294, 100);
  }
  if (!(digitalRead(4) == HIGH)) {
    tone(11, 330, 100);
  }
}

프롬프트 예시
아두이노 우노에서 11번 핀에 피에조 부저를 연결하고, 2번, 3번, 4번 핀에 버튼을 연결했어. 버튼은 내부 풀업 기능을 이용하여 이들 버튼을 눌렸을 때 2번은 4옥타브 도, 3번은 4옥타브 레, 4번은 4옥타브 미를 소리가 나오게 하는 소스 코드를 작성해. 






소스 코드 예시
void setup() {
  tone(11, 392, 1000); 
  delay(1000); 
  tone(11, 392, 1000); 
  delay(1000); 
  tone(11, 440, 1000); 
  delay(1000); 
  tone(11, 440, 1000); 
  delay(1000); 
  tone(11, 392, 1000); 
  delay(1000); 
  tone(11, 392, 1000); 
  delay(1000); 
  tone(11, 330, 2000); 
  delay(2000); 
}
void loop() {
}

프롬프트 예시
아두이노 우노에서 11번 핀에 피에조 부저를 연결했어.
솔(1초), 솔(1초), 라(1초), 라(1초), 솔(1초), 솔(1초), 미(2초), 솔(1초), 솔(1초), 라(1초), 라(1초), 솔(1초), 솔(1초), 레(2초)를 연주하는 소스 코드를 작성해줘.

프롬프트 예시
위 노래를 2배 빠르게 연주하는 코드로 바꿔줘




소스 코드 예시
void setup() {
#define ECHO 3
#define TRIG 4
void setup() {
 pinMode(ECHO, INPUT);
 pinMode(TRIG, OUTPUT);
 Serial.begin(9600);
}
void loop() {
 digitalWrite(TRIG, LOW);
 delayMicroseconds(2);
 digitalWrite(TRIG, HIGH);
 delayMicroseconds(10);
 digitalWrite(TRIG, LOW);
 long dist = pulseIn(ECHO, HIGH) / 58.2;
 Serial.println(dist);
 if (dist < 10) {
   tone(11, 362, 100);
   delay(100);
 } else if (dist < 20) {
   tone(11, 362, 100);
   delay(250);
 } else if (dist < 30) {
   tone(11, 362, 100);
   delay(500);
 } else {
   noTone(11);
 }
}

프롬프트 예시
이 회로도처럼 아두이노 우노에 HC-SR04 초음파 센서(TRIG-4번핀, ECHO-3번핀)와 피에조 부저(11번핀)가 연결된 상태에서, 거리에 따라 다른 소리를 내는 코드를 작성해줘. 
거리가 10cm 미만일 때는 짧은 간격(0.1초)으로, 10-20cm일 때는 중간 간격(0.25초)으로, 20-30cm일 때는 긴 간격(0.5초)으로 부저를 울리고, 30cm 이상일 때는 소리를 끄도록 해줘.





댓글 없음:

댓글 쓰기