お.寒.い.電.子.工.作...

技術もノウハウも知識も情報も人脈もコネもカネも測定器も無いけど、たまーに電子工作に挑戦する「ゆるーい」ブログ。

マイブームはVFO その12

2010-08-01 13:50:43 | VFO
PICマイコン「16F88」および12.8MHzのTCXOを取り付けて、周波数カウンタのソフトを書いてみました。基板の右奥の赤い「囲い」は、DBM保護用です(コアはまだ固定していないので)。電気的な意味は全くありません。

過去に作成した周波数カウンタのソフトは、所定のゲートタイムを得るために実行命令数を厳密に管理して、例えば100msとか500msとかの時間を作っていましたが、今回は周波数カウンタだけではなく、そのほかもいろいろとやらねばならないことから、タイマ0の割込みを使ってゲートタイムを作ることにしました。

しかし、クロックが12.8MHzなので、キレの良いゲートタイムにはならず、結局、102.4msという半端な値に。

この場合、カウント値から実際の周波数にするには(625/64)倍しなくてはならず、今まで使っていた24bitの演算ルーチンではビット数が足りず、仕方なく32bitに増力。



画像は、VCOの発振周波数をオフセットなしでそのまま表示しています。手持ちの受信機と比べてみましたが、「KHz台」までは同じでした。

PICマイコンによる周波数カウンタの表示で見ると、VCOは、
(1)電源ON直後から、ゆっくりと周波数が下がり、10分(たぶん)くらいで10kHz下がる
(2)以後はこの付近で上がったり下がったりする
という傾向があるようです。周波数カウンタの完成度の問題もあるでしょうから、ここはやはり、ちゃんとした、「測定器としての周波数カウンタ」が欲しいところです。


次のステップは、下記のいずれかになる予定です。

(1)ロータリーエンコーダの回転を検出する部分のソフト組み込み。周波数を測定しつつやらなくてはいけないので、かなりやっかいです。

(2)DAC制御。すなわち、「設定周波数」と「測定周波数」の大小関係により、DACに信号を出す部分

やはり、(2)が先でしょうかね。

とりあえず、目的周波数をマイコン内で仮定し、その周波数にできるだけ近づくようにDACを制御。VFDの表示は測定周波数として、「どれだけ安定させることができるのか」を見ます。