簡単周波数カウンタの実験
その後、最も簡単な周波数カウンタを実験しようと、次のような物を試して見ました。
○PIC ○Xtal ○表示 ○MAX周波数 ○用途 16F84A 3.579545MHzのカラーTV用 LCD、以前表示として使った物を再利用した。 100MHz、表示 1KHz単位 デイップメータなど現在、アンプが対応出来ないのか50MHz辺りから少しカウントミスを起こしている。
動作に付いて
一般的な周波数カウンタと同じです、内部のタイマ0をカウンタとして動作させています。ただ内部カウントは細工せず「ただ時間を待つだけ」と単純です。
水晶も表示1KHzとデイップメータ用としたので10MHzで10KHz程度読めれば使えるので精度は取らず、かなり手を抜いています。手持ちのアナログ・デイップメータで30MHzで1MHz単位(10MHzで0.2MHz、1MHzで50KHz)でも使えるのでこの程度で十分使えると思いました。
固定コンデンサで発振させ調整していません。これで計算の3.58MHzに対し3.57950MHzで発振していました。最高動作周波数は原理的に次の通りです!
3.58/4*90%*256=200MHz (但し、ICが対応していればですが・・!:avrが10MHzの水晶を使って4.5MHz程度ですからえらく違っている。)
測定は表示が1KHzですからゲート時間は[1mSec]になります。
これは 3.58/4*1000=895 ;steps です。測定は1mSecゲートでカウントし、カウント処理(DATA取り入れ、BCD変換、LCDへ転送など)してから次のカウントまで0.5Sec待っています。高速で表示しても意味が無いのでそれより節電を優先させました。図RA3がHの時トランジスタは動作しなくなります。
つまり測定中以外トランジスタの電源を切り、消費電流を節約しています。単純計算 1/500(単位mSec)しか作動してないことになる。
消費電流は約5mAですが3端子レギュレータをもっと省エネタイプに変更すれば更に2mA減るかもしれません。ちなみにトランジスタ(ft=450MHz)を動作させた状態は平均15mA程度電流は流れている。50MHzの信号を加えてもほとんど同じです。動作はタイマ0を利用して[内蔵プリスケラの8bit]+[TMR0の8bit]+[フラグの1bit]合わせて17bitが最大カウント能力です。つまり[0-131,071]までカウント可能です(但し、最終桁表示は怪しいかも) 。
結 果
まだ完全に動作していません、高い周波数でアンプが予定通り作動しないので最高動作周波数は未確認です。表示は109MHz辺りまで出て少しふら付いています。水晶発振周波数を変更すると145MHzまで伸びているようですが手元の測定器では適当なのがありません。30.012MHz表示を他のカウンタで測ると30.014MHzでした。この辺まであまり問題がありません、水晶周波数は無調整ですからこんなものです。
50MHzは50.300MHzで50.05MHzと少し低めです、原因不明でハードが悪いのかソフトなのか調査中です。今回製作中のトラブルで最大の物は測定周波数の高い周波数でふら付く事です。これはまだ解決していません。006P電池動作なのでACが混じることは無いのですが・・。
当始、プリスケラの読みミスが発生し1週間程度まご付きました。他にもまだ不明点があり解決していません。写真は[107,357 MHz]と出ています(ゴミよけのカバーが付いて見難い)。スイッチは後でメモリー用に使う予定(測定後考えている事が多い!)、LEDはTESTで使った物ですがまだ外してない。
2007/JUN/25
もどる [MAIN MENU]