Advertisement
Guest User

Untitled

a guest
Aug 17th, 2019
72
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.08 KB | None | 0 0
  1. const char* ssid = "VTR-5738907"; //nombre de la red
  2. const char* password = "Figpach7311" ; //contraseña
  3. #include <ESP8266WiFi.h>
  4. #include <Ticker.h>
  5. Ticker blinker;
  6. WiFiServer server(1534); //1534 es el puerto al que se conecta pd
  7.  
  8. IPAddress staticIP(192, 168, 0, 20); //esta es la IP a la que se debe conectar pd
  9. IPAddress gateway(192, 168, 0, 1);
  10. IPAddress subnet(255, 255, 255, 0);
  11.  
  12. const int nChannels = 50;
  13. byte dmxvalues[nChannels];
  14. byte receptor[2];
  15.  
  16. void dmxseo()
  17. {
  18. pinMode(4, OUTPUT);
  19. digitalWrite(4, LOW); //break;
  20. delayMicroseconds(120);
  21. digitalWrite(4, HIGH); //MAB
  22. delayMicroseconds(20);
  23. pinMode(4, INPUT);
  24. Serial1.write(0);
  25. Serial1.write(dmxvalues, nChannels);
  26. }
  27. void setup() {
  28.  
  29.  
  30. Serial.begin(115200);
  31. if (WiFi.config(staticIP, gateway, subnet)) Serial.println("se configuró");
  32.  
  33. delay(10);
  34.  
  35. // Connect to WiFi network
  36. Serial.println();
  37. Serial.println();
  38. Serial.print("Connecting to ");
  39. Serial.println(ssid);
  40.  
  41. WiFi.begin(ssid, password); //esta es para conectarse a una red con contraseña
  42.  
  43. while (WiFi.status() != WL_CONNECTED) {
  44. delay(500);
  45. Serial.print(".");
  46. }
  47. Serial.println("");
  48. Serial.println("WiFi connected");
  49.  
  50. // Start the server
  51. server.begin();
  52. server.setNoDelay(true);
  53. Serial.println("Server started");
  54.  
  55. // Print the IP address
  56. Serial.print("Use this URL to connect: ");
  57. Serial.print("http://");
  58. Serial.println(WiFi.localIP());
  59. Serial.println("/");
  60.  
  61.  
  62. Serial1.begin(250000, SERIAL_8N2); //el objeto Serial1 controla la señal dmx
  63. pinMode(4, OUTPUT); //pin de truco (es el D2) , este pin va hacia el DI del MAX485 y se conecta a TX1 del nodemcu con una resistencia de 100 o 330 ohms
  64. for (int i = 0; i < nChannels; i++) dmxvalues[i] = 0; //reseteo de valores
  65. blinker.attach(0.01, dmxseo);
  66. }
  67.  
  68. void loop() {
  69. WiFiClient client = server.available();
  70. client.setNoDelay(true);
  71.  
  72. if (client)
  73. {
  74. client.setNoDelay(true);
  75. Serial.println("hay cliente");
  76. for (int i = 0; i < nChannels; i++) dmxvalues[i] = 0; //reseteo de valores
  77. while (1)
  78. {
  79. while (client.available())
  80. {
  81. client.readBytes(receptor, 2);
  82. dmxvalues[receptor[0] - 1] = receptor[1]; //se resta 1 , para que el byte 1 desde pd sea el index 0 y asi controle el canal 1 dmx
  83. Serial.print(receptor[0]);
  84. Serial.print(" ");
  85. Serial.println(receptor[1]);
  86. }
  87. if (!client.connected()) break;
  88. }
  89. }
  90. if (WiFi.status() != WL_CONNECTED)
  91. {
  92. //si se deconectó
  93. Serial.println("Se perdió la conexión");
  94. WiFi.begin(ssid);
  95. while (WiFi.status() != WL_CONNECTED) {
  96. delay(500);
  97. Serial.print(".");
  98. }
  99. Serial.println("");
  100. Serial.println("WiFi connected");
  101.  
  102. // Start the server
  103. server.begin();
  104. server.setNoDelay(true);
  105. Serial.println("Server started");
  106.  
  107. // Print the IP address
  108. Serial.print("Use this URL to connect: ");
  109. Serial.print("http://");
  110. Serial.println(WiFi.localIP());
  111. Serial.println(WiFi.hostname());
  112. Serial.println("/");
  113. }
  114. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement