{{publish any}} !header MAX038を使用した広帯域精密波形オシレータキットで使用する周波数カウンタをワンチップマイコンのAVRで作ろうとしましたが、不勉強もあってうまく動作させることができません(雑記/2007-11-14)。そこで、方針変更してPIC(PIC24FJ64GA002)を使って作ることにします。 !body LCメーターの製作では、PICからAVRへと途中でチップを変更しましたが、今回は、AVRからPICへ変更します。(「節操がない」とのツッコミは遠慮しときます。^^;) PIC24をつかった周波数カウンタは、ありがたいことに、この世界で有名な[電子工作の実験室|http://www.picfun.com/]に製作例としてまとめられたものがあります。 スクラッチで作る技量も時間もありませんので、ソースを参考にさせていただきながら、一部LCD回りは、AVRでLCD表示の参考にした[趣味関係のメモ帳|http://www.mouiyada.jp/]のソースをPIC用に一部変更して利用させて頂きました。 ブレットボードに組み込んで、PIC自身の外部クロック源12.8MHzを表示させてみると問題無く表示します。 {{image DSC00984.jpg,,,size:50%}} ちなみに、ソースプログラムは、よそ様のを拝借したので簡単に周波数カウンタを実現できますが、PIC24をつかう上で面倒なのは、3V程度の別電源が必要なのと、PIC内部動作のための10μFの低ESRコンデンサを外付けにしなければならないことです。 チップコンデンサの10μFは、秋月電子で購入してあったので、リード線を半田付けしてブレットボードで使用できるようにしました。 {{image DSC00982.jpg,,,size:50%}} 10MHzや12.8MHzのクリスタル発振器の発振周波数を測定してみました。 {{image DSC00989.jpg,,,size:50%}}{{image DSC00992.jpg,,,size:50%}} 市販周波数カウンタと比較しても、1,2Hzの誤差しかありません。当然ながら、カウンタとしての精度は外部クロックのクリスタル発振器の精度に左右されますが、今回の用途では、十分過ぎる精度です。 {{image DSC00985.jpg,,,size:50%}} さっそく、広帯域精密波形オシレータキットと接続してみました。高い周波数では、MAX038の出力レベルが低下し、カウントミスがでるようなのでCMOSインバータの74HCU04を入力アンプとして利用します。 周波数カウンタは問題ないのですが、オシレータキットの発振周波数は、コンデンサを外付け切替え式にしたためか、かなり変動するようです。