Code for arduino 4octave: Difference between revisions

From Medien Wiki
(Created page with " * Test_ change a sound (octave) depends on distance_ 01.12.2021 arduino code reference : https://youtu.be/TcQfqZPUP58")
 
No edit summary
 
Line 1: Line 1:


* Test_ change a sound (octave) depends on distance_ 01.12.2021
[[arduino code]]


reference : https://youtu.be/TcQfqZPUP58
// 초음파센서와 피에조 스피커. 거리에 따라 (4cm마다) 도레미파솔라시도(4 옥타브) 소리내기.
 
int melody[28] = 131,147,165,175,196,220,247,// 도레미파솔라시
 
262,294,330,349,392,440,494,// 도레미파솔라시
 
523,587,659,698,784,881,988,// 도레미파솔라시
 
1047,1175,1319,1397,1568,1760,1976,// 도레미파솔라시 };
 
int TRIG = 3, ECHO = 4, speaker = 7;
 
void setup() {
 
Serial.begin(9600);
 
pinMode(TRIG,OUTPUT);
 
pinMode(ECHO,INPUT);
 
pinMode(speaker, OUTPUT); }
 
void loop() {
 
float distance, duration;
 
digitalWrite(TRIG, HIGH);
 
delayMicroseconds(1);
 
digitalWrite(TRIG,LOW);
 
duration = pulseIn(ECHO,HIGH);
 
distance = ((float)(duration*340)/10000)/2;
 
Serial.println(distance);
 
int i;
 
if (distance <= ) {
 
i=map(distance,0,32,0,7);
 
tone (speaker, melody[i], 250);
 
delay (300);
 
}
 
else {
 
noTone(speaker);
 
}
 
 
}

Latest revision as of 11:10, 1 December 2021


// 초음파센서와 피에조 스피커. 거리에 따라 (4cm마다) 도레미파솔라시도(4 옥타브) 소리내기.

int melody[28] = 131,147,165,175,196,220,247,// 도레미파솔라시

262,294,330,349,392,440,494,// 도레미파솔라시

523,587,659,698,784,881,988,// 도레미파솔라시

1047,1175,1319,1397,1568,1760,1976,// 도레미파솔라시 };

int TRIG = 3, ECHO = 4, speaker = 7;

void setup() {

Serial.begin(9600);

pinMode(TRIG,OUTPUT);

pinMode(ECHO,INPUT);

pinMode(speaker, OUTPUT); }

void loop() {

float distance, duration;

digitalWrite(TRIG, HIGH);

delayMicroseconds(1);

digitalWrite(TRIG,LOW);

duration = pulseIn(ECHO,HIGH);

distance = ((float)(duration*340)/10000)/2;

Serial.println(distance);

int i;

if (distance <= ) {

i=map(distance,0,32,0,7);

tone (speaker, melody[i], 250);

delay (300);

}

else {

noTone(speaker);

}


}