- 준비물
- piezo 스피커 1개
- 버튼스위치 3개
- 10㏀ 저항 3개
- 코드
//input Pin 배열
int inputArr[] = {2, 3, 4};
int inputArrSize = sizeof(inputArr)/sizeof(int);
//음 배열
int soundArr[] = {262, 294, 330};
int soundArrSize = sizeof(soundArr)/sizeof(int);
//piezo 출력 핀
const int outputPiezoPin = 8;
void setup() {
for(int i=0 ; i< inputArrSize ; i++) {
pinMode(inputArr[i], INPUT);
}
}
void loop() {
for(int i=0 ; i< soundArrSize ; i++) {
if(digitalRead(inputArr[i]) == HIGH) {
tone(outputPiezoPin, soundArr[i], 100);
delay(100);
noTone(outputPiezoPin);
}
}
}
- 영상
- 알게된 점
- tone에서 정한 출력시간 만큼 delay를 해줘야 음이 겹치지 않고 충분히 출력(당연한얘기를..)