ラジオ、ときどきラーメン2

ラジオ、ときどきラーメン2

PR

×

カレンダー

サイド自由欄




2014.01.28
XML
カテゴリ: 自作ラジオ
CA3K0011r.jpg

FM長野(79.7MHz)受信中。

LCDを当初の秋月電子のACM1602NIに入れ替えました。
このLCDはちょっと特殊でPIC内蔵で動作させているため応答が遅いため、今までの極小I2CLCDとは別の専用ライブラリをインクルードしなければいけません。
前回動作させた時のネットで参考にしたWebページのソフトを使って専用LCDライブラリを作成して入れ替えました。
メインからこのライブラリを呼び出すのにLCDにデータ表示する部分のコマンドを書き直すのはメンテも含めて非常に都合が悪いので、ライブラリーの関数名を前のI2CLCDのものと同じ名前に変更してメイン部は書き換えずに動作するようにしました。

あと、FMの周波数表示の文字化けの問題、数値を文字列に変換するプログラムを1からコーディングしたのですがバグっていたので書き直してどうにかまともに表示するようになりました。
PICのフラッシュメモリーが4Kワードなのでメモリー消費しすぎのSTDIO.hを使えないため自分で処理を書かなければなりません。(ネットでググって先達の遺産をパクったほうがよかった。。。。)
なので、もっとプログラムメモリーの大きいPICを使えば生産性ももっと上がるし楽なことはわかっているんですが、なんとなくもったいないんですよね。。。。。

CA3K0008R.jpg

短波は3200KHz~22MHz位のバンド幅があるので、早送りモードも必須です。
10MHZ以上で表示がおかしくなるのでまだ調整が必要です。というかFMは直したのですが、AM部の表示ルーチンは実は直していないので。。。。(表示は正常だったので。。。。)

CA3K0010R.jpg
NHK第一(540KHz)受信中。
FMとAMローカルとSWのRN1,2の周波数を登録してあるので、その周波数に合わせると局名がLCDに表示される仕様です。

おおよそできました。あとは電波強度の表示と短波の日本語放送の周波数でも登録できる用にしようかと思っています。
それと、LCDのバックライトが点灯しっぱなしなので、タイマーで消灯させようかと。

タイマーといえば、エンコーダを見に行くのにタイマー割り込みを使うのが一般的な手法のようですが、これ、それがうまく動作していないです。ってか使うのやめてる。なぜか動作しないから。
というか、ラジオでわざわざタイマー割り込みかけて定期的に(間欠で)見に行く必要があるのかと。選局したら、あとはMCUは仕事して無いんですよね。
なのでむしろ、Sleepさせても問題ないと思うので、あとはそれをたたき起こす割り込みを実装したほうが良いように思えます。
そこらへん、割り込み関係、まだ勉強不足で使えないので、まだまだ勉強しないといけない、と思う次第であります。。。。。。。。。

それと問題なのが、ケースどうしようかと。





お気に入りの記事を「いいね!」で応援しよう

最終更新日  2014.01.29 01:32:28
コメントを書く


【毎日開催】
15記事にいいね!で1ポイント
10秒滞在
いいね! -- / --
おめでとうございます!
ミッションを達成しました。
※「ポイントを獲得する」ボタンを押すと広告が表示されます。
x
X

© Rakuten Group, Inc.
X
Mobilize your Site
スマートフォン版を閲覧 | PC版を閲覧
Share by: