LoginSignup
3
3

More than 1 year has passed since last update.

ダイソーのスピーカーにスペクトラム表示する

Last updated at Posted at 2021-06-29

はじめに

皆さんご存知のダイソー300円スピーカーに、スペクトラム表示機能を付けようという企画です。

<完成品>

iPhone7Sに繋げた。PCでも構わない。

ハード

主な部品は以下のようなもの。

スピーカー

ダイソーで売ってる 300円。USBスピーカーといっても、給電をUSBからするだけでオーディオ入力はステレオミニプラグ。

ディスプレイ

  • 0.91 インチ
  • I2C
  • OLED液晶
  • 解像度 128x32

38mmx12mmというとても小さいヤツです。

私のは以下で購入。AmazonPrimeで2個 863円。同じものが沢山出品されているので安いものを買いましょう!

MCU

今回は ATtiny85。Arduino化して使います。
ATtiny85の使い方は、ht-dekoさんのページを参考にしました。

購入は秋月にて 1個 ¥140。

その他部品

  • 抵抗 220Ω x2、10KΩ x2
  • コンデンサ 1uF x1
  • トランジスタ NPN(2SC1815GR) x1
  • ワイヤー、ユニバーサル基板など

回路図

image.png

ソフト(環境)

ArduinoIDE 1.8.13
Windows10(開発作業用)

ライブラリ

以下、先人たちの功績に感謝し使用させて頂きました。

上記コードはそのまま使用できなかったので、少し改変しました。

ソース

メインロジックは attiny85-spectrum を使用しました。
描画ロジックは attiny85-spectrum では遅延が大きかったため、SASAPEAさんの SSD1306 Libraryを使用しましたが、それも一部改変しました。
FFT処理は Fix_fft を使用しました。
ソースは以下に置いておきます。

おわりに

今回は ATtiny85 にこだわって作りました。もっと上位のMCUの方が簡単に作れます。スピーカー内部にももう少し余裕があるのでATmega328Pでも可能だと思います。何よりライブラリ探しに苦労せずにできます。ATtiny85はプログラム用メモリが小さいのでFFTとディスプレイ描画はかなり厳しいです。実際に動いている所を載せておきます。

Special Thanks!!!

3
3
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
3
3