みなさんこんにちは、佐々木です。
今回は「ISP1807搭載BLEマルチセンサーボード」の使いかたをあらためてご紹介します。Arduino IDE編ということでArduino IDEを使ってサンプルスケッチを動かす手順を解説します。ISP1807搭載BLEマルチセンサーボードについて詳しく知りたい方はこちらの記事を参照してください!
準備する
まずは写真のようにISP1807搭載BLEマルチセンサーボードとパソコンをマイクロUSBケーブルで接続してください。
Arduino IDEのインストール
次のURLからArduino IDEをダウンロードしインストールしてください。
https://www.arduino.cc/en/software
ボードサポートパッケージのインストール
Arduino IDEを起動しISP1807搭載BLEマルチセンサーボードのボードサポートパッケージ(スケッチのビルドに必要なツールが一式入っています)をインストールします。
Arduino IDEのメニューからファイル > 環境設定
を選び追加のボードマネージャのURL
に次のURLを入力してください。
https://adafruit.github.io/arduino-board-index/package_adafruit_index.json https://raw.githubusercontent.com/SWITCHSCIENCE/Arduino_Board_Package/master/package_Switch_Science_index.json
Arduino IDEのメニューからツール > ボード > ボードマネージャ
を選び、次のボードをインストールしてください。インストールには少し時間がかかります。
Adafruit nRF52 Switch Science nRF52 Boards
サンプルスケッチを書き込む
ボタンを押すとLEDが光るスケッチを書き込んでみましょう。商品ページからサンプルスケッチ(Arduino)をダウンロードしてButtonLED.ino
を開くか、下記のスケッチを新しいスケッチに張り付けてください。
const int ledPin1 = 4;
const int ledPin2 = 7;
const int buttonPin1 = 31;
const int buttonPin2 = 12;
void setup() {
pinMode(ledPin1, OUTPUT);
pinMode(ledPin2, OUTPUT);
pinMode(buttonPin1, INPUT);
pinMode(buttonPin2, INPUT);
}
int buttonState;
void loop() {
buttonState = digitalRead(buttonPin1);
if (buttonState == LOW) {
// turn LED on:
digitalWrite(ledPin1, LOW);
} else {
// turn LED off:
digitalWrite(ledPin1, HIGH);
}
buttonState = digitalRead(buttonPin2);
if (buttonState == LOW) {
// turn LED on:
digitalWrite(ledPin2, LOW);
} else {
// turn LED off:
digitalWrite(ledPin2, HIGH);
}
}
Arduino IDEのメニューからボードの種類・シリアルポートを選んでマイコンボードに書き込む
ボタンを押してください。
ツール > ボード > Switch Science nRF52 Boards > Switch Science BLE-SS dev board Multi Sensor
ツール > シリアルポート > COMxx または /dev/cu.xxxx
ボードへの書き込みが完了しました。
というメッセージが表示されたら書き込み完了です。ボタン1(S1)またボタン2(S2)を押してLEDが点灯するか確認してみてください。
トラブルシューティング
うまく書き込めない場合、ISP1807搭載BLEマルチセンサーボードをブートローダーモードで起動してから書き込みを行ってください。S2ボタンを押しながらISP1807搭載BLEマルチセンサーボードをパソコンに接続するとブートローダーモードで起動します。
その他のスケッチ
商品ページのサンプルスケッチ(Arduino)には、ButtonLED.ino
以外にも次のスケッチが含まれています。試してみてください。
- 9axis_Sensor(加速度・ジャイロ・磁力をシリアルモニタに出力するスケッチ)
- Digital_Humidity_Sensor(湿度と温度をシリアルモニタに出力するスケッチ)
- LowCurrentMode(省電力制御を行うスケッチ)
- Pressure_Sensor(気圧と温度をシリアルモニタに出力するスケッチ)
- Star_Wars_on_a_Buzzer(ベイダー興のテーマを奏でるスケッチ)
次回CircuitPython編をご紹介いたします。