SeeeduinoでDSPラジオ(4) | お父にゃんの電子工作

お父にゃんの電子工作

暇なおじさんが、電子工作(主にラジオ製作)をして勝手な感想を書く

前回、Si4732とSeeeduino XIAOで試したラジオが調子よかったので、保存版にする。

保存版にする当たっては、SWを追加して主な機能には直接アクセスできるようにするのと、

プリセットしておいたバンドと周波数を呼び出せるように修正したい。

 

で、SWは自分でユニバーサル基板にタクトSWを付けて自作しようかと思っていたのだが、このようなものを発見したので、買ってみた。

キットなので、はんだ付け。

で、ようやく気が付いたのだが、端子が4つしかない。

C1かC2のどちらかをLOWにして、プルアップ付きの入力ポートでどちら側のSWが押されたかを検出しろ、ということらしい。

 

で、暫定回路図はこちら↓

D9,D10を出力ポート、D7,D8を入力ポートにする。

直列に1Kを入れてあるのは、SW2つを同時に押された時に、出力ポートどうしが短絡されてしまうケースが有るので、安全のために入れてある。CPU内部のプルアップ抵抗はかなり大きそうで、1KΩ抵抗でGNDに繋いでみると、ほぼ0Vになるので、影響は無いと思われ。

 

ブレッドボードでこんな感じ↓

 

次に、ソースコードをいじる。

しか〜し、他人の書いたコードなので、さっぱり構造がわからない。

おじさんはプログラミングが苦手なので、非常に苦労する。少しづつ紐解いて修正していく。

 

悪戦苦闘して、まぁ、なんとなく、それっぽく動くようになった。

プリセット選択中は”PRS”と表示して、プリセットした周波数も呼び出せるようになった↓

 

ちなみに、プリセットは以下のように定義してある

短波は、日本語放送が有る周波数からピックアップした。

Pre_set preset[] = {
    {Band_FM,  7970},
    {Band_FM,  8770},
    {Band_FM,  9170},
    {Band_MW2, 963},
    {Band_MW2, 1116},
    {Band_MW2, 1512},
    {Band_SW2, 6020},
    {Band_SW2, 6045},
    {Band_SW2, 6055},
    {Band_SW2, 6070},
    {Band_SW2, 6095},
    {Band_SW2, 6115},
    {Band_SW2, 6180},
    {Band_SW3, 7250},
    {Band_SW3, 7280},
    {Band_SW3, 7290},
    {Band_SW3, 7295},
    {Band_SW3, 7380},
    {Band_SW3, 7580},
    {Band_SW4, 9665},
    {Band_SW4, 9740},
    {Band_SW4, 9750},
    {Band_SW4, 9840},
    {Band_SW4, 9940},
    {Band_SW5, 11630},
    {Band_SW5, 11815},
    {Band_SW5, 11910},
    {Band_SW5, 11945},
    {Band_SW5, 12040},
    {Band_SW7, 15130}
};

 

 

にゃんとなく使えるようになってきたので、いつものようにパネルに部品を固定していく。

 

まずはフリーの2次元CADで取付穴を描いて、実寸で印刷して100円ショップで買ってきた仕切り板に貼る。これを目安に穴を開ける。

 

部品を取り付けて、同じく100円ショップで売っていた板に固定。

 

とりあえず、形になった

 

まだ、ソフトの使い勝手が今一つなので、もうちょっと改善したい。

RFアンプも、ノイズが増えるだけのような気がして、見直しが必要かも。

 

出来たら回路図とスケッチを公開しようと思っている。

 

 

「だいぶ出来たようだニャ」