小型のMP3プレーヤーモジュールDFPLayerの使い方

コピペテックで技術書典Vol8向けに書いた「ESP32 と obnizOS で作る IoT 電子工作」で使ったMP3プレーヤーモジュールのDFPlayer Miniの使い方についてまとめてみました。

ピンアサインの確認

こちらは、DFPlayerのデータシート記載されているピンのラベル付きの写真です。

本記事で使用するピンは以下の通りです。

ピン 用途 備考
VCC 電源電圧 動作電圧は3.2から5.0Vに対応
RX UARTの入力信号端子
TX UARTの出力信号端子
SPK_1 スピーカー端子+ 3W以下
GND グランド
SPK_2 スピーカー端子- 3W以下
IO1 トリガーポート1 短く押すと前の曲、長く押すとボリュームを下げる
IO2 トリガーポート2 短く押すと次の曲、長く押すとボリュームを上げる
BUSY 再生ステータス LOWのときに再生中

“小型のMP3プレーヤーモジュールDFPLayerの使い方” の続きを読む

NeoPixelリングに使えるエフェクト実装例集

NeoPixelリングに使えそうなエフェクトをいろいろと自作してみました。
テープ状のLEDとリング上のLEDで向いているエフェクトがちょっと異なる気もしますが、今回はリング向けです。

サンプルは、Arduino UNOで動作を確認しています。

事前準備

Arduino IDEのセットアップして、ArduinoとNeoPixelリングを接続します。

NeoPixel制御用ライブラリのインストール

ライブラリはAdafruit_NeoPixelを使用します。
以下の手順で追加します。

  1. Arduino IDEのメニューから[ツール] > [ライブラリを管理…]を選択してライブラリマネージャを開きます。
  2. 「NeoPixel」で検索して「Adafruit NeoPixel by Adafruit」をインストールします。

Arduino UNOとNeoPixelリングを接続

以下の配線図に従ってArduino UNOとNeoPixelリングをつなぎます。

対応表

Arduino NeoPixelリング
DIGITAL 6 IN
5V V+
GND GND

Adafruit_NeoPixelの基本的な使い方

Adafruit_NeoPixelの使い方を以下のスケッチ例を使って説明します。

こちらは、GithubのREADMEにも載っている例simpleと同じです。

#include <Adafruit_NeoPixel.h>
#define PIN        6 // 信号用のピンを指定
#define NUMPIXELS 16 // LEDの数を指定

Adafruit_NeoPixel pixels(NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800);
#define DELAYVAL 500

void setup() {
  pixels.begin(); // NeoPixel出力ピンの初期化
}

void loop() {
  pixels.clear(); // すべてのLEDの色を0にセット

  for(int i=0; i<NUMPIXELS; i++) {
    pixels.setPixelColor(i, pixels.Color(0, 150, 0));
    pixels.show();
    delay(DELAYVAL);
  }
}

“NeoPixelリングに使えるエフェクト実装例集” の続きを読む