Skip to content

Step Response / CapacitiveSensor

CapacitiveSensor


ref.Capacitive Sensing Library

Board

  • Attiny412

Eagle sch | brd

  • Cat

ref. Vector Halftone Maker

ref. “V” cutting tool width of cut calculator

  • BOM
Parts Val QTY
Attiny412 1 MCU
Res 1M 1 Capaciter_sensor
Cap 1uF 1
LED 1
Res 1k 1 Current Limit
UPDI 3POS 1 Pinheader 90D_SMD
FTDI 6POS 1 Pinheader 90D_SMD

Arduino sketch

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
int f=0;//フィルタ用変数

void setup(){
  //モニタリングのためシリアル通信開始
  Serial.swap(1); //.....RX1,TX1を使用
  Serial.begin(115200);
  //0番ピンをデジタル出力....send_pin
  pinMode(0,OUTPUT);
  //1番ピンをデジタル入力....receive_pin
  pinMode(1,INPUT);
  //LED点灯用に4番ピンをデジタル出力...LED_pin
  pinMode(4,OUTPUT);
}

void loop(){
  //静電容量変化量の変数を用意
  int a=0;
  //0番ピンをHIGHで出力
  digitalWrite(0, HIGH);
  //指が触れたとき1番ピンがHIGHになるまでをカウント
  while (digitalRead(1)!=HIGH){
    //カウントする
    a++;
  }
  delay(1);
  //0番ピンをLOWにする
  digitalWrite(0, LOW);

  //値を滑らかにするフィルタ式
  f+=(a-f)/2;
  //モニタリング:フィルタ値を出力
  Serial.println(f);

  //LED点灯のプログラム
  if(f>30){//値が30より大きい場合点灯
    digitalWrite(4,HIGH);
  }else{ //それ以外消灯
    digitalWrite(4,LOW);
  }  
}

next


Last update: July 20, 2021