710
edits
(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: | ||
// 초음파센서와 피에조 스피커. 거리에 따라 (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); | |||
} | |||
} |
edits