データシートをよく読んだところ、MC145157の周波数の上限は15~20MHz程度のようです。
50MHzをダイレクトに制御するには役不足ですので、PLL制御のVFOなどで利用したいと思います。
そこでMC145157の代わりにリクエストがあったPLL2001というICで実験してみました。
PLL2001のデータシートを見るとMC145157とほとんど同じですが、分周比が16ビットに拡張されており、÷Rは5~65535、÷Nは272~65535です。
また、周波数レンジが2つに分かれており、20MHzまでと200MHzまでです。
ピン配置もほとんど同じですが、14ピンが周波数レンジ切替に割り当てられており、10kΩで5Vに接続して200MHzまでに設定しました。
回路の変更点はこれだけです。
ソフトは16ビットになったので、DATAに信号を送るところのループ数を14から16に変更するだけです。
For I = 16 To 0 Step -1
C = R
Shift C , Right , I
C = C And 1
Portd.1 = C
Pulseout Portd , 0 , 10 'Clock
Waitus 30
Next
コンパイルし直してAVRに書き込んでテストしました。
AVRのクロックは10MHzの水晶発振でしたが、周波数の精度は不要なので、8MHzの内蔵RC発振に変更しました。
これで2ポートの空きができて、14ポートが使えます。
7セグLED3桁、ロータリーエンコーダ、送受信切替に割り当る予定です。
テスト中です。
VCOはそのままなので、周波数は13800kHzです。
PLL2001のアップです。
あとは、50MHzのVCOを制御できればOKです。
そろそろ制御基板のレイアウトも検討しないといけませんね。
50MHzをダイレクトに制御するには役不足ですので、PLL制御のVFOなどで利用したいと思います。
そこでMC145157の代わりにリクエストがあったPLL2001というICで実験してみました。
PLL2001のデータシートを見るとMC145157とほとんど同じですが、分周比が16ビットに拡張されており、÷Rは5~65535、÷Nは272~65535です。
また、周波数レンジが2つに分かれており、20MHzまでと200MHzまでです。
ピン配置もほとんど同じですが、14ピンが周波数レンジ切替に割り当てられており、10kΩで5Vに接続して200MHzまでに設定しました。
回路の変更点はこれだけです。
ソフトは16ビットになったので、DATAに信号を送るところのループ数を14から16に変更するだけです。
For I = 16 To 0 Step -1
C = R
Shift C , Right , I
C = C And 1
Portd.1 = C
Pulseout Portd , 0 , 10 'Clock
Waitus 30
Next
コンパイルし直してAVRに書き込んでテストしました。
AVRのクロックは10MHzの水晶発振でしたが、周波数の精度は不要なので、8MHzの内蔵RC発振に変更しました。
これで2ポートの空きができて、14ポートが使えます。
7セグLED3桁、ロータリーエンコーダ、送受信切替に割り当る予定です。
テスト中です。
VCOはそのままなので、周波数は13800kHzです。
PLL2001のアップです。
あとは、50MHzのVCOを制御できればOKです。
そろそろ制御基板のレイアウトも検討しないといけませんね。