17/06/17 02:10:43.77 naRok1Jg.net
>>619
ありがとうございます。試してみたのですが他のcaseに何故か行けません。
Serial.printlnでstateを確認してみたのですが数字は変わっています。でもcase2に行けません。
int stateの数字を変えてみたらcase2へ行けました。何がおかしいのでしょうか?
stateの数字を確認してみると2の数字が連続で出てきたのですがチャタリング?が関係しているのでしょうか?
void loop()
{
sw_scan=digitalRead(6);
sw_red=digitalRead(7);
int state=1;
//int playID;
switch(state)
{
case 1: //(1)
if (sw_red == LOW) {
state=2;
//playID = 1;
Serial.println(state);
RGBLed.setPixelColor(0, 150,0,0) ;
RGBLed.show() ;
}
break;
case 2: //(2)
mp3_play(1); //1曲目再生
delay (3000);
state=3;
break;
case 3: //(3)
if (sw_scan == LOW) {
mp3_play(11); //ここは曲順を考えて値を変えるようにする
delay (1000);
mp3_play (2);
delay (20000);
state=2;
}
break;
}
}