نمایش نتایج: از 1 به 2 از 2
Like Tree2 لایک
  • 2 Post By hesam.time

موضوع: WiFi Web Client Repeating

  1. #1
    Senior Member
    تاریخ عضویت
    Mar 2013
    محل سکونت
    Iran
    نوشته ها
    138

    Lightbulb WiFi Web Client Repeating

    این مثال به شما نشان می دهد که چگونه درخواست مکرر HTTP را با استفاده از WiFi shield بدهید. با اتصال به http://www.arduino.cc/latest.txt
    محتوای صفحه از طریق پنجره سریال آردینو قابل مشاهده است. این مثال برای یک شبکه دارای رمزنگاری WPA نوشته شده است. برای WEP یا WPA وای فای را تغییر دهید.begin() را مطابق با آن فراخوانی کنید.
    سخت افزار مورد نیاز
    Arduino WiFi Shield
    شیلد سازگار با برد آردینو
    مدار
    شیلد WiFi از پین های 10 ، 11 ، 12، و 13 برای ارتباط SPI به ماژول HDG104 استفاده می کند. پین 4 دیجیتال ، برای کنترل پین انتخاب slave روی SD کارت استفاده می شود. برای این مثال شما باید به شبکه وایرلس 802.11b/g که به اینترنت متصل است؛ دسترسی داشته باشید.
    شما احتیاج خواهید داشت تنظیمات شبکه در طرح را مطابقSSID شبکه خاص خود تغییر دهید.
    برای شبکه های WPA/WPA2 که از رمزنگاری شخصی WPA/WPA2 استفاده می کنند، شما به SSID و پسورد نیاز دارید.شیلد قادر به اتصال به شبکه دارای رمزنگاری قوی WPA2 نیست.
    پسورد در شبکه WEP ، رشته های هگزادسیمال به عنوان کلید شناخته شده هستند. یک شبکه WEP می تواند 4 کلید متفاوت داشته باشد؛ به هر کلید
    یک مقدار”Key Index” اختصاص داده شده است. برای شبکه های رمزگذاری شده ی WEP ،شما به SSID ، کلید ، و شماره کلید احتیاج دارید.
    برای دیدن سایز بزرگ روی عکس کلیک کنید

نام: WiFiWebClientRepeating_bb.jpg
مشاهده: 88
حجم: 12.2 کیلو بایت
    در تصویر بالا ، آردینو باید در زیر شیلد WiFi قرار بگیرد.
    کد:
    #include <SPI.h> #include <WiFi.h> char ssid[] = "yourNetwork"; // شبکه شما SSID (اسم) char pass[] = "secretPassword"; // پسورد شبکه شما int keyIndex = 0; // (مورد نیاز برای WEP) فهرست شماره کلید شبکه شما int status = WL_IDLE_STATUS; // Wifi مقداردهی اولیه به کلاینت سرور WiFiClient client; // آدرس سرور: char server[] = "www.arduino.cc"; // آدرس آی پی سرور (64,131,82,241); unsigned long lastConnectionTime = 0; // آخرین باری که شما به سرور متصل شدید به میلی ثانیه boolean lastConnected = false; // وضعیت اتصال آخرین بار از طریق حلقه اصلی const unsigned long postingInterval = 10*1000; // تاخیر بین بروزرسانی ها، به میلی ثانیه void setup() { // شروع به کار پورت سریال: Serial.begin(9600); // Wifi تلاش برای اتصال به شبکه : while ( status != WL_CONNECTED) { Serial.print("Attempting to connect to SSID: "); Serial.println(ssid); status = WiFi.begin(ssid, pass); // انتظار 10 ثانیه برای اتصال: delay(10000); } // شما اکنون متصل شده اید.چاپ وضعیت: printWifiStatus(); } void loop() { // اگر داده های ورودی از اتصال به شبکه وجود دارد // آن را به پورت سریال ارسال کنید. تها جهت اشکال زدایی while (client.available()) { char c = client.read(); Serial.write(c); } // اگر اتصالی وجود ندارد اما آخرین دفعه وجود داشت // از طریق حلقه ،کلاینت را متوقف کنید. if (!client.connected() && lastConnected) { Serial.println(); Serial.println("disconnecting."); client.stop(); } //اگر شما متصل نیستید و 10 ثانیه از آخرین اتصال شما گذشت // دوباره متصل شوید و داده ها را بفرستید: if(!client.connected() && (millis() - lastConnectionTime > postingInterval)) { httpRequest(); } // وضعیت اتصال را از طریق حلقه برای دفعه بعد ذخیره کنید lastConnected = client.connected(); } // به سرور می شود HTTP این متد باعث اتصال: void httpRequest() { // اگر اتصال موفقیت آمیز بود: if (client.connect(server, 80)) { Serial.println("connecting..."); // درخواست HTTP PUT بفرستید: client.println("GET /latest.txt HTTP/1.1"); client.println("Host: www.arduino.cc"); client.println("User-Agent: arduino-ethernet"); client.println("Connection: close"); client.println(); // ذکر زمانی که اتصال ساخته شد: lastConnectionTime = millis(); } else { // اگر شما نتوانستید متصل شوید : Serial.println("connection failed"); Serial.println("disconnecting."); client.stop(); } } void printWifiStatus() { // شبکه ای که به آن متصل هستید را چاپ کنید SSID: Serial.print("SSID: "); Serial.println(WiFi.SSID()); // Wifi چاپ آی پی آدرس شیلد : IPAddress ip = WiFi.localIP(); Serial.print("IP Address: "); Serial.println(ip); //چاپ قدرت سیگنال دریافتی: long rssi = WiFi.RSSI(); Serial.print("signal strength (RSSI):"); Serial.print(rssi); Serial.println(" dBm"); }
    لینک سایت:
    ویرایش توسط hesam.time : 04-04-2013 در ساعت 06:23 AM

  2. #2
    Junior Member
    تاریخ عضویت
    Apr 2013
    نوشته ها
    5
    بازهم از تزجمه زیبا و روانتان تشکر می کنم

کلمات کلیدی این موضوع

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •  

SEO by vBSEO