30 de setembro de 2021

Nervo Teste

O clássico jogo Nervo Teste é para testar a coordenação motora e a habilidade de concentração.

O objetivo é passar a argola pelo arame até a outra extremidade. A cada contato o alarme é acionado e a falta é registrada na barra de leds. Com três faltas o jogador é eliminado!

Um jogo interessante e divertido para feira de ciências.

4 de julho de 2021

Cifra de César

Uma das técnicas mais antigas para cifrar mensagens, utilizada por Júlio César durante o império Romano, para se comunicar com suas tropas durante as guerras.

A técnica de substituição das letras que chamamos de Cifra de César.

3 de junho de 2021

Gravar Arquivos no ESP32 - SPIFFS

SPI Flash File System é o sistema de arquivos do ESP32. É possível acessar a memória flash para ler, gravar, renomear e excluir arquivos.

Um sistema de monitoramento gerando arquivos de log em txt, o html de uma página, ou um arquivo com parâmetros de configurações são bons exemplos para uso.

1 de maio de 2021

Calculadora de Cores de Resistores

O valor de um resistor é indicado através de um código cores. Vamos criar uma calculadora onde poderemos informar o valor do resistor e verificarmos quais são as suas cores.

Esse é um bom exemplo para estudos de lógica de programação.
Trabalharemos com os tipos de variáveis String, long e int, e utilizaremos substring e conversão de variáveis.

25 de abril de 2021

Data e Hora no ESP32 - NTP

O NTP (Network Time Protocol) é o protocolo que permite a sincronização do relógio do circuito com a internet. Mantendo a data e a hora sempre atualizadas em tempo real.


Um circuito com a data e a hora sempre atualizadas, principalmente para projetos IoT (Internet das Coisas), é muito importante.

2 de março de 2021

Validador de CPF

Validar números de CPF utilizando um Arduino UNO.


O algoritmo de validação de números de CPF é interessante para trabalharmos o aprendizado em lógica de programação.

Vamos trabalhar essa lógica no Arduino UNO, montando um validador com display LCD e um teclado numérico.

20 de novembro de 2020

Luz Rítmica RGB

As luzes piscam e alteram as cores ao som da música!

10 de julho de 2020

Semáforo com botão para pedestre

Como realmente funciona o botão de pedestre nos semáforos e como fazer funcionar sem utilizar a função delay no projeto.


Existem algumas lógicas que podem ser aplicadas aos semáforos com botão para o pedestre e, as mais comuns são:
  • Sinal verde para veículos possui o tempo programado para determinados horários e, quando o botão de pedestre é pressionado, o tempo é reduzido.
  • Sinal verde para veículos sempre ativo até que o botão de pedestre seja pressionado.

8 de junho de 2020

Delay com Millis() - Multitarefas

Quando é necessário executarmos várias tarefas ao mesmo tempo, precisamos limitar a utilização do delay() no código fonte, e utilizarmos mais a função millis().


A função millis() retorna o tempo que o microcontrolador está ligado, em milissegundos.
Guardando o valor de tempo que o processo foi executado e comparando com o valor de tempo atual, poderemos calcular quando deve ser executado novamente.

Para facilitar a lógica, fiz a biblioteca MillisTimer que faz o gerenciamento das variáveis para cada processo que for utilizar.

17 de maio de 2020

Comunicação Python com Arduino

Através da comunicação serial, o Arduino troca informações com um programa Python no computador.


O Python pode receber informações de sensores conectados ao Arduino e enviar comandos para serem executados.

8 de maio de 2020

Saídas PWM no ESP32 - Biblioteca

Utilizar as saídas PWM no ESP32 é um pouco diferente do Arduino.
É necessário configurar os canais, a resolução e a frequência que será utilizada por cada pino.


Para facilitar o uso, fiz a biblioteca PWMOutESP32 que permite que o uso seja simplificado.
Utilizando a biblioteca para controlar as saídas PWM, usa-se somente o analogWrite() como é no Arduino.

30 de abril de 2020

Trava Analógica

Como nos cofres mecânicos, é necessário selecionar a combinação dos números girando o disco.


O projeto faz a simulação do "38 para direita, 21 para esquerda" como nos cofres de discos.

A combinação fica armazenada na memória EEPROM e é possível utilizar uma senha entre 1 e 5 números, sendo cada um entre 01 e 99.
No vídeo, a trava é aberta com a combinação 38 - 21 - 54.

25 de abril de 2020

Sequencial de LEDs com Fade

Com controle de brilho e estruturas de repetições vamos acionar seis leds em um sequencial.


Utilizamos a modulação por largura de pulso, o PWM (Pulse-Width Modulation), para controlar a intensidade dos leds.

22 de abril de 2020

BadUSB - Digispark Attiny85

Veremos um exemplo de ataque por hardware e como pode ser perigoso.


O BadUSB é um dispositivo que ao ser conectado na porta USB do computador já efetua o ataque.
Não é necessário que o usuário execute e nem clique em nada.

7 de dezembro de 2019

Relógio Binário de Mesa

Vamos visualizar as horas em um relógio binário.


As horas são exibidas na primeira linha de leds, os minutos na linha do centro e os segundos na linha de baixo.

24 de agosto de 2019

Watchdog Timer - ESP32

Um sistema de Watchdog é responsável por reiniciar o circuito caso ocorra travamentos.
Vamos ver como configurá-lo no ESP32.


Na postagem Watchdog Timer - Reset Automático do Circuito foi detalhado melhor como funciona um watchdog e, utilizamos um Arduino.

Nesse exemplo veremos como utilizar no ESP32.

3 de agosto de 2019

WiFi Scan com ESP32 - Buscando e conectando em redes abertas

O circuito permanece verificando as redes WiFi disponíveis e, quando encontrar redes abertas efetua a conexão na que estiver com o melhor sinal.


Quando já conectado, continua verificando se existem redes abertas com um melhor sinal e, caso exista, faz a conexão na nova rede.

9 de julho de 2019

Loterias

Vamos ver o funcionamento da função random() sorteando números da loteria.

16 de fevereiro de 2019

Dado Eletrônico com Attiny85

Pequeno projeto com o microcontrolador Attiny85.


3 de fevereiro de 2019

Zumbido Secreto

Um zumbido secreto começa quando as luzes se apagam.