ATOM Liteにタッチセンサつける -3-

 もう1つのセンサも到着。11/11の週だったけど、日付は忘れた。

 タッチセンサごときは、銅線とかコインとかアルミホイルで十分できるのだけど、こういうパーツを使うと、キャリブレーションとかチャタリング対策を自分でしなくていいのが楽だよね。

 100円弱のほうの基板。袋は黒と白の二重になっているのは、配送の都合かな。

 導電性の袋はステープラーで留められている。

 袋を開ける。

 想定よりサイズが大きいかな?

 こちらは、裏にピンも出ているし、GROVEっぽい端子も付いているので、価格は4倍近くするけど、使いやすい感じ。

 入力は3.3-5V入れていいみたいだ。裏のピンは、同じ配置なので、前回の基板を外して、そのまま接続してみる。

 接続してみると、ATOM Liteの赤LEDが点灯する。タッチすると消える。この基板では、デフォルトでSはHIGHのようだ。タッチするとLOWに変わる感じ。

 基板側にLEDは付いていない。LEDの1個、抵抗の1個を省略するというのは、22円センサと比べると、ちょっとケチな感じだ。

 こちらの感度は、2mmくらいの空中でもセンサは反応する。絶縁の樹脂シートをはさんでも反応は変わらない感じ。基板の面でも裏でも反応は同じ感じ。

 検索しても、GROVE互換だと書かれているスペックは出てくるのだけど、ピン配置については記載がない。困ったな。実機で調べるしかないかw

 GROVEコネクタというのは嘘ではないようで、M5Stack製品添付のケーブルはちゃんと差し込める。

 テスタをあてて確認すると、裏のピンとは逆になっている感じ。GROVEケーブルを差し込んだ状態で、VCCとGNDは合っている。白が信号に接続されていて、黄色は未配線。

 GROVEケーブルを接続して、スケッチのセンサピンと、タッチしたときに点灯するように変更して書き込み。

 #include <M5Atom.h>

 const int touchPin = 32;

 const int ledPin = 22;

 void setup() {

 M5.begin(true, false, true);

 pinMode(touchPin, INPUT);

 pinMode(ledPin, OUTPUT);

 digitalWrite(ledPin, LOW);

 }

 void loop() {

 int touchState = digitalRead(touchPin);

 if (touchState == LOW) {

 digitalWrite(ledPin, HIGH);

 M5.dis.drawpix(0, CRGB::Red);

 } else {

 digitalWrite(ledPin, HIGH);

 M5.dis.drawpix(0, CRGB::Black);

 }

 delay(10);

 }

 普通に動くね。

 ちょっと反応が良すぎなのが困るかな。ケースに入れてもダメかも。

 コンデンサを付け替えるとか、二階建てにするとかしたら感度調整できるだろうか?

 面白いのは基板のエッジは、ちゃんと接触しないと点灯しない。

 GROVE付きで、最初の基板くらいの確実な動作だとよかったのだけど、帯に短し襷に流し。


オリジナル投稿:
ATOM Liteにタッチセンサつける -3-|kinneko|pixivFANBOX
https://kinneko.fanbox.cc/posts/8902832