segunda-feira, 11 de junho de 2012

Projeto - Apresentação Final

Projeto Hit The Light
           
Integrantes:
Augusto Cesar Pupo Vieira
Cássia de Souza Corrêa
Denilson Gianeiz Junior
Filipe Ricado Reis Sbragio

            
Materiais e Softwares:
Cerâmica
LED’s coloridos
Fios de cobre
Fita adesiva
Resistores de 1k Ohms
Adaptador para saída de som
Molas
Arduino UNO
Interface Java no computador
Software arduino-1.0.1
Software NetBeans IDE 7.1.2

            
Projeto:
Para a criação das primeiras teclas de um piano (Dó, Ré, Mi, Fá, Sol, Lá e Si) usamos como material base argila. As teclas de argila foram então modeladas e queimadas para se tornarem cerâmica. Com as teclas feitas, anexamos um circuito com um resistor, um LED, uma chave e uma mola fora do circuito na parte de baixo de cada tecla. Ao ser apertada, a chave se conecta com um botão feito de cobre, assim fechando o circuito. Quando o Arduino registra a entrada de voltagem acima de 4 volts, ele começa o comando tone e acende o LED. O tone envia a saída de som da frequência com que o som será tocado. A frequência de cada nota foram definidas de modo com que as teclas possam ser claramente distinguidas. As teclas foram adicionadas a base, feita de papelão com revestimento de papel contact. Para o piano tocar as notas de um arquivo de texto, foi criado uma interface Java no computador pelo NetBeans IDE 7.1.2 para as notas. O código cria um arquivo de texto que guarda a nota e o tempo em que esta foi pressionada. O Arduino então consegue ler este arquivo de texto e reproduzir no piano as teclas pressionadas acendendo os LED’s, enviando suas frequências e duração de execução da nota para a saída de som.

Projeto - Piano





  

  

Projeto - Poster


Projeto - Artigo Científico

1.00.00.00-3 - CIÊNCIAS EXATAS E DA TERRA
1.05.00.00-6 - Física

HIT THE LIGHT

