top of page

Módulo Sensor de Chave TTP224

Foto do escritor: Amanda NascimentoAmanda Nascimento

Praticamente todos os equipamentos eletrônicos terão pelo menos um botão para ligar. O botão é usado para permitir interação do usuário com a máquina, seja para a operação direta ou para realizar ajustes.


Os botões ou chaves como são chamados em eletrônica, funcionam como um contato que abre e fecha, sendo assim, uma chave possui dois valores, 0 ou 1, aberto ou fechado. Conectando uma chave a uma porta da placa Raspberry Pi Pico W podemos ler o valor 0 ou 1 da chave e assim tomar uma ação, como por exemplo acionar um LED.

O botão, quando pressionado, faz contato entre um lado e outro dele. Quando esse contato é fechado, essa corrente elétrica “entra” na placa e ela percebe que o botão foi pressionado. Ao escrevermos o programa, decidimos o que fazer com essa informação.




Ligando uma luminária com botão




Neste projeto, precisamos dos seguintes componentes:


  • Placa Raspberry Pi Pico W

  • Cabo USB

  • Protoboard 400 pontos

  • Jumper macho-macho

  • Jumper macho-fêmea

  • Anel de LED RGB

  • Sensor de Toque Capacitivo TTP224



Circuito



Script


# Codigo 6.2 - Ligando luminária com botão


# Bibliotecas necessárias para o código

import machine

import utime


# Importação das bibliotecas customizadas

from ws2812 import WS2812


# Declaração do Anel de LEDs

ws = WS2812(machine.Pin(28), 12)


# Declaração dos botões

botao_1 = machine.Pin(18, machine.Pin.IN)

botao_2 = machine.Pin(19, machine.Pin.IN)

botao_3 = machine.Pin(20, machine.Pin.IN)

botao_4 = machine.Pin(21, machine.Pin.IN)


# Declaração das variáveis do código

estado_botao_1 = 0

estado_botao_2 = 0

estado_botao_3 = 0

estado_botao_4 = 0


# Laço de execução

while True:


estado_botao_1 = botao_1.value()

estado_botao_2 = botao_2.value()

estado_botao_3 = botao_3.value()

estado_botao_4 = botao_4.value()


if estado_botao_1 == 1:

ws.write_all(0x444444) # Cor para o botão 1 (cinza escuro)

elif estado_botao_2 == 1:

ws.write_all(0x888888) # Cor para o botão 2 (cinza)

elif estado_botao_3 == 1:

ws.write_all(0xFF00FF) # Cor rosa para o botão 3 (pink)

elif estado_botao_4 == 1:

ws.write_all(0x000000) # Cor para o botão 4 (desligado)


utime.sleep(0.01)




Script v02


# Codigo 6.3 - Teclado de Cores


# Importacao das bibliotecas padrao

import machine

import utime


# Importacao das bibliotecas customizadas

from ws2812 import WS2812


# Declaracao do Anel de LEDs


ws = WS2812(machine.Pin(28), 12)


# Declaracao dos botoes


botao_1 = machine.Pin(18, machine.Pin.IN)

botao_2 = machine.Pin(19, machine.Pin.IN)

botao_3 = machine.Pin(20, machine.Pin.IN)

botao_4 = machine.Pin(21, machine.Pin.IN)


# Declaracao das variaveis


estado_botao_1 = 0

estado_botao_2 = 0

estado_botao_3 = 0

estado_botao_4 = 0

azul_ligado = False

branco_ligado = False

verde_ligado = False

vermelho_ligado = False


# Laco de execucao


while True:

estado_botao_1 = botao_1.value()

estado_botao_2 = botao_2.value()

estado_botao_3 = botao_3.value()

estado_botao_4 = botao_4.value()

if estado_botao_1 == 1:

if not vermelho_ligado:

ws.write_all(0xFF0000)

azul_ligado = False

branco_ligado = False

verde_ligado = False

vermelho_ligado = True

else:

ws.write_all(0x000000)

azul_ligado = False

branco_ligado = False

verde_ligado = False

vermelho_ligado = False

elif estado_botao_2 == 1:

if not verde_ligado:

ws.write_all(0x00FF00)

azul_ligado = False

branco_ligado = False

verde_ligado = True

vermelho_ligado = False

else:

ws.write_all(0x000000)

azul_ligado = False

branco_ligado = False

verde_ligado = False

vermelho_ligado = False

elif estado_botao_3 == 1:

if not azul_ligado:

ws.write_all(0x0000FF)

azul_ligado = True

branco_ligado = False

verde_ligado = False

vermelho_ligado = False

else:

ws.write_all(0x000000)

azul_ligado = False

branco_ligado = False

verde_ligado = False

vermelho_ligado = False

elif estado_botao_4 == 1:

if not branco_ligado:

ws.write_all(0xFFFFFF)

azul_ligado = False

branco_ligado = True

verde_ligado = False

vermelho_ligado = False

else:

ws.write_all(0x000000)

azul_ligado = False

branco_ligado = False

verde_ligado = False

vermelho_ligado = False

utime.sleep(0.2)

Posts recentes

Ver tudo

Stemização x Lemmatização

A fórmula para organizar o sistema e trazer resultados rápidos em dados, é adotar o Processamento de Linguagem Natural (PLN). Esse...

Tipos de variáveis

Variáveis em programação são usadas para armazenamento, em data science , as variáveis podem ser classificadas em diferentes tipos com...

© 2017-2025  Criado e desenvolvido por Amanda Nascimento

  • Discord
  • GitHub
  • youtube
  • LinkedIn Amanda
bottom of page