###前提・実現したいこと
タイトル通りarduinoのプログラミングにて
ボタンが押されてから、関数の内容を3回実行してから本文に戻し、再びボタンを押されるのを待つようにコードを書き換えたいです。
###発生している問題・エラーメッセージ
本文が下記だとスイッチを離した瞬間、関数の内容の実行が止まってしまいます。そのため、以下の該当のソースコードに示すように、スイッチが押されてからフラグを立て、そのフラグが立っている間は関数の中を実行するように改善しました。
ところが、現状では一度関数に飛ぶと、そこから本文に戻ってきても、フラグが立っている状態が維持されて、再び関数を実行しループに入ってしまいます。
そのため、関数を指定回数(例えば3回)実行してから、再び本文に戻りボタンプッシュ待機の状態にしたいです。
本文をすっきりさせたいので、できれば関数内でなんとかしたいのですが、関数の中からフラグを0にする手法もうまく浮かばず。。。
何か良いアイデア等ございましたらご教授おねがいいたします。
if(digitalRead(button)==HIGH){sendData();}
###該当のソースコード
c
1void loop() { 2if(digitalRead(button)==HIGH){buttonflag=1;} 3 if(buttonflag==1){sendData();} 4} 5 6void sendData(){ 7for(i=0;i<3;i++){ 8実行文; 9} 10}
###補足情報(言語/FW/ツール等のバージョンなど)
Arduino IDE 1.8.0
Arduino M0 Pro
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/03/09 01:16
2017/03/09 02:05
2017/03/09 09:59