Primeiros Passos com a PQDB Mini e Arduino UNO

PQDB Mini e Arduino
Este post faz parte da série PQDB Mini

Como vimos no artigo anterior, escrito pelo Augusto Mattos, a PQDB foi adaptada e a PQDB Mini foi criada. A campanha de arrecadação de fundos para sua fabricação foi um sucesso e agora, com ela em mãos, podemos então dar os primeiros passos para desenvolvermos algumas aplicações com ela.

Instalação das bibliotecas

O primeiro passo para você começar a utilizar a PQDB Mini é a instalação das bibliotecas e os exemplos. Os arquivos podem ser baixados neste link.

Depois de fazer o download dos arquivos, abra a IDE do Arduino, e vá em Sketch >> Incluir Biblioteca >> Adicionar Biblioteca .ZIP, como pode ser observado na Figura 1. Selecione a pasta como na Figura 2.

Instalação das bibliotecas para uso da PQDB Mini na IDE Arduino
Figura 1: Instalação das bibliotecas.
Seleção da pasta desejada na IDE Arduino para a PQDB Mini
Figura 2: Seleção da pasta desejada.

Para confirmar a instalação dos arquivos, em Arquivos >> Exemplos, procure a seção Exemplos de Bibliotecas Personalizadas.

Exemplos para a placa PQDB Mini na IDE Arduino
Figura 3: Exemplos para a placa PQDB Mini.

Preparando a PQDB Mini

Depois de todos os arquivos instalados, vamos preparar a PQDB Mini para poder rodar alguns exemplos.

Figura 4: Seleção do hardware que será utilizado.

Encaixe a PQDB Mini no Arduino como na Figura 5. A pinagem pode ser vista no primeiro artigo desta série.

Figura 5: PQDB Mini encaixada no Arduino.

Depois, vamos conectar o display LCD 5110 na PQDB Mini, já que vamos utilizá-lo no próximo tópico. Por fim, conecte o cabo USB no Arduino.

Figura 6: PQDB Mini pronta para ser utilizada.

Com o Hardware já preparado, vamos configurar a IDE. Selecione a placa, no caso estamos usando o Arduino Uno, Ferramentas >> Placa >> Arduino/Genuino Uno.

Seleção do tipo da placa Arduino a ser utilizada
Figura 7: Seleção do tipo da placa a ser utilizada.

Depois, conecte o hardware em seu computador, e selecione a porta serial, em Ferramentas >> Porta, como na Figura 8.

Seleção da porta serial na IDE Arduino
Figura 8: Seleção da porta serial.

Testando um exemplo na PQDB Mini

Com tudo pronto e configurado, podemos agora testar um dos exemplos. Para começar rodei o testaPQDB.ino, para testar e ver se as principais funcionalidades estavam OK. É realizado o teste do display 5110, o display de 7 segmentos, o teclado de 10 teclas, o LED RGB, o Buzzer e o LDR. O código e o resultado podem ser vistos abaixo.

#include "ad.h"
//#include "lcd.h"
#include "keypad.h"
#include "io.h"
#include "nokia5110.h"
#include "console.h"
#include "pwm.h"
#include "rgb.h"
#include "serial.h"
#include "so.h"
#include "ssd.h"
#include "timer.h"
#include "i2c.h"
#include "ds1307.h"


unsigned long tempoAntigo;

void setup() {
  //RTC e LCD

  Serial.begin(115200);
  
  //LCD
  //lcdInit();
  initializeDisplay(0xC0,0x07,0x014);

  //RTC
  dsInit();

  //74HC595
  soInit();

  //Teclado
  kpInit();

  //Timer
  timerInit();

  //Conversor AD
  adInit();

  //Display 7 Seg.
  ssdInit();

  //RGB
  rgbInit();

  //Buzzer
  pwmInit();
  
  turnOff(BLUE);        // Desliga a cor Azul
  turnOn(RED);          // Liga a cor Vermelha
  pwmBuzzer(1000);
  timerDelay(500);      // Delay
  
  turnOff(RED);         // Desliga a cor Azul
  turnOn(GREEN);        // Liga a cor Verde
  pwmBuzzer(1200);
  timerDelay(500);      // Delay
  
  turnOff(GREEN);       // Desliga a cor Verde
  turnOn(BLUE);         // Liga a cor Azul
  pwmBuzzer(1500);
  timerDelay(500);      // Delay

  pwmBuzzer(0);


for(int i=0; i<504; i++) LcdWriteData(0x00); // clear LCD

  dsStartClock();
  dsWrite(0x57,SEC);
  dsWrite(0x59,MIN);
  dsWrite(0x23,HOUR);
  dsWrite(5,WEEKDAY);
  dsWrite(0x08,DAY);
  dsWrite(7,MONTH);
  dsWrite(0x94,YEAR);
  tempoAntigo = millis();
  
}

