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
main.cpp@0:6d78e05ac19d, 2016-02-28 (annotated)
- 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?
User | Revision | Line number | New 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 | } |