やっとオリジナルシャッフルが満足に機能する。配列をシャッフルして1から再生するという単純なものだけれど、なぜかうまく機能しない。曲が次に移るときにタイムアウトというかプログラムの流れについていけない感じ。ArduinoとDFのバランスが取れていない感じだった。悩んでみても答えがでない。
不思議なもので2週間ほどDFから離れてみると、あ!ひらめいたかも。いろいろとこねくり回したが 、最終的な変数への代入直後に待機を0.5秒設けてみる。正解だった。あ~こんな簡単な落ちかよ!
DFの状態を確認→再生中ならなにもしない→停止中ならリストの次の曲を再生→DFの状態を確認 とうループのなかで 状態確認の結果と実際のDFの動きにわずかなタイムラグがありプログラムは停止と判断しての動きも実際は再生をしはじめましたよ!というタイミング。それが2~10曲分つづく状態。見た目はその曲数だけ一気に飛ばした感じになる。
こう書けばすごく簡単だけれども曲飛ばしのボタンが押された時の処理と戻るボタンの処理に問題があるのかと探っているうちに迷子になってしまった。
さてと石を買っスケッチを焼きますかね。
不思議なもので2週間ほどDFから離れてみると、あ!ひらめいたかも。いろいろとこねくり回したが 、最終的な変数への代入直後に待機を0.5秒設けてみる。正解だった。あ~こんな簡単な落ちかよ!
DFの状態を確認→再生中ならなにもしない→停止中ならリストの次の曲を再生→DFの状態を確認 とうループのなかで 状態確認の結果と実際のDFの動きにわずかなタイムラグがありプログラムは停止と判断しての動きも実際は再生をしはじめましたよ!というタイミング。それが2~10曲分つづく状態。見た目はその曲数だけ一気に飛ばした感じになる。
こう書けばすごく簡単だけれども曲飛ばしのボタンが押された時の処理と戻るボタンの処理に問題があるのかと探っているうちに迷子になってしまった。
さてと石を買っスケッチを焼きますかね。
コメント
コメントを投稿