Você está na página 1de 10

1 long lastms;//Váriavel para guardar o ultimo toque.

2
3 void setup()
4 {
5 Serial.begin(9600);//Inicia a comunicação Serial para visualização dos valores do Touch.
6 pinMode(LED_BUILTIN, OUTPUT);//Define o LED OnBoard como saída
7 touchAttachInterrupt(4, led, 20);//Atribui uma função (led) quando for detectado um valor menor de (20) ao
8 lastms = 0;//Inicializa a váriavel em 0.
9
10 //Para chegar a este valor usado (20), é necessário apenas ver os valores que aparece no Serial monitor,
11 //toque o fio e veja qual sera o novo valor. Ao tocar, a tendencia do valor é aproximar-se de 0.
12 }
13
14
15 void loop()
16 {
17 Serial.println(touchRead(4));//Mostra o valor do touch no monitor.
18 delay(100);
19 }
20
21 void led()//função que foi atribuida para o evento do touch.
22 {
23 if (millis() - lastms > 150)//Verifica se o ultimo toque faz mais de 150mS
24 {
25 digitalWrite(LED_BUILTIN, !digitalRead(LED_BUILTIN));//Inverte o estado do led.
26 lastms = millis();//Salva o ultimo tempo em que foi tocado.
27 }
28 }
1 touchAttachInterrupt(4, led, 20);

1 void led()//função que foi atribuida para o evento do touch.


2 {
3 if (millis() - lastms > 150)//Verifica se o ultimo toque faz mais de 150mS
4 {
5 digitalWrite(LED_BUILTIN, !digitalRead(LED_BUILTIN));//Inverte o estado do led.
6 lastms = millis();//Salva o ultimo tempo em que foi tocado.
7 }
8 }
1 touchRead(4)
1 void loop()
2 {
3 Serial.println(touchRead(4));//Mostra o valor do touch no monitor.
4 delay(100);
5
6 if(touchRead(4) < 20) //verifica se o valor lido é menor que 20
7 {
8 if (millis() - lastms > 150)//Verifica se o ultimo toque faz mais de 150mS
9 {
10 digitalWrite(LED_BUILTIN, !digitalRead(LED_BUILTIN));//Inverte o estado do led.
11 lastms = millis();//Salva o ultimo tempo em que foi tocado.
12 }
13 }
14 }

1 long lastms;//Váriavel para guardar o ultimo toque.


2
3 void setup()
4 {
5 Serial.begin(9600);//Inicia a comunicação Serial para visualização dos valores do Touch.
6 pinMode(LED_BUILTIN, OUTPUT);//Define o LED OnBoard como saída
7 lastms = 0;
8 }
9
10 void loop()
11 {
12 Serial.println(touchRead(4));//Mostra o valor do touch no monitor.
13 delay(100);
14
15 if(touchRead(4) < 20) //verifica se o valor lido é menor que 20
16 {
17 if (millis() - lastms > 150)//Verifica se o ultimo toque faz mais de 150mS
18 {
19 digitalWrite(LED_BUILTIN, !digitalRead(LED_BUILTIN));//Inverte o estado do led.
20 lastms = millis();//Salva o ultimo tempo em que foi tocado.
21 }
22 }
23 }
José Morais
Estudante de Engenharia da Computação pela USC, pretende se aprimorar e fazer a diferença nesta
imensa área da tecnologia. Apaixonado por IoT, sistemas embarcados, microcontroladores e
integração da computação nos mais diversos fins práticos e didáticos.