Augusto Cesar Pupo Vieira
Curso de Ciência da Computação – Faculdade de Matemática, Física e Tecnologia
Cássia de Souza Corrêa
Curso de Ciência da Computação – Faculdade de Matemática, Física e Tecnologia
Denilson Gianeiz Junior
Curso de Ciência da Computação – Faculdade de Matemática, Física e Tecnologia
Filipe Ricardo Reis Sbragio
Curso de Ciência da Computação – Faculdade de Matemática, Física e Tecnologia
Resumo:
Nosso projeto teve como objetivo criarmos as 7 primeiras teclas de um piano, assim como a reprodução de notas tocadas a partir de um computador. Todas as teclas contêm um LED colorido que acendem quando a nota é tocada. Para isso usamos o Arduino UNO e seu software arduino-1.0.1, assim como o software NetBeans IDE 7.1.2 e sua IDE de Java para a criação da interface das teclas no computador.
Palavras-Chave: Piano LED, Arduino,LED. 
Introdução:
Nosso objetivo neste projeto é a partir do hardware Arduino UNO e de seu software arduino-1.0.1, criar as primeiras teclas de um piano, Dó, Ré, Mi, Fá, Sol, Lá e Si. Cada tecla ao ser apertada acende um LED colorida e reproduz o som correspondente a sua nota musical. O arduino também deve ter a capacidade de ler arquivos de texto em um computador, gerado pela interface de notas, e reproduzir estas notas na saída de som e LED correspondentes as clicadas na interface.
1.    Desenvolvimento
Para criarmos o Piano LED usamos como material base para as teclas argila. As teclas de argila foram então queimadas para se tornarem cerâmica. Usamos LED de cores vermelha, amarela, azul, verde e branca para as notas musicais. A frequência de cada nota foram definidas de modo com que as teclas possam ser claramente distinguidas. (GOLDEMBERG et al. 2005). A base das teclas foi feita com papelão e revestido por papel contact. Outros materiais usados foram fios de cobre, fita adesiva, resistores de 1k Ohms, um adaptador para saída de som e molas.
2.    Metodologia
Para criar as teclas usamos argila e as modelamos. Ao colocar no forno conseguimos as teclas de cerâmica. Com as teclas feitas, anexamos um circuito com um resistor, uma led, uma chave assim como uma mola fora do circuito na parte de baixo da tecla. Ao ser apertada, a chave se conecta com um botão feito de cobre, assim fechando o circuito. Quando o arduino registra a entrada de voltagem acima de 4 volts, ele começa o comando tone e acende o LED. O tone envia a saída de som da frequência com que o som será tocado. As teclas foram adicionadas a base, feita de papelão com revestimento de papel contact.Para o piano tocar as notas de um arquivo de texto, foi criado uma interface no computador para as notas. Criada no NetBeans IDE 7.1.2 em Java. O código cria um arquivo de texto que guarda a nota e o tempo em que esta foi pressionada. O arduino então consegue ler deste arquivo de texto e reproduzir no piano as teclas pressionadas acendendo os LED’s e enviando suas frequências e duração de execução da nota para a saída de som.
3.    Resultados
Conseguimos a partir do arduino reproduzir os sons ao pressionar as teclas. Ao ser pressionado o circuito se fecha acendendo o LED e enviando a frequência a saída de som.
Referência Bibliográfica:
·         Electronic Document Format (ISO)
GOLDEMBERG, Ricardo. Aspectos acústicos da afinação de pianos. In Proceedings of the 2. II Seminário de Música, Ciência e Tecnologia, 2005, São Paulo (SP) [online]. 2005 [cited 4 June 2012]. Available on: <http://www.proceedings.scielo.br/scielo.php?script=sci_arttext&pid=MSC0000000102005000100005&Ing=en&nrm=iso>

·         Electronic Document Format (ABNT)

GOLDEMBERG, Ricardo. Aspectos acústicos da afinação de pianos. In II Seminário de Música, Ciência e Tecnologia, 1., 2005, São Paulo. Proceedings online. Avaliable from: <http://www.proceedings.scielo.br/scielo.php?script=sci_arttext&pid=MSC0000000102005000100005&Ing=en&nrm=abn>. Acess on: 4 June 2012.

Projeto - Código Piano.ino

    
int LDR1,LDR2,LDR3,LDR4,LDR5,LDR6,LDR7;
float VLDR1,VLDR2,VLDR3,VLDR4,VLDR5,VLDR6,VLDR7;
    
void setup(){
DDRD = DDRD | B11011100;
Serial.begin(9600);
pinMode(A0, INPUT);
pinMode(A1, INPUT);
pinMode(A2, INPUT);
pinMode(A3, INPUT);
pinMode(A4, INPUT);
pinMode(A5, INPUT);
pinMode(5, INPUT);
pinMode(13,OUTPUT);
digitalWrite(13, HIGH);
pinMode(12,OUTPUT);
digitalWrite(12, HIGH); 
pinMode(11,OUTPUT);
digitalWrite(11, HIGH);
pinMode(10,OUTPUT);
digitalWrite(10, HIGH); 
pinMode(9,OUTPUT);
digitalWrite(9, HIGH); 
pinMode(7,OUTPUT);
digitalWrite(7, HIGH);
pinMode(6,OUTPUT);
digitalWrite(6, HIGH); 
}
    