void loop() {

    int i = 0;
    int k = 0;
    int j = 0;
    int l = 0;

    //LM35
    i = adRead(0);
    i = i - 30;

    LcdXY(0,0);
    LcdWriteCharacter((i / 10) % 10 + 48);
    LcdWriteCharacter((i / 1) % 10 + 48);

    
    //RTC e LCD
    while(millis() - tempoAntigo < 5000) {
    

    i = getHours();

    LcdXY(0,1);
    LcdWriteCharacter((i / 10) % 10 + 48);
      LcdWriteCharacter((i / 1) % 10 + 48);

LcdWriteCharacter(':');

    i = getMinutes();
    LcdWriteCharacter((i / 10) % 10 + 48);
      LcdWriteCharacter((i / 1) % 10 + 48);

LcdWriteCharacter(':');

    i = getSeconds();
    LcdWriteCharacter((i / 10) % 10 + 48);
      LcdWriteCharacter((i / 1) % 10 + 48);
      
LcdXY(0,2);
    i = getDays();
    LcdWriteCharacter((i / 10) % 10 + 48);
      LcdWriteCharacter((i / 1) % 10 + 48);
LcdWriteCharacter('/');

    i = getMonths();
    LcdWriteCharacter((i / 10) % 10 + 48);
      LcdWriteCharacter((i / 1) % 10 + 48);

LcdWriteCharacter('/');

    i = getYears();
    LcdWriteCharacter((i / 10) % 10 + 48);
      LcdWriteCharacter((i / 1) % 10 + 48);
    
    }
    
LcdXY(0,4);
    kpDebounce();                      //Realiza o Debounce do teclado
    for (k = 0; k < 10; k++) {         //Varredura
      if (kpRead() & (1 << k)) {       //Identifica qual tecla foi pressionada
LcdWriteCharacter(k + 48);
        break;
      }
    }
    
    j  = adRead(2);                    // Leitura do POT
    l  = adRead(1);                    //Leitura LDR
    ssdDigit(3, (j / 10) % 10);        // Dezena POT
    ssdDigit(2, (j / 100) % 10);       // Unidade POT
    ssdDigit(1, (l / 10) % 10);        // Dezena LDR
    ssdDigit(0, (l / 100) % 10);       // Unidade LDR
    
    for(j = 0; j < 8; j++){                  // Delay
    ssdUpdate();
    timerDelay(5);
  }
    
}

Conclusão

A PQDB Mini é uma placa com diversas possibilidades de aplicações e de fácil manuseio, já que usa um Arduino como base, o que a torna de fácil acesso, tanto para quem está começando a mexer com eletrônica agora, quanto para os que possuem mais experiência. E para auxiliar nos estudos vale a pena utilizar o livro Programação de Sistemas Embarcados, do Rodrigo Almeida, em conjunto com a placa.

Agora é a sua vez, conte nos comentários os seus projetos com a PQDB Mini!

PQDB Mini

Conheça a PQDB Mini – A placa didática com display gráfico
Licença Creative Commons Esta obra está licenciada com uma Licença Creative Commons Atribuição-CompartilhaIgual 4.0 Internacional.
Comentários:
Notificações
Notificar
3 Comentários
recentes
antigos mais votados
Inline Feedbacks
View all comments
Gedeane Kenshima
Membro
22/04/2018 00:25

Oi Renata, tudo bem?

Parabéns pelo Artigo!

Fui tentar instalar a biblioteca, dá erro tanto se eu coloco o arquivo .zip ou se eu copio a pasta pra \Arduino\libraries.

Tentei renomear também e dá erro. Fechei e abri novamente a IDE.

Estou com a versão 1.8.5.

Obrigada, att

rodolfo
rodolfo
Reply to  Renata De Camillo
27/04/2018 21:15

Tive or mesmo problema Renata 🙁

Home » Arduino » Primeiros Passos com a PQDB Mini e Arduino UNO

EM DESTAQUE

WEBINARS

VEJA TAMBÉM

JUNTE-SE HOJE À COMUNIDADE EMBARCADOS

Talvez você goste: