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.