728x90
반응형
아두이노를 활용하여 간단한 멜로디를 연주할 수 있는 프로젝트를 소개합니다. 피에조 버저와 간단한 코드만으로 원하는 곡을 구현할 수 있으며, 초보자도 쉽게 따라 할 수 있습니다.
1. 준비물
아두이노를 이용하여 피에조 버저를 제어하려면 다음과 같은 부품이 필요합니다.
필요한 부품:
- 아두이노 (Uno, Mega 등)
- 피에조 버저
- 점퍼 와이어
- 브레드보드 (선택 사항)
2. 회로 구성
피에조 버저는 음을 출력할 수 있는 간단한 소자입니다. 아래 회로도를 참고하여 연결하세요.
회로 연결 방법
- 피에조 버저의 (+) 단자를 아두이노의 디지털 7번 핀에 연결합니다.
- 피에조 버저의 (-) 단자를 GND(접지)와 연결합니다.
- 아두이노를 컴퓨터와 USB 케이블로 연결합니다.
3. 코드 설명
아래 코드를 아두이노에 업로드하면 간단한 멜로디가 연주됩니다.

const int piezo = 7;
char code[7] = {'C', 'D', 'E', 'F', 'G', 'A', 'B'};
unsigned int freq[7] = {262, 294, 330, 349, 392, 440, 494};
char mData[] = "CCGGAAGpFFEEDDCpGGFFEEDpGGFFEEDpCCGGAAGpFFEEDDCp";
const byte mSize = sizeof(mData);
void setup() {
pinMode(piezo, OUTPUT);
}
void loop() {
for (int m = 0; m < mSize; m++) {
int playT = 200;
for (int k = 0; k < 7; k++) {
if (mData[m] == code[k]) tone(piezo, freq[k], playT);
}
delay(playT);
}
noTone(piezo);
delay(2000);
}
코드 설명
- piezo 변수에 버저가 연결된 핀 번호(7번 핀)를 설정합니다.
- code 배열에는 C, D, E, F, G, A, B 음계가 저장되어 있으며, freq 배열에는 해당하는 주파수가 설정됩니다.
- mData 배열은 멜로디를 저장하는 부분으로, 특정 음이 순서대로 연주됩니다.
- setup() 함수에서 버저를 출력으로 설정합니다.
- loop() 함수에서 mData 문자열을 읽어 각 문자가 해당하는 음을 재생하며, tone() 함수를 이용하여 피에조 버저에서 소리를 냅니다.
- noTone(piezo)를 사용하여 음이 끝난 후 버저를 끕니다.
4. 결론
이 프로젝트를 활용하면 간단한 피에조 버저를 이용하여 다양한 멜로디를 만들 수 있습니다. 코드를 수정하여 곡의 속도를 조절하거나 다른 음계를 추가하여 멜로디를 더욱 풍성하게 만들 수도 있습니다.
더 나아가 버튼을 추가하여 사용자가 직접 연주할 수 있는 방식으로 개선하는 것도 재미있는 도전이 될 것입니다.
이제 직접 테스트해 보며 자신만의 멜로디를 만들어 보세요! 🎵
728x90
반응형
'아두이노' 카테고리의 다른 글
인터랙티브한 회로 미리보기 (0) | 2025.05.14 |
---|---|
아두이노를 이용한 간단한 피아노 만들기 🎹 (0) | 2025.05.13 |
🛠️ 초보자를 위한 최고의 Arduino 책 10권 (1) | 2025.05.12 |
2025년에 Arduino와 함께 구축할 상위 10가지 멋진 프로젝트 (1) | 2025.05.12 |
🏠 손짓과 음성으로 제어하는 스마트 홈 자동화 시스템 (0) | 2025.05.12 |