6 de mar. de 2014

Projeto 25 – Gráfico de leitura de temperatura com um LCD Nokia 5110

Projeto 25 – Gráfico de leitura de temperatura com um LCD Nokia 5110

Olá pessoal, com o Nokia 5110 podemos fazer variarias coisas, como visualizar na tela imagens, textos e muito mais, irei mostrar como visualizar um gráfico de temperatura com este maravilhoso LCD juntamente com um sensor de temperatura LM35, deixando com uma visualização mais compreensível ao usuários. Os códigos serão todos comentados para melhor entendimento, podendo ser retirados após a compreensão de cada linha. Bom trabalho !!!


Componentes necessários

1 Resistor de 220 Ω
1 Módulo Nokia 5110
1 Protobord
1 Sensor de temperatura LM35
Fios jumpers

Conectando os componentes

Primeiro, certifique-se de que seu Arduino esteja desligado, desconectando-o do cabo USB. Agora, conecte o módulo Nokia 5110, o LM35 e o resistor assim como mostra a figura abaixo:











Para melhor entendimento segue a inserção dos jumpers:
Pinos Arduino                                        Pinos LCD Nokia 5110
11                                                             RST
12                                                             CE
10                                                             DC
9                                                               Din
8                                                               Clk
5V                                                            Vcc
GND                                                         Gnd

Fazendo o download e importando a biblioteca do LCD Nokia 5110:

2) Faça o download do arquivo PCD8544;
3) Descompacte o arquivo;
4) Agora entre no diretório (C:) e na pasta Arquivos de Programas, Arduino, libraries, copie o arquivo descompactado nesta pasta;
5) Pronto para utilizar;


Agora vamos ao código

                                                          
// Projeto 25 – Gráfico de leitura de temperatura com um LCD Nokia 5110

#include <PCD8544.h>  // Biblioteca utilizada para controle de gráficos e/ou desenhos.

static const byte SensorTemp = 0;  // Pino analógico onde está o LM35.

// Definindo as dimensões do LCD (em pixels).
static const byte LCD_WIDTH = 84;
static const byte LCD_HEIGHT = 48;

// Define o número de linhas para exibir o caracter de temperatura.
static const byte CHART_HEIGHT = 5;

// Define o símbolo gráfico para ser exibido no LCD.
static const byte DEGREES_CHAR = 1;
static const byte degrees_glyph[] = { 0x00, 0x07, 0x05, 0x07, 0x00 };

// Uma imagem bitmap gráfica de 10X2 do termômetro.
static const byte THERMO_WIDTH = 10;
static const byte THERMO_HEIGHT = 2;
static const byte thermometer[] = { 0x00, 0x00, 0x48, 0xfe, 0x01, 0xfe, 0x00, 0x02, 0x05, 0x02,
                                    0x00, 0x00, 0x62, 0xff, 0xfe, 0xff, 0x60, 0x00, 0x00, 0x00};

static PCD8544 lcd;


void setup() {
  lcd.begin(LCD_WIDTH, LCD_HEIGHT);
 
  // Registra o símbolo personalizado do termômetro.
  lcd.createChar(DEGREES_CHAR, degrees_glyph);
 

   /* A referência 1.1V interno prevê uma melhor
    Resolução do LM35, e também é mais estável
    Quando alimentado a partir de uma entrada USB. */
   
  analogReference(INTERNAL);
}


void loop() {
 
  // Define a borda do LCD.
  static byte xChart = LCD_WIDTH;
 

  // Lê a temperatura em graus Celsius.
  float SensorTemp = (1.1 * analogRead(SensorTemp) * 100.0) / 1024.0;
 
  // Imprime a temperatura na tela do LCD.
  lcd.setCursor(0, 0);
  lcd.print("Temp: ");
  lcd.print(SensorTemp, 1);
  lcd.print(" \001C ");

  // Desenhar o bitmap termômetro no canto inferior esquerdo ...
  lcd.setCursor(0, LCD_HEIGHT/8 - THERMO_HEIGHT);
  lcd.drawBitmap(thermometer, THERMO_WIDTH, THERMO_HEIGHT);

  // Define a posição do gráfico.
  if (xChart >= LCD_WIDTH) {
    xChart = THERMO_WIDTH + 2;
  }

  // Atualiza o gráfico de temperatura. 
  lcd.setCursor(xChart, 1);
  lcd.drawColumn(CHART_HEIGHT, map(SensorTemp, 0, 45, 0, CHART_HEIGHT*8));  // Define uma faixa entre 0 - 45°C
  lcd.drawColumn(CHART_HEIGHT, 0);  // Define uma posição correta do gráfico.
 
  xChart++;

  delay(500);
}


Para certificar se o código está correto pressione o botão Verify/Compile.
Se tudo estiver correto pressione o botão Upload para fazer o upload do código para seu Arduino.



Se tudo estiver OK você verá na tela a temperatura real, juntamente com um gráfico que irá mudar de acordo com a temperatura.





Vídeo do projeto pronto:









- Se você gostou do post, por favor comente! Nos dê um feedback, isto nos incentiva a continuar! :)
- Inscreva-se na fan page !
- Curta nossa fan page !
- Baixe o APP Faça Com Arduino e carregue para onde você for os projetos. É simples. É fácil !!




Comentários
0 Comentários

0 comentários:

Postar um comentário