terça-feira, 22 de julho de 2025

Jogo da Tabuada

🎯 Mestre da Multiplicação

🎯 Mestre da Multiplicação

Aprenda a tabuada de forma divertida!

Acertos

0

Erros

0
🎯

Perguntas

1

Quanto é:

0 × 0
= ?

Escolha a resposta correta:

Nível: 1 - Iniciante Pergunta: 1/10
Progresso 0%

domingo, 3 de novembro de 2024

Testando um Display TFT 3.5'' com ESP8266

 O TFT LCD 3.5" SPI Touch Screen com Slot SD é um componente eletrônico muito interessante para projetos com Arduino ou ESP 32 ou ESP 8266. O display possui uma alta qualidade de ímágem, com resolução de 480x320 pixels e a capacidade de reproduzir até 65 mil cores. Além disso, é uma tela touchscreen permitindo criar botões diretamente na tela. 


O módulo utiliza um barramento SPI para comunicação, permitindo uma alta taxa de atualização das imágens. A tela possui slot para Cartão SD que permite que você armazene e acesse facilmente dados e imágens. Esse display funciona tanto no arduino Mega quanto nos ESP 8266 ou ESP 32, entretanto no arduino Mega a atualização das imágens torna-se muito lenta, alem disso o display funciona somente com 3,3 V portanto para utiliza-lo no arduino é necessário utilizar um conversor de nível lógico de 5V para 3,3 V. Para testar o display, primeiro devemos instalar a biblioteca TFT eSPI na IDE do arduino.

Após instalar a bilblioteca, voce deve abrir a pasta de biblioteca do arduino e buscar pela pasta TFT eSPI. Esta pasta contem dois arquivos que devem ser editados. 
Primeiro vamos editar o arquivo User_Setup.h usando bloco de notas ou Notpad++.

Vamos procurar a linha correspondente ao Driver do nosso display, neste caso o driver é o ILI8488 que é chip controlador do display.
Agora vamos editar os pinos que serão usados pelo ESP 8266 para conectar ao display.

// ###### EDIT THE PIN NUMBERS IN THE LINES FOLLOWING TO SUIT YOUR ESP8266 SETUP ######

// For NodeMCU - use pin numbers in the form PIN_Dx where Dx is the NodeMCU pin designation
#define TFT_MISO  PIN_D6  // Automatically assigned with ESP8266 if not defined
#define TFT_MOSI  PIN_D7  // Automatically assigned with ESP8266 if not defined
#define TFT_SCLK  PIN_D5  // Automatically assigned with ESP8266 if not defined

#define TFT_CS    PIN_D8  // Chip select control pin D8
#define TFT_DC    PIN_D3  // Data Command control pin
//#define TFT_RST   PIN_D4  // Reset pin (could connect to NodeMCU RST, see next line)
#define TFT_RST  -1     // Set TFT_RST to -1 if the display RESET is connected to NodeMCU RST or 3.3V

Vmos salvar e fechar este arquivo. Agora vamos abrir o arquivo User_Setup_Select.h e descomentar apenas  a linha correspondente ao nosso display.
#include <User_Setups/Setup20_ILI9488.h>        // Setup file for ESP8266 and ILI9488 SPI bus TFT

Dentro da pasta examples voce vai encontrar varias pastas com arquivos para testar. Vamos abrir o pasta 480x320, nesta pasta vamos abrir o arquivo TFT_graficstest_one_lib usando a IDE do arduino. Vamos carregar este codigo no ESP 8266. Após carregar o codigo vamos conectar o ESP8266 ao display da seguinte forma.
Display ------ESP 8266
vcc-----------3.3V
gnd-----------gnd
CS -----------D8
RST----------3.3V  ou D4 
DC -----------D3
MOSI--------D7
SCK----------D5
LED----------3.3V
MISO--------D6
O pino RST pode ser conectado ao 3.3V ou ao D4, porem deve ser descomentada a linha correta. 


Abaixo temos um código exeplo que pode ser testado no display. 

#include <SPI.h>
#include <TFT_eSPI.h>  // Biblioteca para o display

TFT_eSPI tft = TFT_eSPI();  // Invoca a biblioteca customizada

void setup(void) {
  Serial.begin(9600);  // Inicializa o monitor serial
  tft.init();
  tft.setRotation(1);  // 1=posição horizontal do display, 2 vertical
  // TELA DE APRESENTAÇÃO
  tft.fillScreen(TFT_BLACK);                // Preenche a tela inteira na cor preta
  tft.fillRect(1, 1, 480, 100, TFT_WHITE);  // cria um retangulo começando na coordenada x1, y1 até x480 com 100 linhas de pixels.
  tft.setTextColor(TFT_BLUE);               // Define a cor das letras do cabeçalho
  tft.setTextSize(4);                       // Define o tamanho das letras
  tft.setCursor(100, 10);                   // Define as coordenadas xy do display onde o texto começa
  tft.print("Luz da Ciencia ");             // Cabeçalho
  tft.setCursor(100, 70);
  tft.print("YouTube");
  tft.setTextColor(TFT_GREEN);
  tft.setTextSize(3);
  tft.setCursor(100, 150);
  tft.print("Inscreva-se no canal");
 
  delay(5000);
 
  tft.fillScreen(TFT_BLACK);
  tft.fillRect(1, 1, 480, 100, TFT_WHITE);
  tft.setTextColor(TFT_GREEN);
  tft.setTextSize(4);
  tft.setCursor(100, 10);
  tft.print("Luz da Ciencia ");
  tft.setTextColor(TFT_GREEN);
  tft.setTextSize(3);
  tft.setCursor(100, 150);
  tft.print("Leia o tutorial em:");
  tft.setCursor(10, 200);
  tft.print("https://luzdacienciabrasil.blogspot.com");

  delay(5000);
 
  // Adicionando figuras ao final
  displayShapes();
}

void loop() {
  // Nenhuma ação no loop principal
}

void displayShapes() {
  tft.fillScreen(TFT_BLACK);

  // Exemplo de retângulo
  for (int i = 0; i < 5; i++) {
    tft.fillRect(60, 60 + (i * 30), 100, 20, TFT_RED);
    delay(300);
  }

  // Exemplo de círculo
  for (int radius = 10; radius < 60; radius += 10) {
    tft.drawCircle(300, 100, radius, TFT_YELLOW);
    delay(200);
  }

  // Exemplo de triângulo
  for (int i = 0; i < 5; i++) {
    tft.fillTriangle(100, 200, 140, 240, 60, 240, TFT_BLUE);
    delay(500);
    tft.fillTriangle(100, 200, 140, 240, 60, 240, TFT_BLACK);
  }

  // Exemplo de animação de círculos
  for (int x = 0; x < tft.width(); x += 10) {
    tft.fillCircle(x, tft.height() / 2, 5, TFT_GREEN);
    delay(50);
  }

  // Exemplo de retângulos piscando
  for (int i = 0; i < 5; i++) {
    tft.fillRect(220, 150, 80, 50, TFT_CYAN);
    delay(300);
    tft.fillRect(220, 150, 80, 50, TFT_BLACK);
    delay(300);
  }

  delay(2000);
}

Veja também o vídeo onde mostro o display em funcionamento. Neste momento não vamos testar o funcionamento da função toque na tela e nem da entrada de cartão de memória, porem poderemos abordar isso futuramente em outra publicação.
















domingo, 4 de agosto de 2024

Medidor de temperatura e umidade com DHT22 e display LCD

O  DHT22 é um sensor de umidade e temperatura com alta precisão e que pode ser empregado em uma infinidade de aplicações, como monitoramento ambiental, sistemas de automação residencial ,estações meteorológicas, controle de condições em ambientes como estufas e armazéns, projetos e protótipos usando Arduino. 

O DHT 22 possui as seguintes características técnicas:                                                                               

Precisão:
Temperatura: ±0.5°C na faixa de -40°C a 80°C.
Umidade: ±2-5% na faixa de 0% a 100% de umidade relativa (RH).

Faixa de Medição:
Temperatura: -40°C a 80°C.
Umidade: 0% a 100% RH.

Resolução:

Temperatura: 0.1°C.
Umidade: 0.1% RH.

Tempo de Resposta:
Umidade: ≤5 segundos.
Temperatura: ≤2 segundos.

Intervalo de Leitura:
O sensor pode fornecer novas leituras aproximadamente a cada 2 segundos 

Fonte de Alimentação:
Tensão de operação: 3.3V a 5.5V.
Corrente de operação: 1.5mA durante a medição, 40-50µA em estado de espera.



Interface de Comunicação:
O DHT22 usa uma interface digital de 1 fio para comunicação, pode transmitir informação usando um fio de até 20 m.
A grande diferença entre o DHT22 e o DHT11 é que o primeiro possui muito mais resolução, exibindo o valor da umidade com uma casa decimal



Neste projeto vamos construir um circuito usando um Arduino nano, um DHT 22 e um display lcd 2x16 I2C.
Vamos utilizar um display com modulo I2C soldado ao display pois isso deixa a conexão com o arduino muito mais fácil, necessitando apenas 4 fios. 

O pino SCL do display deve ser conectado ao pino A5 do arduino, o pino SDA ao A4, o pino VCC ao 5V. O DHT 22 utiliza apenas 3 fios, o pino DAT deve ser conectado ao pino digital 2 do arduino. 

Agora vamos carregar o código no arduino e verificar o funcionamento dos sensor. 

// Bem vindo ao Blog Luz da Ciência
// Conheça também o Canal Luz da ciência no YouTube
// https://www.youtube.com/@Luzdaciencia


#include <Wire.h>
#include <LiquidCrystal_I2C.h>
#include <DHT.h>

#define DHTPIN 2       // Pino de dados do sensor DHT22
#define DHTTYPE DHT22  // Definindo o tipo de sensor como DHT22

LiquidCrystal_I2C lcd(0x27, 16, 2); // Endereço do display 0x27
//16 colunas, 2 linhas
DHT dht(DHTPIN, DHTTYPE); // Inicializando o sensor DHT22

void setup() {
  lcd.init();
  lcd.backlight();
  dht.begin();
 
  lcd.print(" Luz da ciencia "); // Tela de apresentação
  delay(2000);
  lcd.clear();
}

void loop() {
  float temperatura = dht.readTemperature();
  float umidade = dht.readHumidity();

  // Verificando se a leitura falhou
  if (isnan(temperatura) || isnan(umidade)) {
    lcd.setCursor(0, 0);
    lcd.print("Erro na leitura");
    return;
  }

  // Exibindo a temperatura na linha de cima
  lcd.setCursor(0, 0);
  lcd.print("Temp: ");
  lcd.print(temperatura);
  lcd.print(" C");

  // Exibindo a umidade na linha de baixo
  lcd.setCursor(0, 1);
  lcd.print("Umid: ");
  lcd.print(umidade);
  lcd.print(" %");

  delay(2000); // Atraso de 2 segundos entre as leituras
}

O modulo I2C do display LCD possui um pequeno potenciometro que pode ser ajustado para melhorar o contraste dos dígitos. 



Esse projeto é muito versátil, você pode substituir o DHT 22 por outros sensores  umidade como DHT 11, ou substituir por um sensor de pressão BMP280 para medir pressão atmosférica. 



domingo, 15 de outubro de 2023

Pilha caseira com moedas

 Material:

Moedas de cinco centavos cobertas com cobre.

Arruelas galvanizadas

Filtro de café

Vinagre

Calculadora

LED

Fios para conexão

Montagem: use uma moeda de 1 Real para fazer círculos sobre filtro de café, recorte esses círculos com uma tesoura, cada pilha precisara de um disco de papel para separar a moeda da arruela. Escolha moedas de cinco centavos, quanto mais oxidada estiver a moeda melhor será o resultado.

Assista ao vídeo abaixo para saber como montar as pilha com moedas.



Empilhe o conjunto, coloque o disco de filtro sobre a moeda, em seguida coloque a arruela de zinco sobre a o disco de papel. Adicione duas gotas de vinagre no meio da arruela, o vinagre irá se espalhar no papel. Se você tiver um multímetro verá que já construiu uma pilha, a arruela será o eletrodo negativo e a moeda o eletrodo positivo. Uma pilha como essa gera um potencial de aproximadamente 0,8 Volts, portanto para acender um Led você precisara de pelo menos 3 e para ligar uma calculadora pelo menos duas. Para aumentar a voltagem é necessário construir varias pilhas e colocar umas sobre as outras, com o polo positivo de uma pilha sobre o polo negativo da outra, ou seja, fazendo uma associação em série. Associando varias pilhas é possível atingir mais de 5 Volts, entretanto a corrente é menor que 10 mA, por isso não é possível ligar dispositivos como um motorzinho elétrico, apenas um led, uma calculadora ou um relógio digital. Quanto mais oxidada estiver a moeda melhor será o resultado, pois é o oxido de cobre presente na superfície da moeda será reduzido para cobre metálico enquanto o zinco metálico presente na arruela será oxidado para Zn2+. O vinagre será o eletrólito da pilha. O vinagre também fornece íons H+, esse íon reage com o óxido de cobre produzindo cobre metálico e agua. Dessa forma a pilha so funciona enquanto tiver óxido de cobre na superficie das moedas. 

Bem Vindos!

 Este blog foi criado para contribuir com a divulgação científica que tanto é necessária neste momento em que notícias falsas e obscurantismo.