void loop(){
LDR1 = analogRead(A0);
VLDR1=LDR1*5.0000000/1024;
Serial.println(VLDR1);
while(VLDR1>=4.0){
  LDR1 = analogRead(A0);
  VLDR1=LDR1*5.0000000/1024;
  Serial.println(VLDR1);
  tone(8,262);
}
if(VLDR1<4.0){
  noTone(8);
}
LDR2 = analogRead(A1);
VLDR2=LDR2*5.0000000/1024;
while(VLDR2>=4.0){
  LDR2 = analogRead(A1);
  VLDR2=LDR2*5.0000000/1024;
  tone(8,294);
}
if(VLDR2<4.0){
  noTone(8);
}
LDR3 = analogRead(A2);
VLDR3=LDR3*5.0000000/1024;
while(VLDR3>=4.0){
  LDR3 = analogRead(A2);
  VLDR3=LDR3*5.0000000/1024;
  tone(8,329);
}
if(VLDR3<4.0){
  noTone(8);
}
LDR4 = analogRead(A3);
VLDR4=LDR4*5.0000000/1024;
while(VLDR4>=4.0){
  LDR4 = analogRead(A3);
  VLDR4=LDR4*5.0000000/1024;
  tone(8,349);
}
if(VLDR4<4.0){
  noTone(8);
}
LDR5 = analogRead(A4);
VLDR5=LDR5*5.0000000/1024;
while(VLDR5>=4.0){
  LDR5 = analogRead(A4);
  VLDR5=LDR5*5.0000000/1024;
  tone(8,392);
}
if(VLDR5<4.0){
  noTone(8);
}
LDR6 = analogRead(A5);
VLDR6=LDR6*5.0000000/1024;
while(VLDR6>=4.0){
  LDR6 = analogRead(A5);
  VLDR6=LDR6*5.0000000/1024;
  tone(8,440);
}
if(VLDR6<4.0){
  noTone(8);
}
}

Projeto - Código Hack.java


int notas[]={
    
};
    
float tempoTocado[]={
    
};
    
int qtdElementos =20;
void naoTocar(float tempo){
  noTone(8);
  delay(tempo);
}
void tocarDo(float tempo){
  tone(8,262,tempo);
  delay(tempo);
}
void tocarRe(float tempo){
  tone(8,294,tempo);
  delay(tempo);
}
void tocarMi(float tempo){
  tone(8,329,tempo);
  delay(tempo);
}
void tocarFa(float tempo){
  tone(8,349,tempo);
  delay(tempo);
}
void tocarSol(float tempo){
  tone(8,392,tempo);
  delay(tempo);
}
void tocarLa(float tempo){
  tone(8,440,tempo);
  delay(tempo);
}
void tocarSi(float tempo){
  tone(8,493,tempo);
  delay(tempo);
}
    
void setup(){
for(int i=0;i<qtdElementos;i++){
  if(notas[i]==0)
    naoTocar(tempoTocado[i]);
  else if(notas[i]==1)
    tocarDo(tempoTocado[i]);
  else if(notas[i]==2)
    tocarRe(tempoTocado[i]);
  else if(notas[i]==3)
    tocarMi(tempoTocado[i]);
  else if(notas[i]==4)
    tocarFa(tempoTocado[i]);
  else if(notas[i]==5)
    tocarSol(tempoTocado[i]);
  else if(notas[i]==6)
    tocarLa(tempoTocado[i]);
  else if(notas[i]==7)
    tocarSi(tempoTocado[i]);
}
}
void loop(){
}

Projeto - Código Teclado.java

import java.util.*;
    
public class Teclado extends javax.swing.JFrame{
    
    int teclas[] = new int[99999];
    double tempoPressionado[] = new double[99999];
    int qtdElementos=0;
    String filetxt = "notas.txt";
    long tempoSemTocarInicial=0, tempoSemTocarFinal, tempoSemTocarTotal;
    long tempoApertadoDo, tempoSoltoDo, tempoTotalDo;
    long tempoApertadoRe, tempoSoltoRe, tempoTotalRe;
    long tempoApertadoMi, tempoSoltoMi, tempoTotalMi;
    long tempoApertadoFa, tempoSoltoFa, tempoTotalFa;
    long tempoApertadoSol, tempoSoltoSol, tempoTotalSol;
    long tempoApertadoLa, tempoSoltoLa, tempoTotalLa;
    long tempoApertadoSi, tempoSoltoSi, tempoTotalSi;
    String texto[] = new String[999];
    File_IO readWrite = new File_IO();
    Scanner keyboard = new Scanner(System.in);
    public Teclado() {
        initComponents();
    }
    
