Advertisement
Guest User

Untitled

a guest
Jan 21st, 2018
92
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.22 KB | None | 0 0
  1. //SERVER
  2.  
  3. #include <ESP8266WiFi.h>
  4. #include <SoftwareSerial.h>
  5. WiFiServer server(80); // server
  6. IPAddress ip(192, 168, 1, 80); // IP
  7. IPAddress gateway(192,168,1,1); // WiFi router
  8. IPAddress subnet(255,255,255,0);
  9.  
  10. char ssid[] = "************"; //SSID
  11. char pass[] = "************"; //Pass
  12. String readString;
  13. unsigned long clientTimer = 0;
  14.  
  15. void setup() {
  16. Serial.begin(9600);
  17. server_start(0);
  18. delay(2000);
  19. Serial.println();
  20. }
  21.  
  22. void loop() {
  23.  
  24. String request;
  25.  
  26. WiFiClient client = server.available();
  27. if (client) {
  28. if (client.connected()) {
  29. request = client.readStringUntil('\r'); // Legge il messaggio dal client
  30. Serial.println(request); // stampa in seriale
  31. if (request == "65 0 2 1 ff ff ff"){ // se il dato ricevuto
  32. for (int A = 0; A < 2; A++){ // allora :
  33. delay(400); //
  34. Serial.println("3"); // invia il dato alla APP Android
  35. }
  36. client.flush();
  37. }
  38. }
  39.  
  40. //client.stop(); // disconnette
  41. clientTimer = millis();
  42. }
  43. while (Serial.available()) { // legge il dato in arrivo dalla APP Android
  44. delay(3);
  45. char c = Serial.read(); // Il dato ricevuto serve alla APP per
  46. readString += c; // svolgere un compito
  47. Serial.println(readString); // alla fine del compito rimanda la conferma del compito
  48. client.println(String(readString)); // invia il dato al Client
  49. readString = ""; // azzera la stringa
  50. }
  51.  
  52.  
  53.  
  54.  
  55. if (millis() - clientTimer > 30000) { // ferma e fa ripartire il server dopo 30 secondi
  56. WiFi.disconnect();
  57. delay(500);
  58. server_start(1);
  59. }
  60. }
  61.  
  62. void server_start(byte restart) {
  63.  
  64. WiFi.config(ip, gateway, subnet);
  65. WiFi.begin(ssid, pass);
  66. while (WiFi.status() != WL_CONNECTED) {
  67. delay(500);
  68. }
  69. server.begin();
  70. delay(500);
  71. clientTimer = millis();
  72. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement