módulo WIFI para comunicación de KL25Z midiendo corriente a través de una sonda amperimétrica con Android App neurGAI

Dependencies:   WiflyInterface mbed

Fork of wiflyServer by Gorka Bueno

Committer:
gbm
Date:
Sun Feb 28 17:19:31 2016 +0000
Revision:
0:6d78e05ac19d
Child:
1:a340ab744f01
server con wifly, por el puerto 7

Who changed what in which revision?

UserRevisionLine numberNew contents of line
gbm 0:6d78e05ac19d 1 /*
gbm 0:6d78e05ac19d 2 // este es el programa a ejecutar en ordenador, como cliente (tutoriales de java): https://docs.oracle.com/javase/tutorial/networking/sockets/readingWriting.html
gbm 0:6d78e05ac19d 3
gbm 0:6d78e05ac19d 4 import java.io.*;
gbm 0:6d78e05ac19d 5 import java.net.*;
gbm 0:6d78e05ac19d 6
gbm 0:6d78e05ac19d 7 public class EchoClient {
gbm 0:6d78e05ac19d 8 public static void main(String[] args) throws IOException {
gbm 0:6d78e05ac19d 9
gbm 0:6d78e05ac19d 10 if (args.length != 2) {
gbm 0:6d78e05ac19d 11 System.err.println(
gbm 0:6d78e05ac19d 12 "Usage: java EchoClient <host name> <port number>");
gbm 0:6d78e05ac19d 13 System.exit(1);
gbm 0:6d78e05ac19d 14 }
gbm 0:6d78e05ac19d 15
gbm 0:6d78e05ac19d 16 String hostName = args[0];
gbm 0:6d78e05ac19d 17 int portNumber = Integer.parseInt(args[1]);
gbm 0:6d78e05ac19d 18
gbm 0:6d78e05ac19d 19 try (
gbm 0:6d78e05ac19d 20 Socket echoSocket = new Socket(hostName, portNumber);
gbm 0:6d78e05ac19d 21 PrintWriter out =
gbm 0:6d78e05ac19d 22 new PrintWriter(echoSocket.getOutputStream(), true);
gbm 0:6d78e05ac19d 23 BufferedReader in =
gbm 0:6d78e05ac19d 24 new BufferedReader(
gbm 0:6d78e05ac19d 25 new InputStreamReader(echoSocket.getInputStream()));
gbm 0:6d78e05ac19d 26 BufferedReader stdIn =
gbm 0:6d78e05ac19d 27 new BufferedReader(
gbm 0:6d78e05ac19d 28 new InputStreamReader(System.in))
gbm 0:6d78e05ac19d 29 ) {
gbm 0:6d78e05ac19d 30 String userInput;
gbm 0:6d78e05ac19d 31 while ((userInput = stdIn.readLine()) != null) {
gbm 0:6d78e05ac19d 32 out.println(userInput);
gbm 0:6d78e05ac19d 33 System.out.println("echo: " + in.readLine());
gbm 0:6d78e05ac19d 34 }
gbm 0:6d78e05ac19d 35 } catch (UnknownHostException e) {
gbm 0:6d78e05ac19d 36 System.err.println("Don't know about host " + hostName);
gbm 0:6d78e05ac19d 37 System.exit(1);
gbm 0:6d78e05ac19d 38 } catch (IOException e) {
gbm 0:6d78e05ac19d 39 System.err.println("Couldn't get I/O for the connection to " +
gbm 0:6d78e05ac19d 40 hostName);
gbm 0:6d78e05ac19d 41 System.err.println(e);
gbm 0:6d78e05ac19d 42 System.exit(1);
gbm 0:6d78e05ac19d 43 }
gbm 0:6d78e05ac19d 44 }
gbm 0:6d78e05ac19d 45 }
gbm 0:6d78e05ac19d 46
gbm 0:6d78e05ac19d 47 */
gbm 0:6d78e05ac19d 48
gbm 0:6d78e05ac19d 49 #include "mbed.h"
gbm 0:6d78e05ac19d 50 #include "WiflyInterface.h"
gbm 0:6d78e05ac19d 51
gbm 0:6d78e05ac19d 52 #define ECHO_SERVER_PORT 7
gbm 0:6d78e05ac19d 53
gbm 0:6d78e05ac19d 54 WiflyInterface wifly(D3, D2, D5, LED1, "wifisarea", "wifi0712", WPA);
gbm 0:6d78e05ac19d 55
gbm 0:6d78e05ac19d 56 int main (void)
gbm 0:6d78e05ac19d 57 {
gbm 0:6d78e05ac19d 58 printf("\nEmpezando...\n\r");
gbm 0:6d78e05ac19d 59 wifly.init(); // use DHCP
gbm 0:6d78e05ac19d 60 while (!wifly.connect()); // join the network
gbm 0:6d78e05ac19d 61 printf("\nLa direccion IP es %s\n\r", wifly.getIPAddress());
gbm 0:6d78e05ac19d 62
gbm 0:6d78e05ac19d 63 TCPSocketServer server;
gbm 0:6d78e05ac19d 64 server.bind(ECHO_SERVER_PORT);
gbm 0:6d78e05ac19d 65 server.listen();
gbm 0:6d78e05ac19d 66
gbm 0:6d78e05ac19d 67 printf("\nEsperando conexion...\n");
gbm 0:6d78e05ac19d 68 TCPSocketConnection client;
gbm 0:6d78e05ac19d 69 server.accept(client);
gbm 0:6d78e05ac19d 70 printf("\nServidor aceptado...\n");
gbm 0:6d78e05ac19d 71 wait(1); //si no se le mete un pequeño retardo, se queda colgado. También vale con el printf anterior
gbm 0:6d78e05ac19d 72
gbm 0:6d78e05ac19d 73 char buffer[256];
gbm 0:6d78e05ac19d 74 while (true) {
gbm 0:6d78e05ac19d 75 int n = client.receive(buffer, sizeof(buffer));
gbm 0:6d78e05ac19d 76 if (n <= 0) continue;
gbm 0:6d78e05ac19d 77 buffer[n] = 0;
gbm 0:6d78e05ac19d 78
gbm 0:6d78e05ac19d 79 client.send_all(buffer, n);
gbm 0:6d78e05ac19d 80 }
gbm 0:6d78e05ac19d 81 }