Mostrando postagens com marcador Programação. Mostrar todas as postagens
Mostrando postagens com marcador Programação. Mostrar todas as postagens

26 de agosto de 2023

ButtonControl - Controlando os cliques dos botões

Em diversos projetos precisamos agilizar o controle de cliques em push buttons e, então, fiz essa biblioteca para me auxiliar.

Com a ButtonControl é possível controlar cliques rápidos e também cliques duplos, triplos, longos e sequenciais. Além de retornar os tempos dos cliques em milissegundos.

22 de junho de 2023

Cipher Code - Cifrando Textos

 Vamos ver exemplos de técnicas para cifrar textos.

As Cifra de Vigenere, Cifra de Espelhamento, Cifra Matemática e a Cifra de César são algumas das quais apliquei na biblioteca CipherCode.

São técnicas para cifrar mensagens e envia-las de forma segura aos seus destinatários. E montar esses algoritmos são uma excelente maneira para estudos de lógica de programação.

10 de outubro de 2022

Teste de rede com PING no ESP32

Realizando testes de conexão com o comando Ping no ESP32.

Para monitorarmos a comunicação com outros equipamentos e realizarmos a verificação se a conexão com a internet e/ou rede interna estão ativas.

1 de abril de 2022

Cartão de memória Micro SD no Arduino

Salvar todas as informações em arquivo de log em cartão Micro SD é muito importante para determinados projetos.

Um arquivo mantendo o histórico de retorno de todos os sensores do circuito e outro com as informações dos atuadores são exemplos úteis.

1 de março de 2022

Relógio e Temperatura no Arduino - RTC DS3231

Quando é necessário que o projeto tenha um controle de data/hora, utilizamos o circuito RTC (Real-time clock).


O módulo DS3231 possui uma bateria externa para manter o relógio em atividade quando o circuito estiver desligado e um sensor de temperatura ambiente integrado.

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.

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 MillisTimerLib 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.

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.

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.

18 de janeiro de 2019

Gravador Arduino - Bootloader e Sketch

Como gravar o bootloader e também o sketch no microcontrolador Atmega328.


Uma forma prática de como gravar vários microcontroladores sem gastar muito tempo.

8 de dezembro de 2018

Watchdog Timer - Reset Automático do Circuito

Um sistema de Watchdog é responsável por reiniciar o circuito caso ocorra travamentos.


O watchdog funciona como um cronômetro e, ao atingir seu tempo limite é disparado o comando de reset do circuito.
Em projetos onde o circuito necessita estar operando por várias horas, a utilização do recurso de reset automático para prevenção de travamentos é essencial.

É possível o sistema de watchdog por hardware e via software.
Vamos ver como fazer por software no Arduino.

1 de dezembro de 2018

Gravar arquivo .hex no Arduino e ESP32 - Proteger Sketch

Uma forma de proteger seu código fonte é compartilhar o arquivo compilado.


Após desenvolver o programa, é possível compilar gerando um arquivo com a extensão .hex e gravá-lo no Arduino.
Para projetos profissionais é uma maneira de manter seu código fonte seguro, podendo enviar para gravação nas placas sem compartilhar o desenvolvimento da lógica de programação.

13 de outubro de 2018

SleepMode - Reduzindo o consumo de energia do Arduino

Como reduzir o consumo de energia do projeto e aproveitar as baterias por muito mais tempo.

 
Um Arduino Pro Mini ligado sem nenhuma carga, caiu de 15 mA para apenas 3 mA. Uma redução de 80% do consumo.