Pokaż stronęPoprzednie wersjeOdnośnikiDo góry Ta strona jest tylko do odczytu. Możesz wyświetlić źródła tej strony ale nie możesz ich zmienić. ====== WiFi na ESP32 ====== Obsługa WiFi na ESP32.\\ \\ \\ ===== Deklaracje ===== <code c> #include "Arduino.h" #include <WiFi.h> const String WiFi_SSID = "nazwa_wifi"; // WiFi SSID const String WiFi_password = "haslo_wifi"; // WiFi hasło String WiFi_IP = ""; // WiFi IP uzupełniane po nawiązaniu połączenia WiFiClient wifiClient; void connectWiFi(); </code> \\ \\ ===== Połączenie podczas uruchomienia ===== <code c> void setup() { connectWiFi(); } </code> \\ \\ ===== Ponowne łączenie w przypadku rozłączenia ===== <code c> void loop() { if (WiFi.status() != WL_CONNECTED) { connectWiFi(); } vTaskDelay(pdMS_TO_TICKS(10)); } </code> \\ \\ ===== Funkcja ===== <code c> void connectWiFi() { digitalWrite(BUILT_LED, LOW); WiFi.hostname(myHostname); WiFi.mode(WIFI_STA); WiFi.begin(WiFi_SSID, WiFi_password); int attempt = 0; Serial.print("Connecting to WiFi "); while (WiFi.status() != WL_CONNECTED) { if (attempt == 30) { Serial.println("Reboot po 30 probach polaczenia z WiFi"); ESP.restart(); } ++attempt; vTaskDelay(pdMS_TO_TICKS(500)); wl_status_t status = WiFi.status(); if(status != WL_CONNECTED) { digitalWrite(BUILT_LED, HIGH); Serial.print(" Connecting to WiFi error: "); Serial.println(status); vTaskDelay(pdMS_TO_TICKS(100)); digitalWrite(BUILT_LED, LOW); } } WiFi_IP = WiFi.localIP().toString(); Serial.println("Connected to WiFi:"); Serial.println(" IP: " + String(WiFi_IP)); Serial.println(" Hostname: " + myHostname); long rssi = WiFi.RSSI(); Serial.print(" Signal: "); Serial.print(rssi); Serial.println(" dBm"); } </code> \\ [[inne:sygnal_wifi#poziomy_dbm|Poziomy sygnału dBm]]\\ \\ \\ ===== Kody błędów ===== ^ WL_NO_SHIELD | 255 | assigned when no WiFi shield is present | ^ WL_IDLE_STATUS | 0 | it is a temporary status assigned when WiFi.begin() is called and remains active until the number of attempts expires (resulting in WL_CONNECT_FAILED) or a connection is established (resulting in WL_CONNECTED) | ^ WL_NO_SSID_AVAIL | 1 | assigned when no SSID are available | ^ WL_SCAN_COMPLETED | 2 | assigned when the scan networks is completed | ^ WL_CONNECTED | 3 | assigned when connected to a WiFi network | ^ WL_CONNECT_FAILED | 4 | assigned when the connection fails for all the attempts | ^ WL_CONNECTION_LOST | 5 | assigned when the connection is lost | ^ WL_DISCONNECTED | 6 | assigned when disconnected from a network | programowanie/esp32/wifi.txt ostatnio zmienione: 2024/09/08 12:11przez sases