市販DDSキット+PICマイコンで作るVFO
'99年 JF1DHM
(市販のDDSキットを使用したアマチュア向けVFOです)
今までたくさんのアマチュアがDDSを使用したVFOを制作されているのをうらやましく見ていました。
PICのCPUにも興味を持っていたのでシンプルな構成の自作VFOを制作したので自慢させていただきます。
(注意:このVFOは個人的な興味で制作した物でありDDSキットの発売元とは無関係です)
構成部品は市販DDSキット以外に自作のコントローラーと外づけ部品(エンコーダ、LCD表示器,SW)により実現しています。
ロータリーエンコーダは用途によってお好みの性能の物を使用できます。
25パルス/Rでも、高価な250パルス/RでもOKです。
【構成】
入出力 | 1チップマイコン |
DDSキット |
ロータリ・エンコーダ
SW LCD表示器 |
PIC16F84 |
市販のDDSキット ↓ (VFO出力) |
【主な機能】
VFO A/Bの2ch(LOCK機能付き)。
ロータリ・エンコーダによる周波数の可変。
(多パルス・エンコーダへの追従性能を考慮。250パルス程度なら取りこぼし無し)
周波数の可変レンジ選択(100K,10K,1k,100,10,1
Hz)。
無通電でも動作状態を記憶。
表示周波数と出力周波数の関係をPIC書き込み時に選択できます。
オフセット周波数と±の指定は運用時に変更可能です。
出力周波数fo×1逓倍 + オフセット周波数±faを計算して表示
出力周波数fo×2逓倍 + オフセット周波数±faを計算して表示
出力周波数fo×3逓倍 + オフセット周波数±faを計算して表示
ダイアル回転方向と出力周波数の関係をPIC書き込み時に選択できます。
右回転で出力周波数が高くなる(通常、正)。
右回転で出力周波数が低くなる(逆ダイヤル)
出力周波数の上限/下限を制限した場合はその範囲内で周波数を加減できます。
オフセット周波数を利用すれば1Hz単位で周波数校正ができます。
Top
【現状】
出力周波数は0〜約30Mhz(実用範囲1Mhz〜20Mhz)
22Mhzローパスフィルター実装。低周波で使用する場合は要カップリング容量変更
内部EEPROMのデータエリアへ各種情報(すべてのデータ)を記憶し再始動時に復帰します。
PICマイコンはPIC16F84、動作クロックは10Mhzのセラミックオシレータを使用(20MhzPIC可)。
消費電流(5V動作時)
DDS UNIT=80mA、LCDライト無し=5mA、LCDライト付き=45mA、CPU=55mA
LCDバックライト付きなら合計約180mA、無しなら140mA(ちょっと大食らいなのは作者似?)
【基本操作】
VFO A/B切替
周波数をA/B二種類設定可能。SW1を押して1.6秒未満で離すとA/Bが反転します。
LCDは" A "または"
B "と表示されます。
VFO LOCK
SW1を押したまま1.6秒以上経過すると使用中のVFOをロック(ロック解除)します。
LCDは"LOCK"と表示されます。
LOCK状態ではLOCK解除操作のみが有効となりその他の操作は無効となります。
周波数可変
ロータリエンコーダの1パルスに対して変化する周波数の桁位置が移動できます。
レンジ切替
SW2を一回押すと上位桁方向へ移動し最上位時の操作では最下位桁に移動します。
レンジの切替範囲=10Khz(デフォルト)->1hz->10hz->100hz->1Khz->10Khz->1hz・・・・・
動作状態の保存
電源を切断しても再度電源ON時には以前の状態で復旧します。
ただし、ダイアル操作後3.2秒以上の無操作があれば周波数は記憶されていますが
それ以前の場合は記憶されていません。
その他のキー操作等はその都度記憶されます。
【設定操作】
電源ON+SW1,SW2同時押し
ALL RESET(初期状態へ戻す。LCDブランク表示のループ状態となり操作禁止)
電源ON+SW1押し
OFFSET値の設定モード (出荷時デフォルト
0)
設定中は"OFFS"と表示されます。
ダイアル操作でOFFSET値を決定後,SW1を押してメモリへ記憶,電源をOFF。
電源ON+SW2押し
OFFSET演算の加算/減算切替 (オルタネート動作)
加算時にはレンジ桁表示* (出荷時デフォルト)
減算時にはレンジ桁表示#
【CPU内部の変更可能な設定値】
周波数可変範囲
下限値、上限値を指定可能。限界値以上・以下には変化しません。
特に指定がなければ出荷時に下限値=0、上限値=67108863(3FFFFFF)
±OFFSET周波数
DDS出力周波数にOFFSET周波数を加/減算した値をLCDへ表示可能。
OFFSET値が0の場合は出力周波数をダイレクトに表示します(デフォルト)
(ex)DDS=12,345.678Khz,OFFSET=200,000.000Khzならば
運用時の表示は" 212.345.678"となります。
出荷時の注文にて出力周波数のデフォルトを指定できます。
出荷時の注文にて出力周波数の1倍表示、2倍表示、3倍表示を選択できます。
出荷時の注文にて以下の機能を選択できます。
正ダイアル(出力周波数増加時に表示周波数も増加する関係)
逆ダイアル(出力周波数増加時に表示周波数は減少する関係)
逆ダイアルの場合中心となる基準周波数を指定すればOFFSET値の設定が簡単です。
基準周波数の指定が無い場合は10Mhzとします(出力周波数のデフォルトではない)
OFFSET値の計算は次の通り
8Mhzを中心にしたい場合はOFFSET値=(8−10)×2=−4Mh(ハ)を設定すればよい。
結果8Mhz表示で8Mhz出力、9Mhz表示で7Mhz出力の逆ダイアルとなります。
さらに8Mhz出力時(イ)に50Mhz(ロ)を表示したいなら
OFFSET値は (ロ)−(イ)+(ハ)の関係から50-8-4となり+38Mhzとなります。
(上記はあくまで逆ダイアル時のOFFSET計算方法です。正ダイヤルなら(ハ)が不要です)
Top