    @SuppressWarnings("unchecked")
                          
    private void initComponents() {
        
        jButton1 = new javax.swing.JButton();
        jButton2 = new javax.swing.JButton();
        jButton3 = new javax.swing.JButton();
        jButton4 = new javax.swing.JButton();
        jButton5 = new javax.swing.JButton();
        jButton6 = new javax.swing.JButton();
        jButton7 = new javax.swing.JButton();
        jButton8 = new javax.swing.JButton();
        jButton10 = new javax.swing.JButton();
        jButton11 = new javax.swing.JButton();
    
        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
    
        jButton1.setBackground(new java.awt.Color(255, 255, 255));
        jButton1.setText("Dó");
        jButton1.setMaximumSize(new java.awt.Dimension(73, 23));
        jButton1.setMinimumSize(new java.awt.Dimension(73, 23));
        jButton1.setPreferredSize(new java.awt.Dimension(73, 23));
        jButton1.addMouseListener(new java.awt.event.MouseAdapter() {
            public void mousePressed(java.awt.event.MouseEvent evt) {
                jButton1MousePressed(evt);
            }
            public void mouseReleased(java.awt.event.MouseEvent evt) {
                jButton1MouseReleased(evt);
            }
        });
        jButton1.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButton1ActionPerformed(evt);
            }
        });
    
        jButton2.setBackground(new java.awt.Color(255, 255, 255));
        jButton2.setText("Ré");
        jButton2.setMaximumSize(new java.awt.Dimension(73, 23));
        jButton2.setMinimumSize(new java.awt.Dimension(73, 23));
        jButton2.setPreferredSize(new java.awt.Dimension(73, 23));
        jButton2.addMouseListener(new java.awt.event.MouseAdapter() {
            public void mousePressed(java.awt.event.MouseEvent evt) {
                jButton2MousePressed(evt);
            }
            public void mouseReleased(java.awt.event.MouseEvent evt) {
                jButton2MouseReleased(evt);
            }
        });
        jButton2.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButton2ActionPerformed(evt);
            }
        });
    
        jButton3.setBackground(new java.awt.Color(255, 255, 255));
        jButton3.setText("Mi");
        jButton3.addMouseListener(new java.awt.event.MouseAdapter() {
            public void mousePressed(java.awt.event.MouseEvent evt) {
                jButton3MousePressed(evt);
            }
            public void mouseReleased(java.awt.event.MouseEvent evt) {
                jButton3MouseReleased(evt);
            }
        });
        jButton3.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButton3ActionPerformed(evt);
            }
        });
    
        jButton4.setBackground(new java.awt.Color(255, 255, 255));
        jButton4.setText("Fa");
        jButton4.addMouseListener(new java.awt.event.MouseAdapter() {
            public void mousePressed(java.awt.event.MouseEvent evt) {
                jButton4MousePressed(evt);
            }
            public void mouseReleased(java.awt.event.MouseEvent evt) {
                jButton4MouseReleased(evt);
            }
        });
    
        jButton5.setBackground(new java.awt.Color(255, 255, 255));
        jButton5.setText("Sol");
        jButton5.addMouseListener(new java.awt.event.MouseAdapter() {
            public void mousePressed(java.awt.event.MouseEvent evt) {
                jButton5MousePressed(evt);
            }
            public void mouseReleased(java.awt.event.MouseEvent evt) {
                jButton5MouseReleased(evt);
            }
        });
    
        jButton6.setBackground(new java.awt.Color(255, 255, 255));
        jButton6.setText("La");
        jButton6.addMouseListener(new java.awt.event.MouseAdapter() {
            public void mousePressed(java.awt.event.MouseEvent evt) {
                jButton6MousePressed(evt);
            }
            public void mouseReleased(java.awt.event.MouseEvent evt) {
                jButton6MouseReleased(evt);
            }
        });
    
        jButton7.setBackground(new java.awt.Color(255, 255, 255));
        jButton7.setText("Si");
        jButton7.addMouseListener(new java.awt.event.MouseAdapter() {
            public void mousePressed(java.awt.event.MouseEvent evt) {
                jButton7MousePressed(evt);
            }
            public void mouseReleased(java.awt.event.MouseEvent evt) {
                jButton7MouseReleased(evt);
            }
        });
        jButton7.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButton7ActionPerformed(evt);
            }
        });


        jButton8.setText("End");
        jButton8.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButton8ActionPerformed(evt);
            }
        });
    
        jButton10.setText("Stop");
        jButton10.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButton10ActionPerformed(evt);
            }
        });
    
        jButton11.setText("Start");
        jButton11.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButton11ActionPerformed(evt);
            }
        });
    
        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addContainerGap()
                .addComponent(jButton1, javax.swing.GroupLayout.PREFERRED_SIZE, 73, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                .addComponent(jButton2, javax.swing.GroupLayout.PREFERRED_SIZE, 73, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(jButton11)
                    .addComponent(jButton3, javax.swing.GroupLayout.PREFERRED_SIZE, 73, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(layout.createSequentialGroup()
                        .addComponent(jButton4, javax.swing.GroupLayout.PREFERRED_SIZE, 73, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                        .addComponent(jButton5, javax.swing.GroupLayout.PREFERRED_SIZE, 73, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(jButton6, javax.swing.GroupLayout.PREFERRED_SIZE, 73, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(jButton7, javax.swing.GroupLayout.PREFERRED_SIZE, 73, javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addGroup(layout.createSequentialGroup()
                        .addComponent(jButton10)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                        .addComponent(jButton8)))
                .addGap(66, 66, 66))
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addGap(23, 23, 23)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(jButton7, javax.swing.GroupLayout.DEFAULT_SIZE, 243, Short.MAX_VALUE)
                    .addComponent(jButton6, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                    .addComponent(jButton5, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                    .addComponent(jButton4, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                    .addComponent(jButton3, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                    .addComponent(jButton2, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                    .addComponent(jButton1, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                .addGap(18, 18, 18)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jButton8)
                    .addComponent(jButton10)
                    .addComponent(jButton11))
                .addGap(20, 20, 20))
        );
    
        pack();
    }                        
    
    private void passarParaTxt(int elementos)
    {
        readWrite.openOutputFile(filetxt);
        for(int i = 0;i<elementos;i++)
        {
            readWrite.writeOutputLine(""+teclas[i]);
            readWrite.writeOutputLine(""+tempoPressionado[i]+"");
            
        }
        readWrite.closeOutputFile();
    }
    private void onExit()
    {
         readWrite.openInputFile("Hack/Hack.ino"); 
         int j=0;
         while(readWrite.hasInputLine())
         {
             texto[j] = readWrite.readInputLine();
             System.out.println(texto[j]);
             j++;
         }
         readWrite.closeInputFile();
         for(int i=0;i<qtdElementos;i++)
         {
             if(i==0)
             {
                 texto[1]= (teclas[i]+"");
             }
             else{
             texto[1]= (texto[1]+" ,"+ teclas[i]);
             }
         }
         for(int i=0;i<qtdElementos;i++)
         {
             if(i==0)
             {
                 texto[4]= (tempoPressionado[i]+"");
             }
             else{
             texto[4]= (texto[4]+" ,"+ tempoPressionado[i]);
             }
         }
         texto[6] = ("int qtdElementos ="+ qtdElementos+";");
         readWrite.openOutputFile("Hack/Hack.ino");
         j=0;
         while(texto[j]!=null)
         {
             readWrite.writeOutputLine(texto[j]);
             j++;
         }
         readWrite.closeOutputFile();
             
    }
    private void comecarVazio()
    {
        tempoSemTocarInicial = System.currentTimeMillis();
    }
    private void terminarVazio()
    {
        tempoSemTocarFinal = System.currentTimeMillis();
        tempoSemTocarTotal = tempoSemTocarFinal - tempoSemTocarInicial;
        teclas[qtdElementos]= 0;
        tempoPressionado[qtdElementos] = tempoSemTocarTotal;
        qtdElementos++;
        qtdElementos = checarCheio(qtdElementos);
    }
    private int checarCheio(int numeroDeElementos)
    {
        if(numeroDeElementos>=99998)
        {
            passarParaTxt(numeroDeElementos);
            numeroDeElementos = 0;
        }
        return numeroDeElementos;
        
    }
        
    private void jButton3ActionPerformed(java.awt.event.ActionEvent evt) {                                         
            
    }                                        
        
    private void jButton7ActionPerformed(java.awt.event.ActionEvent evt) {                                         
                
    }                                        
        
    private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {                                         
                
    }                                        
    
    private void jButton8ActionPerformed(java.awt.event.ActionEvent evt) {                                         
        onExit();
        System.exit(0);
    }                                        
        
    private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {                                         
                
    }                                        
        
    private void jButton1MousePressed(java.awt.event.MouseEvent evt) {                                      
        terminarVazio();
        tempoApertadoDo = System.currentTimeMillis();
    }                                     
        
    private void jButton1MouseReleased(java.awt.event.MouseEvent evt) {                                       
        tempoSoltoDo = System.currentTimeMillis();
        tempoTotalDo = tempoSoltoDo - tempoApertadoDo;
        teclas[qtdElementos]= 1;
        tempoPressionado[qtdElementos] = tempoTotalDo;
        qtdElementos++;
        qtdElementos = checarCheio(qtdElementos);
        comecarVazio();
    }                                      
        
    private void jButton2MousePressed(java.awt.event.MouseEvent evt) {                                      
        terminarVazio();
        tempoApertadoRe = System.currentTimeMillis();
            
    }                                     
        
    private void jButton2MouseReleased(java.awt.event.MouseEvent evt) {                                       
        tempoSoltoRe = System.currentTimeMillis();
        tempoTotalRe = tempoSoltoRe - tempoApertadoRe;
        teclas[qtdElementos]= 2;
        tempoPressionado[qtdElementos] = tempoTotalRe;
        qtdElementos++;
        qtdElementos = checarCheio(qtdElementos);
        comecarVazio();
    }                                      
        
    private void jButton10ActionPerformed(java.awt.event.ActionEvent evt) {                                          
        tempoSemTocarFinal = System.currentTimeMillis();
        tempoSemTocarTotal = tempoSemTocarFinal - tempoSemTocarInicial;
        passarParaTxt(qtdElementos);
    }                                         
    
    private void jButton11ActionPerformed(java.awt.event.ActionEvent evt) {                                          
        tempoSemTocarInicial = System.currentTimeMillis();
    }                                         
    
    private void jButton3MousePressed(java.awt.event.MouseEvent evt) {                                      
        terminarVazio();
        tempoApertadoMi = System.currentTimeMillis();
    }                                     
    
    private void jButton3MouseReleased(java.awt.event.MouseEvent evt) {                                       
        tempoSoltoMi = System.currentTimeMillis();
        tempoTotalMi = tempoSoltoMi - tempoApertadoMi;
        teclas[qtdElementos]= 3;
        tempoPressionado[qtdElementos] = tempoTotalMi;
        qtdElementos++;
        qtdElementos = checarCheio(qtdElementos);
        comecarVazio();
    }                                      
    
    private void jButton4MousePressed(java.awt.event.MouseEvent evt) {                                      
        terminarVazio();
        tempoApertadoFa = System.currentTimeMillis();
    }                                     
    
    private void jButton4MouseReleased(java.awt.event.MouseEvent evt) {                                       
        tempoSoltoFa = System.currentTimeMillis();
        tempoTotalFa = tempoSoltoFa - tempoApertadoFa;
        teclas[qtdElementos]= 4;
        tempoPressionado[qtdElementos] = tempoTotalFa;
        qtdElementos++;
        qtdElementos = checarCheio(qtdElementos);
        comecarVazio();
    }                                      
    
    private void jButton5MousePressed(java.awt.event.MouseEvent evt) {                                      
        terminarVazio();
        tempoApertadoSol = System.currentTimeMillis();
    }                                     
    
    private void jButton5MouseReleased(java.awt.event.MouseEvent evt) {                                       
        tempoSoltoSol = System.currentTimeMillis();
        tempoTotalSol = tempoSoltoSol - tempoApertadoSol;
        teclas[qtdElementos]= 5;
        tempoPressionado[qtdElementos] = tempoTotalSol;
        qtdElementos++;
        qtdElementos = checarCheio(qtdElementos);
        comecarVazio();
    }                                      
    
    private void jButton6MousePressed(java.awt.event.MouseEvent evt) {                                      
        terminarVazio();
        tempoApertadoLa = System.currentTimeMillis();
    }                                     
    
    private void jButton6MouseReleased(java.awt.event.MouseEvent evt) {                                       
        tempoSoltoLa = System.currentTimeMillis();
        tempoTotalLa = tempoSoltoLa - tempoApertadoLa;
        teclas[qtdElementos]= 6;
        tempoPressionado[qtdElementos] = tempoTotalLa;
        qtdElementos++;
        qtdElementos = checarCheio(qtdElementos);
        comecarVazio();
    }                                      
    
    private void jButton7MousePressed(java.awt.event.MouseEvent evt) {                                      
        terminarVazio();
        tempoApertadoSi = System.currentTimeMillis();
    }                                     
    
    private void jButton7MouseReleased(java.awt.event.MouseEvent evt) {                                       
        tempoSoltoSi = System.currentTimeMillis();
        tempoTotalSi = tempoSoltoSi - tempoApertadoSi;
        teclas[qtdElementos]= 7;
        tempoPressionado[qtdElementos] = tempoTotalSi;
        qtdElementos++;
        qtdElementos = checarCheio(qtdElementos);
        comecarVazio();
    }                                      
    
    public static void main(String args[]) {
                    
        try {
            for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) {
                if ("Nimbus".equals(info.getName())) {
                    javax.swing.UIManager.setLookAndFeel(info.getClassName());
                    break;
                }
            }
        } catch (ClassNotFoundException ex) {
            java.util.logging.Logger.getLogger(Teclado.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (InstantiationException ex) {
            java.util.logging.Logger.getLogger(Teclado.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (IllegalAccessException ex) {
            java.util.logging.Logger.getLogger(Teclado.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (javax.swing.UnsupportedLookAndFeelException ex) {
            java.util.logging.Logger.getLogger(Teclado.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        }
            
        java.awt.EventQueue.invokeLater(new Runnable() {


            public void run() {
                new Teclado().setVisible(true);
            }
        });
    }         
    private javax.swing.JButton jButton1;
    private javax.swing.JButton jButton10;
    private javax.swing.JButton jButton11;
    private javax.swing.JButton jButton2;
    private javax.swing.JButton jButton3;
    private javax.swing.JButton jButton4;
    private javax.swing.JButton jButton5;
    private javax.swing.JButton jButton6;
    private javax.swing.JButton jButton7;
    private javax.swing.JButton jButton8;                  
}