ここから本文です

arduinoのプログラムについて。 私は電子工作を行っており、開発ソフトはarduin...

rii********さん

2017/10/1716:10:16

arduinoのプログラムについて。

私は電子工作を行っており、開発ソフトはarduinoを用いて、レースなどに使われるタイマーを7seg1桁を四個使い、ゴールを検知する超音波センサを使って作成しています。
そこでプログラ

ムについて質問なのですが、
1台のarduinoで、7seg1桁4個(00秒:00)の形のカウントアップタイマーと、超音波センサを距離測定として使い、5cmいないだったらフラグをたてて、タイマーを止めるなどというプログラムを作りたいです。
しかし私が作ったプログラムでは、センサーも動き、タイマーもしっかり止まるのですが、カウントアップしているタイマーがどうしてもチラついてしまい、見栄えがあまり良くなく、また正確なタイムを測ることが出来ません。(チラつきが原因?で1秒が1.10秒とかになってしまい、ストップウォッチと比較してみると次第に遅れていってしまう。)
そこで、回答者様が考えるプログラムを参考にしたいので、教えていただければと思います。
可能であれば、プログラム全体を見させて頂けたら幸いです。

よろしくお願いします。

閲覧数:
72
回答数:
1

違反報告

ベストアンサーに選ばれた回答

boo********さん

2017/10/1810:10:55

1.”可能であれば、プログラム全体を見させて頂けたら幸いです。”・・・・あなたと同じ仕様のプログラムを作っている人は極めて少ない。また、その人がこの質問を見て回答しようなんて気になるのはまたまた少ない。ということで望む回答を得られる確率がきわめて低くなる。
マイコンのプログラムは0から作るとなると結構面倒なので。

2.正確なタイムを測ることが出来ません。
Arduinoのタイマー2を使っててこの現象が出るのですか?もし、そうであれば水晶発振器をより正確なものに交換する必要がある。
素人にはお奨めしません。あきらめる。1日とか1月を計るならともかく、今のままで1秒が1.1秒になることはないはず。

3.カウントアップしているタイマーがどうしてもチラついてしまい、見栄えがあまり良くなく

恐らくダイナミック点灯しているのでしょうが7segの表示タイミングが適切でないと思われます。1桁4mSくらいで切り替えればチラツキはなくなるでしょう。
Timer2割り込みを使う。割り込み周期をあまり早くしないこと。なぜならあまり早いと割り込み処理ばかりになり、main()関数が走らなくなる。
せいぜい1mS周期まで。

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。

不適切な投稿でないことを報告しました。

閉じる