본문 바로가기
아두이노 (Arduino)

아두이노 - 부저 (Buzzer)

by JaeBaek 2020. 10. 2.

Buzzer (Wikimedia)

부저 (Buzzer)

 부저는 전기적으로 연결된 전기 코일이 작은 떨림판이 붙었다 떨어지면서 소릴르 내는 부품입니다. 붙이거나 떨어지는 것을 아주 작은 시간동안 연속해서 하면 소리가 나는 것인데 간격을 조절함에 따라 다양한 소리를 만들어 낼 수 있습니다. 

 

 

■ 수동 부저

 수동 부저는 가운데 구멍이 뚫려있는 형태입니다. 아두이노를 통한 방법은 tone 함수, noTone 함수를 이용하는 방법이 있고, 31~65535의 주파수를 낼 수 있습니다.

 tone 함수 = tone(출력 핀, 주파수 값)

 

① 회로 연결

 

② 소스 코드

int Buzzer_Pin = 3; // 부저의 +측에 연결된 핀

int Tones[8] = {261, 294, 330, 349, 392, 440, 495, 524};
int Tones_Number; // Tones에 들어갈 변수

void setup() {

}

void loop() {
  for (Tones_Number = 0; Tones_Number < 8; Tones_Number++) {
    tone(Buzzer_Pin, Tones[Tones_Number]); // tone(출력 핀 번호, 주파수 값)
    delay(350);
  }
  noTone(Buzzer_Pin);
  delay(1000);
}

 

■ 능동 부저

 능동 부저는 전류가 흐르면 자동으로 소리가 나는 부저입니다. 소리는 하나의 음만 출력이 되며, 전류의 세기에 따라 소리가 달라지고 출력되는 소리정도를 제어 할 수 있겠네요.

 

① 회로 연결

② 소스 코드

int Buzzer=3; // 부저 출력 핀을 5로 설정

void setup(){
  pinMode(Buzzer,OUTPUT); // pinMode를 통해 3번 핀을 출력
}

void loop(){ //디지털 신호를 통해서 신호를 on, off함으로써 능동 부저 소리 확인
  digitalWrite(Buzzer,HIGH);
  delay(100);
  digitalWrite(Buzzer,LOW);
  delay(100);
}

 

 

 

댓글