![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
AVRのインプットキャプチャを利用してパルス立ち上がりエッジ間の時間を計測したいのですが、どうも計算が合いません。知恵を貸してください・・・
1MHzの駆動でカウンタの分周が64分周なら単純に1カウント64μSecですよね?
実際に計測しますと130Hzのパルス立ち上がりエッジ間に60カウントしました。ですので・・・
60パルス*64μSec=3840μSec
となると思うのですが、
130Hzならパルス立ち上がりエッジ間は・・・
1Sec/130Hz=0.007692Sec
すなわち7692μSecですよね?
もし計算間違ってたら教えてください。
計測対象のパルスですが、これはPCファンの回転信号を計測しました。
DSOnanoで計測したら130Hzでした。
AVRのタイマ/カウンタの値はUARTで確認しました。
AVRのタイマーの設定を間違ってたらいけないので記載していきます。以下の通りです。
TIMSK = (1<<ICF1);
TCCR1B = (1<<ICES1)|(3<<CS10);//上りエッジの64分周
A 回答 (1件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
AVRは使った事はありませんが。
インプットキャプチャの使い方が間違っています。
インプットキャプチャは、入力のエッジが有った時にカウンターのカウント値をラッチしておいて、後からソフトでその値を読みだすように使います。
1回目のエッジでのカウント値と2回目のエッジのカウント値の差を取れば2つのエッジの間の時間間隔が分かります。
2つのエッジの間にカウンターがオーバーフローするとカウント値の大小が逆転する事に注意する必要があります。
これがうまく動く為には測ろうとするパルスの周期よりカウンタの周期が長い必要があります。
カウンタの割り込みを上手く使えばこの制限は外れますけどね。
7692μSec/64μSec=120.19なので、どうやらカウンタの周期は128usで動いていて、7692usの間にカウンタが60回オーバーフローするのを数えているようですね。
カウンターの周期は最大にしておいていいのですよ。
そして、2つのキャプチャの間のキャプチャ値の差を取るんです。
カウンタのオーバーフロー時の処理を忘れないように。
この回答への補足
タイマーが設定通りの速度で動いているか確認するたオーバーフロー割り込みを利用して時間を測ってみました。
約4秒間隔で割り込みが発生しています。設定から計算すると、
64μSec×65535カウント=4194240μsecすなわち4.19秒となり、カウンタ自体は問題無さそうです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 工学 シンクロスコープの測定周波数の上限は正弦波に対する値である。パルス波の場合はどうなるか 教えてくださ 4 2022/06/18 11:47
- その他(自然科学) 風車音の測定 3 2023/04/28 07:12
- その他(暮らし・生活・行事) 賃貸契約前 最初の間取り図との相違があります 2 2022/07/19 20:55
- 物理学 2次の伝達関数のゲイン線図についてです。 ゲイン線図を直線近似した時に、傾きが0dB/secから-2 2 2022/07/10 19:31
- Excel(エクセル) Excel-VBAの「しばらくお待ちください」のダイアログが自動的に閉じない 2 2023/05/24 15:31
- 物理学 オートコリレータで観測されたダブルパルス 1 2022/12/13 14:23
- 囲碁・将棋 将棋の封じ手の時の消費時間 2 2023/08/16 09:35
- 工学 計器用変成器(PT/CT)を用いた電力測定方法について 2 2022/08/16 11:09
- 電気・ガス・水道 冷凍庫の電気代の計算のしかた 4 2023/08/07 08:07
- 電気工事士 6.6kVケーブル単芯325sq-1.5kmの遮蔽銅テープ抵抗値は何Ω? 1 2023/05/02 21:06
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
名古屋の栄と錦は治安悪い?
-
エアー漏れの流量の計算式を教...
-
VB.NET でのLaod/unLoad につ...
-
『μg』の読み方と意味。
-
PHPでテトリスって作れるかな?
-
フォーカスの制御
-
コンピュータ言語paythonのエデ...
-
ソリッドの凸凹判定
-
画像処理のラプラシアンフィル...
-
AVRのインプットキャプチャにつ...
-
word
-
Illustratorテキストエリアへ塗...
-
PDF→CSVへ変換
-
イラレでダブルクリックで文字...
-
PowerPoint SmartArtの箇条書...
-
DataGridViewでセル内の特定の...
-
illustratorとExcelは連携出来...
-
数式中の文字をCambria Math以...
-
人体切断マジックの事でお聞き...
-
PDF文書で斜めテキスト
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
名古屋の栄と錦は治安悪い?
-
『μg』の読み方と意味。
-
NumericUpDownの数値を選択済み...
-
VB.NET でのLaod/unLoad につ...
-
フォームを開く時のイベント処理
-
VB.NETのテキストボック...
-
テキストボックスからフォーカ...
-
vba メモリーリーク
-
ob_start()した後、ob_flush()...
-
C#での変数スコープ?
-
項目数は英語で
-
シリアルフラッシュメモリをな...
-
mailの送信音がしなくなったの...
-
TextBoxにカーソルがあるかない...
-
フリップフロップについての質...
-
シリアル通信について
-
ACCDE形式でクエリの警告メッセ...
-
ブック開いたときのフォーカス指定
-
携帯電話のマイクロSDカードに...
-
VBのレコードセットを閉じない...
おすすめ情報