아두이노, 사운드 센서와 부저 출력 예제
글. 오상문 sualchi@daum.net
연결은 다음과 같습니다.
<아두이노>
부저 : + 핀 --------------- 디지털 2번
반대핀 --------------- 그라운드
사운드 센서 : A0 핀 ---------- 아나로그 A0
그라운드(G) ----- 그라운드
+ 핀 ----------- 5V
4핀인 경우, 남는 핀은 그냥 둡니다.
다음은 예제 코드입니다.
int nTones[] = {262,294,330,349,392,440,495,524};
int nMusic[] = {0,2,4,0,2,4,5,5,5,4,4,4,3,3,3,2,2,2,1,1,1,0,0,0};
const int SOUND_SENSOR_PIN = A0;
int sensorValue;
void setup() {
// put your setup code here, to run once:
Serial.begin(9600);
}
void loop() {
sensorValue = analogRead(SOUND_SENSOR_PIN);
Serial.println(sensorValue);
if(sensorValue > 28) { // 28은 시리얼창에 나오는 숫자들보다 1~2정도 높은 값으로 적습니다.
int nMax = sizeof(nMusic) / sizeof(int);
for(int i=0; i<nMax; i++) {
tone(2, nTones[nMusic[i]]);
delay(100);
}
noTone(2);
}
delay(100);
}
<이상>
'아두이노, 라즈베리파이' 카테고리의 다른 글
아두이노, LiquidCrystal_I2C_Hangul : LCD 한글 출력 라이브러리 (0) | 2019.07.04 |
---|---|
아두이노, 수위 센서와 LED 예제 (0) | 2019.07.04 |
아두이노 부품은 드라이버가 달린 것을 구매하세요. (0) | 2019.01.03 |
아두이노, DC 모터 제어 사이트 링크 (0) | 2018.12.23 |
아두이노, 타이머 지정 실행 SimpleTimer 라이브러리 (0) | 2018.12.19 |