این مثال به شما چگونگی اتصال به یک شبکه رمزگذاری شده WPA2 ،b/g802.11 را با Arduino WiFi shield نشان می دهد. مانیتور سریال آردینو شما ، اطلاعات مربوط به اتصال را به محض آنکه متصل می شود، فراهم خواهد آورد.
سخت افزار موردنیاز
Arduino WiFi Shield
شیلد سازگار با برد آردینو
مدار
شیلد WiFi از پین های 10 ، 11 ، 12، و 13 برای ارتباط SPI به ماژول HDG104 استفاده می کند. پین 4 دیجیتال ، برای کنترل پین انتخاب slave روی SD کارت استفاده می شود. برای این مثال شما باید به شبکه وایرلس 802.11b/g که به اینترنت متصل است؛ دسترسی داشته باشید. شما احتیاج خواهید داشت تنظیمات شبکه در طرح را مطابقSSID شبکه خاص خود تغییر دهید.
برای شبکه های WPA/WPA2 که از رمزنگاری شخصی WPA/WPA2 استفاده می کنند، شما به SSID و پسورد نیاز دارید.شیلد قادر به اتصال به شبکه دارای رمزنگاری قوی WPA2 نیست.
در تصویر بالا ، آردینو باید در زیر شیلد WiFi قرار بگیرد.
کد:
#include <WiFi.h>
char ssid[] = "networkName"; // شبکه شما SSID (اسم)
char pass[] = "yourPassword"; // پسورد شبکه شما
int status = WL_IDLE_STATUS; // وضعیت رادیو وای فای
void setup() {
// مقداردهی اولیه سریال:
Serial.begin(9600);
// تلاش برای اتصال به یک شبکه باز :
Serial.print("Attempting to connect to WPA network: ");
Serial.println(ssid);
status = WiFi.begin(ssid, pass);
// اگر شما متصل نشدید ،اینجا متوقف می شود:
if ( status != WL_CONNECTED) {
Serial.println("Couldn't get a wifi connection");
while(true);
}
// اگر شما متصل هستید :
else {
Serial.print("You're connected to the network");
printCurrentNet();
printWifiData();
}
}
void loop() {
// بررسی اتصال شبکه هر 10 ثانیه:
delay(10000);
printCurrentNet();
}
void printWifiData() {
// چاپ آدرس آی پی شیلد وای فای شما:
IPAddress ip = WiFi.localIP();
Serial.print("IP Address: ");
Serial.println(ip);
Serial.println(ip);
// چاپ آدرس مک شما:
byte mac[6];
WiFi.macAddress(mac);
Serial.print("MAC address: ");
Serial.print(mac[5],HEX);
Serial.print(":");
Serial.print(mac[4],HEX);
Serial.print(":");
Serial.print(mac[3],HEX);
Serial.print(":");
Serial.print(mac[2],HEX);
Serial.print(":");
Serial.print(mac[1],HEX);
Serial.print(":");
Serial.println(mac[0],HEX);
}
void printCurrentNet() {
// شبکه که شما متصلید SSID چاپ:
Serial.print("SSID: ");
Serial.println(WiFi.SSID());
// چاپ آدرس مک روتری که شما متصلید :
byte bssid[6];
WiFi.BSSID(bssid);
Serial.print("BSSID: ");
Serial.print(bssid[5],HEX);
Serial.print(":");
Serial.print(bssid[4],HEX);
Serial.print(":");
Serial.print(bssid[3],HEX);
Serial.print(":");
Serial.print(bssid[2],HEX);
Serial.print(":");
Serial.print(bssid[1],HEX);
Serial.print(":");
Serial.println(bssid[0],HEX);
// چاپ قدرت سیگنال دریافت شده:
long rssi = WiFi.RSSI();
Serial.print("signal strength (RSSI):");
Serial.println(rssi);
// چاپ نوع رمزنگاری :
byte encryption = WiFi.encryptionType();
Serial.print("Encryption Type:");
Serial.println(encryption,HEX);
Serial.println();
}
لینک سایت:Arduino - ConnectWithWPA