小型FM受信モジュール Sparkfun WRL-08770
が手持ちであるので、これとPICマイコンを組み合わせて
小型FMラジオを設計製作せよ。
まずは、小型FM受信モジュールのデータシートを読み、仕様を確認した。
このFM受信モジュールは、BUSMODEへの入力信号で、2-Wire Interface か、
3-Wire Interface かが決まる。ということが分かった。
今回は、参考サイトに合わせて、2-Wire Interface で設計することにした。
2-Wire Interface では、マスターとスレイブ間でデータのやりとりを行う。
PICがマスター、FM受信モジュールがスレイブとして設計した。
データ入力の流れ
1.マスターからSTART命令を送る
。
2.マスターがスレイブのアドレスを書き込み、続けて、書き込みをするという1bit信号を送る。スレイブからの応答を受ける。
3.マスターが書き込むスレイブのレジスターアドレスを送る。スレイブからの応答を受ける。
4.マスターがレジスターに2byteのデータを入力完了後、STOP命令を送り、書き込み終了。
データ出力の流れ
1.マスターからSTART命令を送る。
2.マスターがスレイブのアドレスを書き込み、続けて、書き込みをするという1bit信号を送る。スレイブからの応答を受ける。
3.マスターが書き込むスレイブのレジスターアドレスを送る。スレイブからの応答を受ける。
4.マスターから再びSTART命令を送る。
5.マスターがもう1度スレイブのアドレスを書き込み、続けて、読み込みをするという1bit信号を送る。スレイブからの応答を受ける。
6.マスターがCLOCK信号をスレイブに送り、スレイブが関連したbitデータをDATA pinに出力する。マスターが1byteのデータごとに応答する。
7.スレイブから2byteのデータを読み込んだ後、マスターがSTOP命令を送り、読み込み終了。
I2C(アイスクエアシー)について
上記のデータの入出力に関係してI2Cについて調べた。
I2C(Inter-Integrated Circuit)はフィリップス社が提唱した
周辺デバイスとのシリアル通信の方式で、
主にEEPROMメモリICなどとの高速通信を実現する方式です。
I2Cは1つのマスターと複数のスレイブで構成できる。
SCLとSDAの線でデバイス間を接続している。この2本の線でデータの送受信を行う。
マスターがスレイブの制御を行う。
PICについて
I2Cに対応したPICの中で今回はPIC16F876A-I/SPを使用した。
以下に参考サイトにあるソースコードを参考に、PICにプログラムしたソースコードを示す。
結果
参考サイトを参考に、回路を組んで動作させてみたが動かなかった。
考察
動作しなかった原因として、
1.PICが故障している。
2.回路が間違っている。
3.プログラムが間違っている。
4.小型FM受信モジュールが故障している。
5.出力が小さすぎる。
6.出力するデバイスが故障している。
等が考えられる。
今後の課題
・PICの動作確認。
・回路構成の確認。
・プログラムのデバッグ。
・音声信号の増幅。