XIAO ESP32S3追加のGPIO使えるか?
小さめのモノを作るとき「Seeed Studio XIAO ESP32S3」が使いやすいかも、と思い購入
パワー管理システムが内蔵されているので、バッテリも接続することができる(別途、用意しなくてもいいので小型になる)
一方、GPIOが10個なのは少し心もとないときがあると感じている
裏面をみるとJTAG関連のMTCK、MTDO、MTDI、MTMSという4つのピンがある
現状、JTAGを使うことはなさそう
USB経由でないJTAGデバッグをしたいのだが、別途、ボードが必要という認識(USB OTGをアプリ側で使いたいので)
JTAG関連のピンをGPIOとして使えるとテストしてみた
以下はピン一覧から抜粋したもの
MTDIとMTMSは、D11とD12とも明記してあるので、デジタル入出力として使えそう
MTCKとMTDOは、特に明記がない
以下のようなコードを実行してデジタル出力を行ってみた
MTCK、MTDO、MTDI、MTMSのすべてのピンで電圧の変化が確認できた(0Vと3.3V)
デジタル出力なら使えそうだ、と取り急ぎ確認できた
#include <Arduino.h>
void setup() {
pinMode(LED_BUILTIN, OUTPUT);
pinMode(39, OUTPUT);
pinMode(40, OUTPUT);
pinMode(41, OUTPUT);
pinMode(42, OUTPUT);
Serial.begin(115200);
Serial.println("setup()");
}
void loop() {
Serial.println("loop()");
digitalWrite(LED_BUILTIN, HIGH);
digitalWrite(39, HIGH);
digitalWrite(40, HIGH);
digitalWrite(41, HIGH);
digitalWrite(42, HIGH);
delay(1000);
digitalWrite(LED_BUILTIN, LOW);
digitalWrite(39, LOW);
digitalWrite(40, LOW);
digitalWrite(41, LOW);
digitalWrite(42, LOW);
delay(1000);
}
現状、14ピンくらいあれば、ちょうどよさそうだと感じる
裏側のはんだ付けは、やりづらいが…
これ以上、ピン数が増えても、結局、配線の制約で、小さく収めるのが難しくなってくる
現状、プリント基板を作らず、導線で配線する想定なので、配線の制約がかなり出てしまう
設置場所の制約がない場合は、開発ボードの方が扱えるピン数が多いなど、開発しやすいとので、使い分けていきたい