La Circuit Playground Express y la Bluefruit tienen siete pads capacitivos alrededor del exterior de la tarjeta, etiquetados como A1 - A6 y TX. Aunque las imágenes son de una Circuit Playground Express, los pads táctiles se encuentran en el mismo lugar en una Bluefruit. Estos pads devuelve True si los tocas. ¡Los puedes usar como entradas para hacer todo tipo de cosas divertidas!

Ya que los pads son capacitivos, también les puedes conectar cables de lagarto y ¡un sin fin de cosas capacitivos, y tocarlos para activarlos! Por ejemplo, les puedes conectar un lado de un cable de lagarto y el otro lado hacia una manzana o un limón. O puedes conectar la otra parte en un vaso con agua. Luego tocas la fruta o el agua en el vaso. ¡Con esto activas el pad!

Agrega el siguiente código a tu code.py. Recuerda, si necesitas ayuda, revisa aquí.

"""This example prints to the serial console when you touch capacitive touch pad A1."""
from adafruit_circuitplayground import cp

while True:
    if cp.touch_A1:
        print("Touched pad A1")

Abra la consola serial. Ahora, toque el pad etiquetado en la Circuit Playground como A1. ¡Touched pad A1!

Vamos a ver el código. Primero, importamos a time y a cp.

Dentro de nuestro enlace, revisamos si el pad A1 es tocado con if cp.touch_A1:. Si lo es, imprimimos conprintel texto Touched pad A1 hacia la consola serial. Luego tenemos un  time.sleep(0.1) para dar un poco de pausa cuando imprimimos.

¡Bien! ¿Pero que pasa con el resto de los pads? Agrega el siguiente código en tu code.py.

"""This example prints to the serial console when you touch the capacitive touch pads."""
from adafruit_circuitplayground import cp

while True:
    if cp.touch_A1:
        print("Touched pad A1")
    if cp.touch_A2:
        print("Touched pad A2")
    if cp.touch_A3:
        print("Touched pad A3")
    if cp.touch_A4:
        print("Touched pad A4")
    if cp.touch_A5:
        print("Touched pad A5")
    if cp.touch_A6:
        print("Touched pad A6")
    if cp.touch_TX:
        print("Touched pad TX")

Ahora, veamos la consola serial y toque algunos de los pads. ¡Touched pad...!

El código comienza de la misma forma. Pero, hemos agregado un par de líneas para el toque de cada pad. Primero revisamos si (if) cada pad está siendo tocado, y si lo es, entonces imprimimos Touched pad y el número del pad que tocamos, hacia la consola serial.

Hemos incluido a todos los pads táctiles. ¡Ahora hagamos algo con ellos!

Tocar el Arco Iris

Agregue el siguiente código a tu code.py.

"""This example uses the capacitive touch pads on the Circuit Playground. They are located around
the outer edge of the board and are labeled A1-A6 and TX. (A0 is not a touch pad.) This example
lights up the nearest NeoPixel to that pad a different color of the rainbow!"""
import time
from adafruit_circuitplayground import cp

cp.pixels.brightness = 0.3

while True:
    if cp.touch_A1:
        print("Touched A1!")
        cp.pixels[6] = (255, 0, 0)
    if cp.touch_A2:
        print("Touched A2!")
        cp.pixels[8] = (210, 45, 0)
    if cp.touch_A3:
        print("Touched A3!")
        cp.pixels[9] = (155, 100, 0)
    if cp.touch_A4:
        print("Touched A4!")
        cp.pixels[0] = (0, 255, 0)
    if cp.touch_A5:
        print("Touched A5!")
        cp.pixels[1] = (0, 135, 125)
    if cp.touch_A6:
        print("Touched A6!")
        cp.pixels[3] = (0, 0, 255)
    if cp.touch_TX:
        print("Touched TX!")
        cp.pixels[4] = (100, 0, 155)
    time.sleep(0.1)

Ahora toque cada pad. ¡Vas a tener un LED en cada uno de los de colores del arco iris para cada pad!

Ahora vamos a ver el código. Importamos a time y a cp. Definimos el brillo de los LEDs a un 30%. Revisamos si (if) cada uno de los pads es tocado, y si lo es imprimimos (print) a la consola serial. Esta vez sin embargo, también prendemos un LED específico a cada pad con cp.pixels[#] = (r, g, b) donde # es el número del pixel y r, g, b son los valores de color. Nosotros no hemos incluído ningún código para que se apaguen, por lo que una vez que los prendas se van a quedar prendidos.

¡Ahora vamos a agregar más luz! Agrega el siguiente código a tu code.py.

"""This example uses the capacitive touch pads on the Circuit Playground. They are located around
the outer edge of the board and are labeled A1-A6 and TX. (A0 is not a touch pad.) This example
lights up all the NeoPixels a different color of the rainbow for each pad touched!"""
import time
from adafruit_circuitplayground import cp

cp.pixels.brightness = 0.3

while True:
    if cp.touch_A1:
        print("Touched A1!")
        cp.pixels.fill((255, 0, 0))
    if cp.touch_A2:
        print("Touched A2!")
        cp.pixels.fill((210, 45, 0))
    if cp.touch_A3:
        print("Touched A3!")
        cp.pixels.fill((155, 100, 0))
    if cp.touch_A4:
        print("Touched A4!")
        cp.pixels.fill((0, 255, 0))
    if cp.touch_A5:
        print("Touched A5!")
        cp.pixels.fill((0, 135, 125))
    if cp.touch_A6:
        print("Touched A6!")
        cp.pixels.fill((0, 0, 255))
    if cp.touch_TX:
        print("Touched TX!")
        cp.pixels.fill((100, 0, 155))
    time.sleep(0.1)

Toque cada pad. ¡Ahora has logrado que cada LED se prenda en un color del arco iris para cada uno de ellos!

El código es casi exáctamente el mismo, pero en lugar de cp.pixels[#], estamos usando cp.pixels.fill((r, g, b)) para prender todos los LEDS en lugar de solo uno.

Puedes cambiar los valores a lo que desees y crear tu arco iris personalizado. ¡Realiza la prueba!

This guide was first published on Jul 28, 2020. It was last updated on Jul 28, 2020.

This page (Toque capacitivo) was last updated on Oct 31, 2020.