P4:今日は頭の体操

| | トラックバック(0)
 10000rpm まで 1rpm 単位で計測するには、カウンターは、4MHz を入力して 18bit 必要になる。残念ながら H8/3664 のカウンターは 16bit しかないので 2bit をソフトで何とかしなくてはならない。
 単純に 16bit のカウンタがオーバーフローしたところでソフトが管理するカウンタをインクリメントするだけだと、オーバーフローとインプットキャプチャーのタイミングが重なったところで誤動作してしまう。計算すると 16bit のカウンターがオーバーフローするあたりの回転数は、3662rpm。 対策をしないと良く使うエンジン回転数でときたま表示がちらつくという非常にいやらしい不具合になりそうだ。

 同じような仕様のこちらコードを見ると、きちんと対策は打ってあるが H8 と AVR の割り込みコントローラーの仕様の違いからこのままでは使えない。頭を捻ってアウトプットキャプチャーを二本使うロジックを考える。

 今日はここでタイムアップ。明日は今日考えたロジックの検証だ。
 

トラックバック(0)

このブログ記事を参照しているブログ一覧: P4:今日は頭の体操

このブログ記事に対するトラックバックURL: http://www.co-mind.info/cgi-bin/mt/mt-tb.cgi/1098

このブログ記事について

このページは、ytaroが2009年6月 4日 10:53に書いたブログ記事です。

ひとつ前のブログ記事は「P4:タイマの動作確認」です。

次のブログ記事は「P4:タイマーW周りのコードを書く」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

track feed Subscribe in a reader
Powered by Movable Type 4.01