Go Down

Topic: Conexão Arduino com Servidor Java (Read 174 times) previous topic - next topic

caiquesilvafarias

Codigo Arduino:

#include <Ethernet.h>
#include <MFRC522.h>
#include <SPI.h>

#define SS_PIN 6
#define RST_PIN 5
MFRC522 mfrc522(SS_PIN, RST_PIN);   // Create MFRC522 instance.

IPAddress serverIp(192, 168, 0, 104);
int serverPort =4444;

byte mac[] = {0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED};
IPAddress ip(192, 168, 1, 105);

EthernetClient client;

void setup() { 
  Ethernet.begin(mac, ip);
  SPI.begin();
  Serial.begin(9600); 
  mfrc522.PCD_Init();  // Inicia MFRC522
  Serial.println("Aproxime o seu cartao do leitor...");
}
void loop(){
  //while (!Serial) {
  //  ; // Aguardando conexão da porta serial. Necessário para portas USB
  //}

  delay(5000); // tempo para o Shield inicializar
 
  if ( ! mfrc522.PICC_IsNewCardPresent())  {
    return;
  }
  if ( ! mfrc522.PICC_ReadCardSerial())   {
    return;
  }
 
  Serial.print("UID da tag :");
  String conteudo= "";
  byte letra;
  for (byte i = 0; i < mfrc522.uid.size; i++)   {
     conteudo.concat(String(mfrc522.uid.uidByte < 0x10 ? " 0" : " "));
     conteudo.concat(String(mfrc522.uid.uidByte, HEX));
  }
  conteudo.toUpperCase();
  Serial.println(conteudo.substring(1));
 
  if (client.connect(serverIp, serverPort)) {
    Serial.println("CONSULTANDO SERVIDOR!");
      client.write(conteudo.substring(1).c_str());
      delay(1000);
     
      //Serial.println("Resposta do servidor:");
      //String a = "";
      //while(client.available()){
      //  Serial.println(client.readString());
      //}
     
  } else {
    Serial.println("CONEXÃO COM O SERVIDOR FALHOU!");
  } 
  client.stop();
  Serial.println("Conexão encerrada\n\n"); 
 
}





Codigo java :

/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package sistema;

import java.io.IOException;
import java.net.ServerSocket;
import java.net.Socket;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import java.util.Scanner;
import java.util.logging.Level;
import java.util.logging.Logger;

/**
 *
 * @author caiqu
 */
public class servidor {
   
    public static void main(String[] args) {
        // TODO code application logic here
         try {               
                ServerSocket server = new ServerSocket(4444);
                System.out.println("Criando Socker na porta 4444");
                while (true) {
                    System.out.println("Aguardando conexão");
                    Socket client = server.accept();
                    System.out.println("Conexão estabelecida com o IP "+client.getInetAddress());
                   
                   
                    //ler mensagem enviada pelo cliente
                    Scanner entrada = new Scanner(client.getInputStream()); 
                    System.out.print("Recebendo do cliente:");
                    String cartaoID = entrada.nextLine();
                    System.out.println(cartaoID);
                   
                    String DRIVER = "com.mysql.jdbc.Driver";
                    String URL = "jdbc:mysql://localhost:3306/logarduino";
                    String USER = "root";
                    String PASS = "1234";

                    // buscar no banco por entrada.nextLine()
                    Class.forName(DRIVER);
                    Connection conexao = DriverManager.getConnection(URL, USER, PASS);
                   
                    if(conexao != null){
                        System.out.println("Conexão com o banco efetuada com sucessso");
                    } else {
                        System.out.println("Não foi possível conectar ao banco de dados");
                    }
                   
                    String sql = "INSERT INTO log(tag) values('"+cartaoID+"');";
                    PreparedStatement stmt = conexao.prepareStatement(sql);
                    if(!stmt.execute()){
                        System.out.println("Inserido com sucesso!");
                    } else {
                        System.out.println("Erro ao inserir no banco");
                    }
                   
                    System.out.println("\n\n");
                    client.close();
                }
            } catch (IOException exception) {
                System.out.print(exception);
        } catch (ClassNotFoundException ex) {
            Logger.getLogger(servidor.class.getName()).log(Level.SEVERE, null, ex);
        } catch (SQLException ex) {
            Logger.getLogger(servidor.class.getName()).log(Level.SEVERE, null, ex);
        }   
   
    }
   
   
}
 

To tentando me conectar com o Servidor que criei no Netbeans mas ta dando erro.

bubulindo

Que erro?

Que servidor?

Tens a certeza que o erro não está no servidor??
This... is a hobby.

Go Up