上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
--.--.-- -- l スポンサー広告 l top

一応(ほぼ?)完成しましたので、メイキングと動作を動画にしました。



ちょっと音が小さくてピンボケです。。。。


回路は変えていませんが、LCDの接続が間違っていたので修正したものをアップします。


M6959_lcd2_v2_2

(過去記事の回路図は赤字修正済みです。)


「スポンサードリンク」

style="display:block"
data-ad-client="ca-pub-0620260288102702"
data-ad-slot="9773401572"
data-ad-format="auto">


プログラムは以下の通りです。



「PIC12F_FMAIN_V2_1.c」をダウンロード  (2014/01/19 PM9 CONFIG BUG FIX)


「PIC12F_I2C_V2.c」をダウンロード


プログラムサイズと有効桁数の両方でかなり苦労しています。


周波数演算でINT型では演算途中でオーバフローするのが明らかなので始めは普通にLONG型を使おうとして一気にサイズオーバになりました。LONG用のライブラリをリンクするためですね。


仕方がないので基本INT型にして演算途中で桁あふれする所で100で割った数値とその余りに分割して別々に演算するようにしましたが、それでも不足して。。。その後はとにかく各所を切り詰めてなんとかコンパイル・リンクできるようになりました。現在のコードでROM使用率98.4%です。良く入ったものです(^^;



ご注意ですが、全くの現物合わせで作っていますので、モジュールの個体差に合わせて調整の必要があるはずです。ソース内のbandfreqmin[]、bandfreqmax[]の数値を各バンドごとに調整するように作ってありますので、ご参考にされる場合はそこをご調整ください。


今のソースでは私の使っているモジュールに合わせてFMとAMは調整してみましたが、SWは未調整です。いま聞いてみたSWで表示と実際の周波数をいくつかサンプルしてみました。


左が正しい周波数、右が表示です。


   ・ラジオ日経  3.925 -> 3.87MHz
   ・朝鮮の声   9.65  -> 9.60MHz
   ・台湾国際放送  11.605 -> 11.59MHz



数10KHz低めに出ています。係数の丸め込み誤差の影響かなと思いますが、素子の特性かもしれません。現物合わせなんでなんともいえないですね。


各バンドのbandfreqmax[]を少し大きめに調整すると合いそうですが、目安としては結構使えていますのでとりあえずここまでとしてしまいました。


各バンドで2点のサンプルがあればもっと適切に調整できますが放送局任せだと中々都合よくいきませんね、そのうちよい調整方法を思いついたらなんとかしようかと思います。




とりあえず今回はここまで。



それではまたです。




2014.01.19 Sun l ラジオ l コメント (2) トラックバック (0) l top

コメント

No title
kato様。丁寧なご連絡ありがとうございました。
ブログをFC2に引っ越した際のデータ破損かFC2サーバ内のデータ化けらさいのですが、pc内のバックアップも紛れていて対処できず申し訳ありませんでした。
ご自分で対処され、改善までされたとのこと感謝と敬服の限りです。

FC2ブログはテキストファイルをデータとしてアップロードするとなんらかの条件で文字化けするみたいなので、以後大きいファイルはzipで置こうかと思います。
2016.03.27 Sun l 見習職人. URL l 編集
No title
見習い職人さんこんにちは
破損ファイルが復旧困難とのことなので自力解決しました。
I2Cは後閑さんの8ピンPICの本を、表示プログラムはこちらを参考に完成しました。PICとMPLABとCをやり直したので非常に時間がかかりましたが楽しめました。正規化の部分が特に参考になりました。自分はAM・FM専用としたのでプログラムを簡易にしました。周波数の表示はAMで10KHzくらい安定しません。オシロで波形を見ましたが、こちらで出ていたものとは違うようです(ランダムに変動しているような感じ)
まだバラック状態なのでイーグルで基板を作ってケースに収めてやろうと思っています。LCDは16桁を使ったので局名も表示させました。
どうもありがとうございました。
2016.03.23 Wed l kato. URL l 編集

コメントの投稿












トラックバック

トラックバック URL
http://diyelec.blog.fc2.com/tb.php/156-bcbb7672
この記事にトラックバックする(FC2ブログユーザー)
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。