Arduino:Библиотеки/WiFi/Класс WiFi/status()

Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску

Перевод: Максим Кузьмин
Проверка/Оформление/Редактирование: Мякишев Е.А.


Функция status()[1]

Возвращает информацию о статусе соединения.

Синтаксис

WiFi.status()

Параметры

Нет.

Что возвращает

WL_CONNECTED  если соединение с WiFi-сетью успешно установлено
WL_NO_SHIELD  если не подключен WiFi-модуль
WL_IDLE_STATUS  временный статус. Он возвращается, когда функция WiFi.begin() вызвана и остается активной. Если количество попыток подключения будет исчерпано, этот статус меняется на WL_CONNECT_FAILED, а если соединение будет успешно установлено, то на WL_CONNECTED
WL_NO_SSID_AVAIL  нет доступных SSID
WL_SCAN_COMPLETED  когда завершено сканирование сетей
WL_CONNECT_FAILED  когда все попытки подключения заканчиваются неуспешно
WL_CONNECTION_LOST  если соединение прервано
WL_DISCONNECTED  при отключении от сети

Пример

#include <SPI.h>
#include <WiFi.h>

char ssid[] = "yourNetwork";                     // SSID вашей сети (ее название)
char key[] = "D0D0DEADF00DABBADEAFBEADED";       // ключ к вашей сети
int keyIndex = 0;                                // индекс ключа к вашей сети
int status = WL_IDLE_STATUS;                     // статус WiFi-соединения

void setup() {
  // инициализируем последовательную коммуникацию и ждем открытия порта:
  Serial.begin(9600);
  while (!Serial) {
    ; // ждем подключения последовательного порта (нужно только для Leonardo)
  }

  // проверяем наличие WiFi-модуля:
  if (WiFi.status() == WL_NO_SHIELD) {
    Serial.println("WiFi shield not present");  // "WiFi-модуль не подключен"
    // дальше не продолжаем
    while (true);
  }

  // пытаемся подключиться к WiFi-сети:
  while ( status != WL_CONNECTED) {
    Serial.print("Attempting to connect to WEP network, SSID: ");  // "Пытаемся подключиться к WEP-сети, SSID: "
    Serial.println(ssid);
    status = WiFi.begin(ssid, keyIndex, key);

    // 10 секунд ждем подключения:
    delay(10000);
  }

  // если подключились, сообщаем об этом:
  Serial.print("You're connected to the network");   // "Вы подключились к сети"
}

void loop() {
  // проверяем статус соединения каждые 10 секунд:
  delay(10000);
 Serial.println(WiFi.status());
}

См.также

Внешние ссылки