부저(Buzzer): 두 판 사이의 차이

아두위키 : Arduwiki
(새 문서: 896x896픽셀 원하는 주파수 값을 인가하여 소리를 나게 하는 소자입니다. 3.3V ~ 5V 에서 작동합니다. == '''필요 하드웨어''' == * buzzer * Arduino UNO * UNO cable * breadboard * M-M cable(2ea) == '''연결''' == 극성이 존재하기 때문에 +, - 단자를 잘 확인해야 합니다. D11 대신 다른 디지털 핀에 연결해도 무방합니다. {| class="wikitable" | colspan="1" rowspan="1" |buzzer | colsp...)
 
편집 요약 없음
1번째 줄: 1번째 줄:
[[파일:수동 부저.jpg|896x896픽셀]]
[[파일:수동 부저.jpg|가운데|class=coders100]]


원하는 주파수 값을 인가하여 소리를 나게 하는 소자입니다.
원하는 주파수 값을 인가하여 소리를 나게 하는 소자입니다.
27번째 줄: 27번째 줄:
| colspan="1" rowspan="1" |GND
| colspan="1" rowspan="1" |GND
|}
|}
[[파일:수동부저 회로.png|925x925픽셀]]
[[파일:수동부저 회로.png|가운데|class=coders100]]


== '''예제 코드''' ==
== '''예제 코드''' ==


=== 참고자료 : 옥타브 및 음계별 표준 주파수 ===
=== 참고자료 : 옥타브 및 음계별 표준 주파수 ===
[[파일:옥타브 및 음계별 표준 주파수.png]]
[[파일:옥타브 및 음계별 표준 주파수.png|가운데|class=coders100]]


=== 예제1. 음계 테스트 ===
=== 예제1. 음계 테스트 ===

2023년 11월 16일 (목) 19:10 판

원하는 주파수 값을 인가하여 소리를 나게 하는 소자입니다.

3.3V ~ 5V 에서 작동합니다.

필요 하드웨어

  • buzzer
  • Arduino UNO
  • UNO cable
  • breadboard
  • M-M cable(2ea)

연결

극성이 존재하기 때문에 +, - 단자를 잘 확인해야 합니다.

D11 대신 다른 디지털 핀에 연결해도 무방합니다.

buzzer Arduino UNO
+단자 D11(변경 가능)
-단자 GND

예제 코드

참고자료 : 옥타브 및 음계별 표준 주파수

예제1. 음계 테스트

#define buzzer 11
int numTones = 8;

//순서대로 (4옥도,4옥레,4옥미,4옥파,4옥솔,4옥라,4옥시,5옥도)
double tones[] = { 261.6256, 293.6648, 329.6276, 349.2282, 391.9954, 440, 493.8833, 523.2511 };

int cnt = 0;

void setup()
{

}

void loop()
{
    if (cnt == 0)
    {
        for (int i = 0; i < numTones; i++)
        {
            //tone(핀번호, 주파수)로 사용합니다.
            tone(buzzer, tones[i]);
            delay(500);
        }
        //noTone함수를 사용하지 않을 시 이전에 입력된 tone함수가 계속 실행이 되므로 
        //noTone함수로 소리를 꺼줍니다.
        noTone(buzzer);
        delay(500);
        cnt++;
    }
    else
    {

    }
}

예제2. 간단한 멜로디

#define buzzer 11

int numTones = 8;
double g_tones[] = { 195.9977, 220, 246.9417, 261.6256, 293.6648, 329.6276, 349.2282, 391.9954 };
//솔0,라1,시2,도3,레4,미5,파6,솔7
int cnt = 0;

void setup()
{

}

void loop()
{
    if (cnt == 0)
    {
        tone(buzzer, g_tones[0]);
        delay(250 * 2);
        noTone(buzzer);
        tone(buzzer, g_tones[3]);
        delay(250 * 2);
        noTone(buzzer);
        tone(buzzer, g_tones[2]);
        delay(125 * 2);
        noTone(buzzer);
        tone(buzzer, g_tones[3]);
        delay(125 * 2);
        noTone(buzzer);
        tone(buzzer, g_tones[4]);
        delay(250 * 2);
        noTone(buzzer);
        tone(buzzer, g_tones[3]);
        delay(125 * 2);
        noTone(buzzer);
        tone(buzzer, g_tones[4]);
        delay(125 * 2);
        noTone(buzzer);
        tone(buzzer, g_tones[5]);
        delay(125 * 2);
        noTone(buzzer);
        tone(buzzer, g_tones[5]);
        delay(125 * 2);
        noTone(buzzer);
        tone(buzzer, g_tones[6]);
        delay(125 * 2);
        noTone(buzzer);
        tone(buzzer, g_tones[5]);
        delay(125 * 2);
        noTone(buzzer);
        tone(buzzer, g_tones[1]);
        delay(250 * 2);
        noTone(buzzer);
        tone(buzzer, g_tones[4]);
        delay(125 * 2);
        noTone(buzzer);
        tone(buzzer, g_tones[4]);
        delay(125 * 2);
        noTone(buzzer);
        tone(buzzer, g_tones[3]);
        delay(250 * 2);
        noTone(buzzer);
        tone(buzzer, g_tones[3]);
        delay(125 * 2);
        noTone(buzzer);
        tone(buzzer, g_tones[3]);
        delay(125 * 2);
        noTone(buzzer);
        tone(buzzer, g_tones[2]);
        delay(250 * 2);
        noTone(buzzer);
        tone(buzzer, g_tones[1]);
        delay(125 * 2);
        noTone(buzzer);
        tone(buzzer, g_tones[2]);
        delay(125 * 2);
        noTone(buzzer);
        tone(buzzer, g_tones[3]);
        delay(250 * 4);
        noTone(buzzer);
        cnt++;
    }else
    {

    }
}

구매링크

공집사몰