beginEnterprise()



Açıklama

Kullanıcı adı ve parola kimlik doğrulaması ( PEAP / MSCHAPv2 ) ile ortak bir WPA2 Enterprise ağı için WiFiNINA kitaplığının ağ ayarlarını başlatır.

Not: Bu özellik NINA ürün yazılımı sürümü 1.3.0 veya üstünü gerektirir. Sağlanan tüm dize parametresinin toplam uzunluğu 4000 baytın altında olmalıdır.

Sözdizimi

WiFi .beginEnterprise (ssid, kullanıcı adı, şifre);
WiFi .beginEnterprise (ssid, kullanıcı adı, şifre, kimlik);
WiFi .beginEnterprise (ssid, kullanıcı adı, şifre, kimlik, ca);

Parametreler

ssid : SSID (Hizmet Kümesi Tanımlayıcısı) bağlanmak istediğiniz WiFi ağının adıdır.
kullanıcı adı : WPA2 Enterprise (RADIUS) kimlik bilgilerinin kullanıcı adı bölümü
password : WPA2 Enterprise (RADIUS) kimlik bilgilerinin şifre kısmı
kimlik : WPA2 kurumsal kimliği (isteğe bağlı)
ca : doğrulanacak kök sertifika (dize) (isteğe bağlı)

İadeler

Bir ağa bağlandığında WL_CONNECTED
Bir ağa bağlı değil, ancak açıkken WL_IDLE_STATUS

Misal

/*
  This example connects to an WPA2 Enterprise WiFi network.
  Then it prints the  MAC address of the WiFi module,
  the IP address obtained, and other network details.

  Based on ConnectWithWPA.ino by dlf (Metodo2 srl) and Tom Igoe
*/

#include <SPI.h>
#include <WiFiNINA.h>

#include "arduino_secrets.h"
///////please enter your sensitive data in the Secret tab/arduino_secrets.h
char ssid[] = SECRET_SSID;  // your WPA2 enterprise network SSID (name)
char user[] = SECRET_USER;  // your WPA2 enterprise username
char pass[] = SECRET_PASS;  // your WPA2 enterprise password
int status = WL_IDLE_STATUS;     // the Wifi radio's status

void setup() {
  //Initialize serial and wait for port to open:
  Serial.begin(9600);
  while (!Serial) {
    ; // wait for serial port to connect. Needed for native USB port only
  }

  // check for the WiFi module:
  if (WiFi.status() == WL_NO_MODULE) {
    Serial.println("Communication with WiFi module failed!");
    // don't continue
    while (true);
  }

  String fv = WiFi.firmwareVersion();
  if (fv < WIFI_FIRMWARE_LATEST_VERSION) {
    Serial.println("Please upgrade the firmware");
  }

  // attempt to connect to Wifi network:
  while (status != WL_CONNECTED) {
    Serial.print("Attempting to connect to WPA SSID: ");
    Serial.println(ssid);
    // Connect to WPA2 enterprise network:
    // - You can optionally provide additional identity and CA cert (string) parameters:
    //      WiFi.beginEnterprise(ssid, user, pass, identity, caCert)
    // . if your network requires them.
    status = WiFi.beginEnterprise(ssid, user, pass);

    // wait 10 seconds for connection:
    delay(10000);
  }

  // you're connected now, so print out the data:
  Serial.print("You're connected to the network");
  printCurrentNet();
  printWifiData();

}

void loop() {
  // check the network connection once every 10 seconds:
  delay(10000);
  printCurrentNet();
}

void printWifiData() {
  // print your board's IP address:
  IPAddress ip = WiFi.localIP();
  Serial.print("IP Address: ");
  Serial.println(ip);

  // print your MAC address:
  byte mac[6];
  WiFi.macAddress(mac);
  Serial.print("MAC address: ");
  printMacAddress(mac);
}

void printCurrentNet() {
  // print the SSID of the network you're attached to:
  Serial.print("SSID: ");
  Serial.println(WiFi.SSID());

  // print the MAC address of the router you're attached to:
  byte bssid[6];
  WiFi.BSSID(bssid);
  Serial.print("BSSID: ");
  printMacAddress(bssid);

  // print the received signal strength:
  long rssi = WiFi.RSSI();
  Serial.print("signal strength (RSSI):");
  Serial.println(rssi);

  // print the encryption type:
  byte encryption = WiFi.encryptionType();
  Serial.print("Encryption Type:");
  Serial.println(encryption, HEX);
  Serial.println();
}

void printMacAddress(byte mac[]) {
  for (int i = 5; i >= 0; i--) {
    if (mac[i] < 16) {
      Serial.print("0");
    }
    Serial.print(mac[i], HEX);
    if (i > 0) {
      Serial.print(":");
    }
  }
  Serial.println();
}


See Also