mirror of
				https://github.com/0xFEEDC0DE64/arduino-esp32.git
				synced 2025-10-31 14:11:42 +01:00 
			
		
		
		
	If you develop on windows and need cr/lf files, see this:
    https://git-scm.com/book/en/v2/Customizing-Git-Git-Configuration#_formatting_and_whitespace
    Git can handle this by auto-converting CRLF line endings into LF
    when you add a file to the index, and vice versa when it checks out
    code onto your filesystem. You can turn on this functionality with
    the core.autocrlf setting. If you're on a Windows machine, set it
    to true - this converts LF endings into CRLF when you check out code:
    $ git config --global core.autocrlf true
		
	
		
			
				
	
	
		
			93 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			93 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
| /*
 | |
|      Example of connection using Static IP
 | |
|      by Evandro Luis Copercini
 | |
|      Public domain - 2017
 | |
| */
 | |
| 
 | |
| #include <WiFi.h>
 | |
| 
 | |
| const char* ssid     = "your_network_name";
 | |
| const char* password = "your_network_password";
 | |
| const char* host     = "example.com";
 | |
| const char* url      = "/index.html";
 | |
| 
 | |
| IPAddress local_IP(192, 168, 31, 115);
 | |
| IPAddress gateway(192, 168, 31, 1);
 | |
| IPAddress subnet(255, 255, 0, 0);
 | |
| IPAddress primaryDNS(8, 8, 8, 8); //optional
 | |
| IPAddress secondaryDNS(8, 8, 4, 4); //optional
 | |
| 
 | |
| void setup()
 | |
| {
 | |
|   Serial.begin(115200);
 | |
| 
 | |
|   if (!WiFi.config(local_IP, gateway, subnet, primaryDNS, secondaryDNS)) {
 | |
|     Serial.println("STA Failed to configure");
 | |
|   }
 | |
| 
 | |
|   Serial.print("Connecting to ");
 | |
|   Serial.println(ssid);
 | |
| 
 | |
|   WiFi.begin(ssid, password);
 | |
| 
 | |
|   while (WiFi.status() != WL_CONNECTED) {
 | |
|     delay(500);
 | |
|     Serial.print(".");
 | |
|   }
 | |
| 
 | |
|   Serial.println("");
 | |
|   Serial.println("WiFi connected!");
 | |
|   Serial.print("IP address: ");
 | |
|   Serial.println(WiFi.localIP());
 | |
|   Serial.print("ESP Mac Address: ");
 | |
|   Serial.println(WiFi.macAddress());
 | |
|   Serial.print("Subnet Mask: ");
 | |
|   Serial.println(WiFi.subnetMask());
 | |
|   Serial.print("Gateway IP: ");
 | |
|   Serial.println(WiFi.gatewayIP());
 | |
|   Serial.print("DNS: ");
 | |
|   Serial.println(WiFi.dnsIP());
 | |
| }
 | |
| 
 | |
| void loop()
 | |
| {
 | |
|   delay(5000);
 | |
| 
 | |
|   Serial.print("connecting to ");
 | |
|   Serial.println(host);
 | |
| 
 | |
|   // Use WiFiClient class to create TCP connections
 | |
|   WiFiClient client;
 | |
|   const int httpPort = 80;
 | |
|   if (!client.connect(host, httpPort)) {
 | |
|     Serial.println("connection failed");
 | |
|     return;
 | |
|   }
 | |
| 
 | |
|   Serial.print("Requesting URL: ");
 | |
|   Serial.println(url);
 | |
| 
 | |
|   // This will send the request to the server
 | |
|   client.print(String("GET ") + url + " HTTP/1.1\r\n" +
 | |
|                "Host: " + host + "\r\n" +
 | |
|                "Connection: close\r\n\r\n");
 | |
|   unsigned long timeout = millis();
 | |
|   while (client.available() == 0) {
 | |
|     if (millis() - timeout > 5000) {
 | |
|       Serial.println(">>> Client Timeout !");
 | |
|       client.stop();
 | |
|       return;
 | |
|     }
 | |
|   }
 | |
| 
 | |
|   // Read all the lines of the reply from server and print them to Serial
 | |
|   while (client.available()) {
 | |
|     String line = client.readStringUntil('\r');
 | |
|     Serial.print(line);
 | |
|   }
 | |
| 
 | |
|   Serial.println();
 | |
|   Serial.println("closing connection");
 | |
| }
 | |
| 
 |