1. 아두이노 피아노?
말 그대로 아두이노를 이용하여 구현한 피아노이다. 각 음계의 주파수는 아래의 그림과 같이 나온다. 아두이노 우노 보드의 아날로그핀은 6개로 4번쨰 옥타브의 도부터 라까지의 음계만 구현해냈다. 각각의 스위치를 아날로그 핀에 연결한 후 각각에 번호를 부여하여 음계에 대입한다. 0번:도~5번:라.
저항은 100kohm짜리를 써서 아날로그 값을 읽었을 때 100정도의 값이 나오게 된다. 이 떄 눌러진 스위치에 할당된 음계가 피에조 센서를 통해 흘러나오게 된다. 스케매틱과 브레드보드 실사는 아래에 첨부해 놓았으니 참고하길 바라며 다음은 코드이다.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
int notes[] = {262, 294, 330, 349, 392, 440}; | |
int num = 6; | |
int i; int keyval[6]; | |
void setup() { | |
Serial.println(9600); | |
} | |
void loop(){ | |
for(i=0; i<num; i++){ | |
keyval[i] = analogRead(i); | |
Serial.println(keyval[i]); | |
if(keyval[i]<=110 && keyval[i]>=90){ | |
tone(8, notes[i]); | |
} | |
else{ | |
noTone(8); | |
} | |
} | |
} |
그림 1 음계표
그림 2 스케매틱
그림 3 실제 그림.
'Arduino > Arduino 기초과정' 카테고리의 다른 글
[아두이노 기초편 8] 서보모터제어 (1) | 2013.09.11 |
---|---|
Arduino Basic Connections (0) | 2013.09.11 |
Arduino 회로 그리기 및 간단한 시뮬레이션 (0) | 2013.09.10 |
[아두이노 기초편 3] 버튼 사용 + 가변저항 (2) | 2013.08.07 |
[아두이노 기초편 5]프로세싱을 이용하여 조도센서값 시각화하기 (5) | 2013.08.07 |