PIC の水晶発振子入力で VXO を試してみる

ふっとした思いつきである
PICでマーカ発信器が出来れば、超安く出来るのでは? と妄想を抱いたのであった
冷静に色々と考えた所、クロック入力の補正はソフトウェアでの補正は無理なのである

例えば、周波数カウンタではゲートタイムの値を正確に補正すれば良い
ゲートタイムは1/100秒とか1/10秒の単位なので、正確な基準信号があれば補正も可能である
しかし、マーカ発信器として使うには、ソフトウェアでの補正は実行命令ステップ単位で4クロックなので、低い周波数であれば可能性はあるが周波数が高くなると実質的に不可能である

で、考えた結論はPICの水晶発振子の入力に、LとCを付けてVXOを構成してみる実験をしてみた
今回は部品箱に転がっている12F675で実験してみる
まずは素の水晶でPICと接続して発振させてみる
水晶も貰い物なので想定負荷容量などは不明である、発振周波数は2KHz程高く発振していたのである

IMGP5903

<必殺 空中配線で水晶を繋ぐ>

さてPIC + VXOの実験である
まずは発振コイルを作る 私は10Kボビンが転がっていたので、それに巻いてみた
一旦の想定インダンクタンスは10μHである
コイルが組み上がったところで、仮組みで実験してみる
素晴らしい…. 約19.999…MHz
発振周波数が3KHz低く発振出来たのである

IMGP5905

<このボビンを使用する>

IMGP5907

<分解して 元に巻いてある線をほどく>

IMGP5908

<今回は上段8T 中段8T 下段8T 計24Tを巻いた 9μH~14μHとなった>

気を良くして、基板に実装してみる
元々の発振周波数が高い水晶なので、コンデンサの容量は小さめに15pFとしてみた

IMGP5910

これで、発振周波数の変化範囲は、19.995MHz~20.004MHzと約10KHz程度の幅が確認出来た
PICは発信器としても使えるではないか…
但し、クロック発振周波数20MHzの数10Hz単位で安定しないのである 全体をシールドしてしまえば安定度は増すと思うが、そこまでする程のモノではない

また、データシートだと水晶の両端をコンデンサでグランドに落とすのが正当だと思うが、その部分にL・Cを付けても上手く変動しなかったのである 究極の力技でLCをぶち込んだが、回路的に水晶のグランドがフローティング状態なので、不安定の理由はそこらへんかも知れない

PIC_Marker

<回路は簡単であるが、発振コイルと水晶・C2の配線は最短かつ発振コイルと水晶の筐体はアースが必要である>

今回は、マーカのテストなので、500MHzのマーカをでっち上げてみた
発振コイルのコアで、20.000.000MHzにHz単位で合わせる
あとは、超簡単な手抜きファームを入れ込むだけである
(超短いので500KHz版のソースを掲載する 当然ノンサポートである)

好きな人は、ソースを変更して100KHzなり25KHzなりのマーカに仕上げれば良いと思う

ちなみに、PICでVXOなんてマイクロチップ社は想定もしていないと思うので、当然誰も動作保証なぞしてくれないのである

超手抜きであるがソースは以下のリンクで

PIC_MARKER

投稿者:

miniDATA

その昔PCのBIOS・デバイスドライバ等の開発と機器のファームウェア開発に従事した元技術者(主にアセンブラ)  なぜか、昔のモノが大好きで昭和時代のクルマやバイクに惹かれてしまい懐古趣味全開になりつつある自分が、怖いと感じている 

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です