Lítio, o metal que explode em contato com a água.

 O lítio é um metal alcalino, terceiro elemento da tabela periódica, é o metal que possui menor densidade entre todos. É um metal muito maleável e pode ser cortado com uma faca. O lítio é extremamente reativo, pode reagir com o ar e com agua, por isso precisa ser guardado imerso em oleo mineral ou querozene. Quando entra em contato com a agua ocorre uma reação química extremamente exotérmica, produzindo hidróxido de lítio e hidrogênio.

2Li +2H2O →2LiOH+H2

O calor faz com que o hidrogênio produzido comece a queimar. Depois de alguns segundos, o calor faz o lítio fundir (ponto de fusão é apenas 180,5°C), devido à baixa densidade o lítio flutua sobre a agua, a reação química se torna tão rápida que pode causar uma explosão.

O lítio é um elemento essencial para fabricação de baterias de íon de lítio presentes em celulares, computadores portáteis, patinetes elétricos, carros eletricos e uma infinidade de outros dispositivos que usam baterias. Também é usado para fabricar carbonato de lítio que é usado como medicamento para algumas doenças psiquiátricas. Também é adicionado a fogos de artificio pois os derivados de lítio fazem com que cama fique vermelha. 



No vídeo abaixo um rapaz consegue uma amostra de lítio puro desmontando um tipo de pilha alcalina, é uma pilha que é vendida no Brasil, mas custa mais de R$50,00 cada uma. Ele joga uma folha de lítio na água, é possível ver que ocorre surgimento de chama quase instantaneamente e ao final ocorre uma pequena explosão. Para ver mais vídeos como esse visite o Canal  Luz da Ciência no You Tube.



segunda-feira, 7 de agosto de 2023

 Conversor de unidades de temperatura 

Conversor de Temperatura

Conversor de Temperatura

 As escalas termométricas


 A temperatura pode ser medida em três escalas reconhecidas pelo Sistema Internacional de Unidades (SI) 

  • Escala Fahrenheit (°F)
  • Escala Celsius (°C)
  • Escala Kelvin (K)

Cada escala de temperatura foi criada usando pontos de referência, ou seja fenomenos fisicos que só ocorrem em uma determinada temperatura, por exemplo o ponto de fusão e ponto de ebulição da água.

Escala Fahrenheit °F

A Escala Fahrenheit leva esse nome pois foi criada pelo físico Daniel Gabriel Fahrenheit (1686-1736) em 1724. Esta unidade de medida é usada principalmente nos Estados Unidos e na Inglaterra. O símbolo dessa escala termométrica é °F. Não se assuste se você ver a temperatura em algum filme americano e achar que o valor está muito alto, pois por exemplo uma temperatura de 25 °C corresponde a 77°F

Ponto de fusão da agua: 32°C

Ponto de ebulição da agua: 212°C

Escala Celsius °C

A escala Celsius leva esse nome pois foi criada pelo astrônomo sueco Anders Celsius (1701-1744) em 1742. É a escala de temperatura usada por quase todos os países, incluindo o Brasil. O símbolo dessa escala é °C.

Ponto de fusão da agua: 0°C

Ponto de ebulição da agua: 100°C

Escala Kelvin

A escala Kelvin foi criada pelo físico William Thomson (também chamado  Lorde Kervin).
Essa temperatura é usada no meio científico. Nesta escala o 0K significa a temperatura mais baixa que pode ser atingida, definida como zero absoluto -273,15°C, ou seja, onde a vibração dos atomos e moléculas e nula.
Nesta escala o 0 °C corresponde a 273,15 K.
Note que o kelvin não é referido nem escrito como um grau ° como °C ou °F.
A temperatura média do Universo é de apenas 270 °C, ou seja 3,15K.

Converter graus Celsius para graus Fahrenheit:
Cada °C corrensponde a 9/5+32
ou seja 9/5=1,8
Se você quer converter a temperatura de 36,5 °C você pode fazer o seguinte cálculo:
(36,5x1,8)+32=97,7°F
Converter graus Fahrenheit para graus Celsius 
Deve subtrair 32 do valor de °F e em seguida dividir por 1,8.
(°F-32)/1,8 =°C

Converter graus Celsius para Kelvin
Para converter °C em K basta somar 273,15 
Exemplos:
°C= 0+273,15= 273,15K
36,5°C = 36,5+273,15 = 309,15K
100°C = 100+273,15= 373,15K



Jogo da Tabuada

🎯 Mestre da Multiplicação 🎯 Mestre da Multiplicação Aprenda a tab...