blob: fc47f8802b64c9f7451c6a64a3f20fced07b2d11 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
|
```C++
const char *ssid = "ssid";
const char *pass = "passwd";
bool setupWiFi(const char *wifi_ssid, const char *wifi_pass) {
digitalWrite(LED_BUILTIN, LOW); // включаем светодиод
Serial.print("\n\nSetup WiFi: ");
Serial.println(ssid);
WiFi.mode(WIFI_STA);
uint8_t countWiFi = 20; // кол-во попыток соединения
uint16_t countPause = 500; // пауза между попытками
WiFi.begin(wifi_ssid, wifi_pass);
while ((WiFi.status() != WL_CONNECTED) && countWiFi--) {
Serial.print(countWiFi);
Serial.print('>');
delay(countPause);
}
digitalWrite(LED_BUILTIN, HIGH); // выключаем светодиод
if (WiFi.status() == WL_CONNECTED) {
// индикация IP
Serial.print("\nWiFi connected - OK !\n");
Serial.println(WiFi.localIP());
// индикация силы сигнала
int16_t dBm = WiFi.RSSI();
Serial.print("RSSI dBm = ");
Serial.println(dBm);
quality_RSSI = 2 * (dBm + 100);
if (quality_RSSI >= 100)
quality_RSSI = 100;
Serial.print("RSSI % = ");
Serial.println(quality_RSSI);
Serial.println();
return true;
} else {
return false;
}
}
```
|