PICによるオシレータについて (すみませんがいまいちです)
BFO実験につきましてはコメントでのご指摘ありがとございました。その後も少しいじってみたのですが、やっぱりSSB音質は治りませんでした。あとは昔使ってた短波ラジオを探し出して試してみようかと思っています。
ちょっとBFOを離れて、今日は「PICをオシレータとして使えないかな」について計算および実機確認してみました。
回路は以下の通りです。
PICマイコンは内部40MHz動作可能な18F1320にしました。この回路で、PWM機能を使ってプログラマブルな出力周期を作ります。
以下は526KHzの出力が得られる設定例です。PR2とCCPR1Lの値で周期を制御できます。
#include<P18F1320.INC>
org 0; start code at 0
Start:
;******** Port initializing ****
MOVLW 00fh
MOVWF ADCON1
CLRF TRISB
;******** CCP module initializing ****
MOVLW 00fh ; PWM mode enable
MOVWF CCP1CON
MOVLW D'18' ; F = 10MHz / (ThisValue +1) / 2
MOVWF PR2
MOVLW D'9' ; duty (PR2/2)
MOVWF CCPR1L
MOVLW 004h ; Timer2 enable (GO!)
MOVWF T2CON
MainLoop:
;********* Do nothing ************
GOTO MainLoop
end
Datasheetに基づいて設定値と周波数の関係を求めたところ、下の表にようになりました。実機波形でも3.333MHzまでほぼ表の通りの出力が確認できました。。
でもこれだと差分がおおきくてとびとびにしか周波数を選べないですね・・・・・何かの実験でちょっとしたオシレータが必要になったらPICマイコンをちょちょっとプログラムして使えるといいかな、位の気持でやってみましたが、これだと使いどころがあまりなさそうですね。 (先に計算しろよ、と言われると思いますが)
さらに恥をかいておくと、その次はなんとかその出力を振幅変調してPICワイヤレスマイクなんてものができないかな、とか妄想してまして。
でもちょっと考えればPIC内部じゃ無理だし、無理矢理外でやる位なら最初からトランジスタ回路かDSPにしとけ、となりますね。。。
今回のはどうも無理があったようで、反省しております。
次はまたプリミティブなゲルマラジオに一旦戻ろうかと思っております。
以上です。
にほんブログ村 ←記事が面白かったらクリックしてやってください。
応用アイディアありがとうございます。それなら部品数も減ってほぼワンチップになりますね。近いうちに試してみようと思います。
投稿 見習職人 | 2010/05/13 21:39
これって、出力のフィルタを取っ払えば周波数マーカーとして使えるのではないでしょうか。
FMラジオなどで、どれくらいの周波数まで高調波が出ているか確かめておくと、何かの時に役立つかもです。
投稿 ラジオペンチ | 2010/05/13 06:33