|
|
原是想要达到用touch sensor控制音乐速度,同时呼吸灯自己闪烁,但是很运行的很不好,根本无法控制
int tune[] =
{
NOTE_D3,NOTE_D3,NOTE_D4,NOTE_D5,NOTE_D5,NOTE_D4,NOTE_D3,NOTE_D2,
};
float duration[]=
{
1,1,1,1,1,1,1,1,1,1,1,1,2,0.5,1
};
int length;
int tonePin=11;
int touchPin=4;
int currentState=0;
int lastState=0;
int Melanie=400;
void setup()
{
pinMode(tonePin,OUTPUT);
pinMode(3,OUTPUT);
pinMode(5,OUTPUT);
pinMode(6,OUTPUT);
pinMode(touchPin,INPUT);
length = sizeof(tune)/sizeof(tune[0]);
}
void loop()
{
for (int a=0; a<=255;a++)
{
analogWrite(6,a);
analogWrite(3,a);
analogWrite(5,a);
delay(5);
}
for (int a=255; a>=0;a--)
{
analogWrite(6,a);
analogWrite(3,a);
analogWrite(5,a);
delay(5);
}
currentState=digitalRead(touchPin);
if(currentState==1&¤tState!=lastState)
{
if(Melanie>0) Melanie-=100;
else Melanie=400;
}
for(int x=0;x<length;x++){
tone(tonePin,tune[x]);
delay(Melanie*duration[x]);
noTone(tonePin);
} lastState=currentState ;
麻烦了,谢谢
delay(5000);
}
|
|