お気に入りのSDR製作 「Visual C#をスタートする」


 写真はVisual C#をスタートするに際しはじめの一歩の参考書。

2018.4.11

はじめに
 「お気に入りのSDR」をソフトも含めて自作しようとすると、PC側のソフト開発が必須です。
 Power SDRやSDR Studyなどソースが公開されているSDRソフトは、Visual C#で書かれているので、C#は全くの初心者ですが、C#を少しづつ取り組んでいきます。

はじめの一歩
 Visual C#を始めるに際して、適等な入門書を準備します。
 写真は中古本で購入した「Visual C# 2010入門」、Visual C# 2010 Expressのインストールから簡単なゲーム開発を例に、画面フォームの作成方法から、画像の簡単貼り付けまでの プログラムの作成方法が記載されています。内容的には、やや説明不足感もありますが、とりあえず「ボタンをクリックすると何か表示をする」レベルの事ができるようになります。
 もう一冊は「目指せプログラマー、プログラミング超入門」、こちらは用語の説明から、リアルタイムに動くゲーム開発を例に、プログラムの組み方など比較的実践向きの内容になっています。 特に、リアルタイムの処理は、SDRのFFT画面の作成や、Sメーター作成に参考になりそうです。
 この手の入門書の多くは内容が重複している部分が多いので、C#とタイトルにつく本を一通り図書館から借りた本を参考にします。  

画面を作ってみる
 まずは、SDRの画面を作成してみます。無線機のパネルをデザインするのと同様、楽しみな工程ですがまだ複雑なデザインは出来ないので、出来るところから。
 Visual Studio C#ではFormを作成し、その中にボタンやTXT.BOXなどのコントロール類を貼り付けていけば、基本的なソースコードは自動的に 作成されていくので、画面をつくる作業はほとんどコードを記述する必要がなく、当局のような初心者にも作成できます。

MODE SWの配置 LSB/USB等の切り替えSWを想定して、MODE SWをデザインしてみました。Visual C#のButtonコントロールはモーメンタリーSWなので、 ここではRadio Bottonコントロールを使い、Mode SWとしてグループ化すれば、どれか一つ選択すれば他のSWがOFFに連動するSWが出来ます。
 ボタンの形状はプロパティのAppearanceをButtonに変更します。

  Filter SWの配置 Mode SWに連動してFilterの選択を連動させます。Filterの種類はこの後もう少し増やしますが、とりあえず基本的なCW/SSB/AM用としました。
 Mode SWと独立してFilterを選択することもできます。

  AGC SWの配置 AGC応答の切り替えSWを想定して、SWを押す毎にAGC OFF > AGC SLOW > AGC MID > AGC FAST と切り替わるSWを配置します。

   SDR Form画面 demo(動画 YOUTUBEへ)切り替えの様子を動画にしてみました。

  ソフトの説明
ソースリストの関連部分のみを抜粋したものを参考まで

   今後の進め方
 この後Sメーターの表示にTRY中。PictureBoxにSメーターの図を貼り付け、メーター指針の位置をSDRStudyのFFT画面のレベルに応じて動かそうとしていますが、 今の実力ではハードルが高く、壁です。

S Meter作成編へ

   Top Menu