久々の投稿です。
HT008 23.5-6000MHz Signal Generator (MAX2871)というモジュールを見つけました。
HT008は、出力周波数範囲が広く、出力レベルを可変でき、0.96インチサイズの160x80ドットのTFT COLOR LCDとキーパッドが搭載されています。価格もまずまずの優れものです。しかしながら、ユーザインタフェースは、CUIで操作性があまり良くありませんでした。
そこで、GUI化と今後の活用範囲の自由度を上げられるようにファームウェアを自作することにしました。下記は、新ファームウェアを搭載後の画像です
以前は、開発元でドキュメント、ファームウェアがダウンロードできていたみたいですが、現在は、アクセスできないようです。
まず、このHT008の回路図を起こしました。
次にモジュールの主要部品MCU(GD32F303CBT6)、RF Synthesizer(MAX2871)、6-Bit Attenuator(HMC624A)、TFT COLOR LCD(ST7735S)のデータシートを確認しました。開発ツールGD32EmbeddedBuilderをダウンロードし、利用可能なライブラリ等を活用して、オリジナルより使いやすいファームウェアを作成しました。
実行バイナリHT008.binの書き込みには、「GD32 All In One Programmer」を使用します。まず、GD32F303上のBootloaderに「Connect」させるため、「DTR low level reset, RTS low level into BL」を選択します。
新しいファームウェアに書き換えるには、書き込み済のファームウェアのプロテクトを外すため、「Remove Protection」を選択しすると、オリジナルのファームウェアが消去されます。次に、新しいファームウェアを書き込みます。書き換えたら、115,200bpsで、CRLF改行コードのターミナル(TeraTerm等)を接続後、中央のキーを押すと下記の画面とヘルプメッセージがターミナルに表示されます。ヘルプメッセージを参考に操作してください。
HT008のCH1出力レベル設定値は方形波での値になります。方形波の基本波成分は、レジスタの設定値は、CH1では、約-3dB、CH2では、約-6dBレベルが下がります。また、出力波形はサイン波ではなく方形波ですので、高調波を含んでいるため用途にも注意ください。
CH1 Output Level |
||
Buffer mode: Single-ended output + 50ohm |
||
Register setting (dBm) |
Nominal fundamental component (dBm) |
Measured fundamental component (dBm) |
5 |
2.0 |
1.4 |
2 |
-1.0 |
-1.9 |
-1 |
-4.0 |
-4.4 |
-4 |
-7.0 |
-7.4 |
CH2 Output Level |
||
Buffer mode: Single-ended output + 50ohm |
||
Register setting (dBm) |
Nominal fundamental component (dBm, /w
0dB Attenuator) |
Measured fundamental component (dBm, /w
0dB Attenuator) |
5 |
-1.0 |
-0.6 |
2 |
-4.0 |
-3.5 |
-1 |
-7.0 |
-6.4 |
-4 |
-10.0 |
-9.5 |
Buffer mode: Single-ended output + 50ohm |
||
Register setting (dBm) |
Nominal fundamental component (dBm, /w
-31.5dB Attenuator) |
Measured fundamental component (dBm, /w
-31.5dB Attenuator) |
5 |
-32.5 |
-31.4 |
2 |
-35.5 |
-34.0 |
-1 |
-38.5 |
-37.0 |
-4 |
-41.5 |
-39.7 |
ソースコード及びプロジェクトファイル一式を公開しますので、各々のライセンス条件に従い、利用をお願いします。必要に応じ改良等にチャレンジしてください。