RSS Kommentarer (1)
avatar Af Ken Przybylak, 07.11.2009 kl 23:35
Her er mit første lille forsøg med arduino og lyd

Demo:
http://www.youtube.com/watch?v...Nv_0

kode:
int tones[] = { 1915, 1804, 1700, 1607, 1519, 1432, 1351, 1275, 1204, 1136, 1073, 1014, 956 };
int sinusWay=0;
int sinusHight=50;
int sinusSpeed=1;
int sinus=sinusHight;
int button13State = 0;
int oldButton13State = 0;
int fx=0;
int maxFx=3;

void setup() {
for (int i = 3; i < 14; i++) pinMode(i, INPUT);
}

int getsinus(){
if(sinusWay==1) sinus+=sinusSpeed;
else sinus-=sinusSpeed;
if(sinus>sinusHight) sinusWay=0;
if(sinus<(0-sinusHight)) sinusWay=1;
return sinus;
}

int getSaw(){
sinus+=sinusSpeed;
if(sinus>sinusHight) sinus=0-sinusHight;
return sinus;
}

void playTone(int tone) {
if(fx==0) tone+= analogRead(0);
if(fx==1) tone+= analogRead(0)+getsinus();
if(fx==2) tone+= analogRead(0)+getSaw();
digitalWrite(2, HIGH);
delayMicroseconds(tone);
digitalWrite(2, LOW);
delayMicroseconds(tone);
}

void loop(){
button13State = digitalRead(13);
if(oldButton13State!=button13State){
oldButton13State=button13State;
if(button13State==HIGH){
fx++;
if(fx==maxFx) fx=0;
}
}
for (int i = 3; i < 12; i++) if(digitalRead(i)==HIGH)playTone(tones[i-2]-400);
}

Ny i debatten? Opret en brugerkonto