h_nari @ 熊本市のブログ。電子工作、プログラミング、ゲーム、TV、 政治、インターネットなどに日々の思い付きを、 うだうだ~と書いていきたい。
このブログにはコメント欄を設けておりません。 記事への御意見、ご質問はtwitter @h_nari宛に お願い致します。


アーカイブ


アマゾン・ベストセラー

メタ情報
RSS
Login

DSPラジオ

KT0913を使ってラジオを作っている。 いわゆるDSPラジオと言うやつだ。 母が寝るときに聞きたいのでラジオが欲しいというが、 市販のものには、いろいろ問題がある。 まず、操作が難しい。 誤ってバンド等を変えてしまうと 母は戻すことができない。 また、頻繁に置いた場所を忘れる。 そこで、機能を最小限に絞り、ベッドサイドに固定できる ラジオを自作しようと思ったわけだ。

DSPラジオのICが、いろいろ売っていることは知っていたが 具体的にどれを選べば良いのかわからないので 後閑哲也氏著「DSPラジオの製作ガイド」を購入。 この本で使用しているICと秋月電子やaitendoの在庫を 比較し、 KT0913に決定。 I2C操作のために HSES-LCD24Bを使用し実験を開始した。

試行錯誤

まず、I2Cでレジスタの読み出しを行う。 読み出したいレジスタのアドレス1byteを書き込んだ後、 セッションを終了せずに2byte読み出すことでできる。 それっぽい値を読み出すことができた。

つぎにレジスタへの書き込みだが、上手くいかない。 悩んだ挙句、水晶発振子まわりの半田付けをやりなおしたら なぜか書き込めるようになった。

それっぽい信号が受信できているようなのでスピーカーで聞きたい。 データシートを読むと、音声出力端子(ROUT, LOUT)は16Ωのスピーカーを 直接駆動できるとある。 試しに 秋月電子で買った 4Ωのスピーカ をつないだところ、発振し、まともに音が出ない。 10Ωの抵抗を介して接続したところ、ラジオっぽいノイズが 聞こえるようになった。

まだラジオ放送を受信できないので、 レジスタの内容等を表示させつつ 動作を観察する。意図せぬ周波数の移動がある。 いろいろ調べた結果、レジスタへの書込み読み出しの テスト用に GPIOFG(address 0x1d)に0~255の値を 1秒ごとに書き込んでいるのが原因であるとわかった。 このレジスタはGPIOで何を書き込んでも良いと勘違いしていたのだが、 じつは VOL, CH両端子の動作を設定するレジスタで、 書き換えることによりCH端子から信号を入力している 状態になっていたと考えられる。

FMのアンテナ線として10cm程度の電線を繋いでいたのだが、 これを30cm程度に延長し、いろんな方向で試したところ FM放送を受信できた。 AM放送は、バーアンテナが無かったので実験していない。 注文したものが今日届いた。

反省

KT0913の情報はネットに沢山あるので、 データシートをあまり読まずに試したのが 間違いだった。 結局、トラブル解決のため 熟読することになった。

今後

AMアンテナ、オーディオ・アンプの実験が済んだら 基板を起こしてコンパクトにまとめたい。 CPUもコンパクトにしたいがグラフィックLCDも使いたいので ライブラリ等を考えると ATMEGA328PあたりでArduinoを 動かすのが良さそう。

最後に

OpenAIで KT0913でラジオを自作する女の子のイラストを書いてみた。