外部端子を使う
外部I/Oには、P0~P16、P19、P20の合計19本が利用できます。Arduinoからのポート番号は、Pxxの番号と一致しています。
例) P9端子は、Arduinoのポート9番
ここまでArduino環境下で、内部LEDマトリックス、ボタン、加速度・磁気センサ、タッチセンサ、外部I/Oの動作確認をしました。
注意が必要なのは、LEDマトリックスを表示させているときには、P3、P4、P6、P7、P10が利用できません。また、内部のボタンA、Bを使っているときにも、P5、P11は注意が必要です。
ライブラリ「MicrobitV2-HHS」
標準の関数で「tone」命令が無いので音は出せないと思っていましたが、ライブラリを見つけました。「MicrobitV2-HHS」というライブラリです。早速、ライブラリを追加(ライブラリの管理から追加)してサンプルプログラムを実行しました。スーパーマリオブラザーズのメロディもありました。
そこから、音を出力する「tone」命令に関わる部分のみを示します。
#include "Tone.h"
// On Microbit V2 the speaker is on pin 27
#define SPEAKER 27
void setup() {
pinMode(SPEAKER, OUTPUT);
}
void loop() {
tone(SPEAKER, 880, 100 );
delay(100);
noTone(SPEAKER);
delay(100);
}
このプログラムで880Hzの音が鳴り続けます。命令の使い方は、Arduinoのtone命令と同じです。ArduinoIDEのメリットであるライブラリが豊富ということはありがたいものです。
前回、加速度センサでI2Cの接続先の変更について記載しましたが、このライブラリに加速度センサを使うサンプルがあり、動作できました。
このライブラリのサンプルを見ると、サーボモータのサンプルがありました。これでサーボモータも動くのかもしれません。
ここまでの動作確認結果
動作しないのは、ロゴマークのタッチセンサです。
ここまでで、未確認は、マイク、BLEです。

0 件のコメント:
コメントを投稿