1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

DSP FMラジオ RDA5807FP+ATTINY85+AQM0802A その1 全体構成

Last updated at Posted at 2019-10-22

はじめに

  • DSPラジオのモジュールやCHIPをいくつかArduinoで動かしてきたが、まとめとして、乾電池駆動の箱型ラジオを作成してみた。
  • 合わせて、割込み処理や、LCDへの出力なども勉強してみた。
  • いろいろ試行錯誤したのですが、最終的には以下のような形になりました。

全体的なつくり

  • あまり複雑なものは作れないので、機能を絞って比較的シンプルな形にしました。
  • 乾電池駆動。全体を3.3Vで統一。
  • スピーカー一つでの出力。ボリューム付き。
  • FMのみ。
  • LCD付き。
  • SEEK機能での選局
  • 手動で0.1MHzずつの調整。
    radio_omote.jpg
    radio_ura.jpg

主として使用したパーツ

  • FMラジオCHIP: RDA5807FP
    • RDA5807シリーズの中から、FPを選択。割込み機能用のGPIOピンがあり、DIP化の際のはんだ付けが容易なため。
    • Aliexpressで調達。10個で200円(送料込み)。安すぎ。
  • マイコン:ATTINY85-20PU
    • ATMEGA328を使っても良かったが、勉強もかねてATTINY85を選択。
    • プログラムメモリは足りたが、割込み用のピンが少なく苦労した。
  • LCD:AQM0802A-RN-GBW
    • 秋月電子で調達。I2C接続の小型LCD。ピッチ変換基板は自作。
    • 一般的なLCD1602Aは、大きさ、電圧の関係で使いにくかった。
  • オーディオアンプ: PAM8403利用のモジュール。
    • AMAZONで安価で売っているもの。

おおまかな制御方法

  • SEEK機能での選局:選局が完了すると、5807FPのGPIOピンからトリガがでる。
    • このトリガでATTINY85に割込みをかけて、周波数、RSSIをLCDに出力。
  • SEEK機能の再開:タクトスイッチでSEEKを再開させる。
    • タクトスイッチの状態をLOOPで読んで、SEEK機能を呼び出す。
  • 手動で+0.1MHZ:タクトスイッチで0.1MHZずつ周波数を増やす。
    • タクトスイッチの状態をLOOPで読んで、周波数セット機能を呼び出す。

おまけ

  • 本記事はここまで。各パーツ、各機能にわけて投稿予定です。
1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?