M5stamp C3Uでプログラミング
以前よりM5stick C Plusを用いてGrove端末からセンサ情報取得やBLE通信を用いて他マイコンへの通信を行ってきましたが、この2機能のみに限定してサイズダウンと低価格化検討のためM5stamp C3Uへの置き換えを検討します。
はんだ付け
- M5stamp C3Uへのはんだ付け
私が購入したものは「M5stamp C3U MATE」のためピンヘッダもしくはピンソケットのはんだ付けが必要となります。今回はピンヘッダをはんだ付けしました。
|
下写真のようにはんだ付けできました。あまりはんだを盛りすぎるとカバーと干渉するため注意が必要です。
ここでやらかしてしまったので記録します。
カバーを取り付ける際にM5stamp C3Uの上側を後からはめ込むようにすると下写真のようにアンテナと干渉し奥に曲がってしまいます。カバーを取り付ける際は上側のボッチを先に引っ掛けてからボルト止めしたほうがいいです。
- 5V出力昇圧DCDCコンバーターへのはんだ付け
M5stamp C3Uは内蔵USBからでも電力供給可能ですが、将来的に乾電池を使用して遠隔使用も行いたかったため、これを機に一緒にはんだ付けしました。充電式の単3乾電池を4本使用しましたが、私が持っているものは1本あたり1.2Vの出力電圧なので4本で4.8VではM5stamp C3Uの必要電圧5Vに足りません。また乾電池では時間経過で電圧も低下してしまうため、昇圧DCDCコンバーター回路を用いて5Vを作りだしました。私が使用したものは以下のものです。
メーカー:秋月電子通商
名称 :XCL103使用5V出力昇圧DCDCコンバーターキット
型番 :AE-XCL103-5V0
これに単3乾電池4本用の電池BOXを接続しました。
使用する乾電池が1.5V1本だけなら、こちらも使用できそうです。
|
Arduino IDEのM5stamp C3U環境構築
- ライブラリマネージャー
「ツール」→「ライブラリを管理」からライブラリマネージャーを表示し、「Adafruit NeoPixel」と検索して、「Adafruit NeoPixel by Adafruit」というライブラリをインストールします。
- ボード選択
Arduino IDEのボード選択画面から「M5stamp C3」と検索、そして接続しているCOMポートを選択します。私の場合はポート5を選択していました。
まずはLチカプログラム
動作確認も含めてまずは簡単なLチカプログラムを行いました。
#include <Adafruit_NeoPixel.h>
#define LED_PIN 2
Adafruit_NeoPixel pixels(1, LED_PIN, NEO_GRB + NEO_KHZ800);
void setup() {
pixels.begin();
}
void loop() {
pixels.setPixelColor(0, pixels.Color(0, 255, 255)); //Colorメソッド内の引数の順番は赤、緑、青
pixels.show();
delay(1 * 1000);
pixels.setPixelColor(0, pixels.Color(0, 0, 0)); //明るさを3原色全て0にして消灯
pixels.show();
delay(1 * 1000);
}
プログラムを書き込み際に注意が必要です。
M5stamp C3UをそのままUSBケーブルに接続しただけでは書き込めません。以下の2つの手段から書き込みモードでUSBに接続する必要があります。
- 中央のボタンを押しながらUSBケーブルを接続
- (すでにUSBケーブルを接続していた場合)中央のボタンを押しながらリセットボタンを1回押す
回路
M5stamp C3Uとそれに電力を供給する昇圧回路は下写真のようになりました。
元の電池ボックスからの電圧は4.96Vで、昇圧回路を通しての出力電圧は5.01Vくらいでした。
これをM5stamp C3Uの5VとGNDに接続し電源供給します。
結果
プログラム通りM5stamp C3U中央に内蔵されているLEDが点滅しました。昇圧回路からの電力供給でも動作確認できましたので、次はUARTポートを使用したプログラムに挑戦したいと思います。