شیلد اترنت آردوینو-بخش دوم

شیلد اترنت آردوینو-بخش دوم

چگونه با شیلد اترنت آردواینو از طریق کتابخانه میتوان به راحتی ارتباط برقرار کرد در این قسمت میخواهیم کتابخانه اترنت آردواینو را به شکل کاملا کاربردی به همراه مثال توضیح دهیم پس همچنان با ما همراه باشید .

  • معرفی کتابخانه اترنت آردوینو

با استفاده از کتابخانه اترنت آردوینو و شیلد آردوینو، می توان برد آدوینو را به اینترنت متصل کرد که هم می تواند بصورت Slave کار کند و دیتاهای بیرون را دریافت کند و هم می تواند Client  باشد و به سایر نودهای بیرون دیتا ارسال کند. آردوینو با استفاده از پروتکل SPI با شیلد ارتباط برقرار می کند. برای برقرای ارتباط توابع زیر تعریف شده است:

Ethernet.begin:

این تابع تنظیمات شبکه و کتابخانه را انجام می دهد. نحوه استفاده :

Ethernet.begin(mac, ip, dns, gateway, subnet)code

Mac آدرس فیزیکی برد می باشد و در ورژن های جدید شیلد اترنت، یک برچسب بر روی برد قرار دارد که بر روی آن ادرس فیزیکی نوشته شده است.

IP  ادرس برد اترنت می باشد.

Gateway و Subnet اختیاری هستند.

 

Ethernet.localIP:

این تابع برای مشخص کردن IP شیلد آردوینو بکار می رود و زمانی مفید است که آدرس بصورت اتوماتیک توسط DHCP انجام می شود.

 

code1

 

 

 

 

 

 

 

 

 

 

 

 

 

Ethernet.maintain:

هنگام تخصیص یک IP آدرس توسط DHCP ، دستگاه اترنت آدرس تخصیص یافته را برای مدت معینی در اختیار دارد. برای تجدید زمان آدرس از این تابع استفاده می کنند و بسته به ساختار سرور ممکن است آدرس جدیدی دریافت کند و یا همان آدرس قبلی را نگه دارد و یا اینکه آدرسی اختصاص نیابد.

IPAddress:

برای تعریف آدرس IP  محلی و یا ریموت استفاده می شود.

برای مثال کد زیر تعریف IP را نشان می دهد و آدرس آن را بر روی مانیتور نمایش می دهد.

code2

 

 

 

 

 

 

 

 

 

 

EthernetServer:

یک سرور را ایجاد می کند که به اتصالات داخلی شبکه گوش می دهد.

Server(port);

برای مثال برنامه زیر به اتصالات داخلی گوش می دهد و درصورت برقراری ارتباط دیتای دریافتی از client را به خود client برمی گرداند.

code3

 

 

 

 

 

 

 

 

code4

 

 

 

 

 

 

 

 

 

  • server.begin:

به سرور می گوید شروع به گوش دادن به اتصالات داخلی شبکه بکن. مثلا اگر بخواهیم داده ای بصورت آنلاین از اینترنت بگیریم از این تابع استفاده می کنیم که هر وقت داده از اینترنت رسید یه سری عملیات انجام شود.

  • server.available:

Client را مشخص می کند که به سرور متصل است و یه سری دیتای آماده برای تبادل دارد.

 

  • server.write:

برای نوشتن اطلاعات بر روی تمام Clientهای متصل به سرور کاربرد دارد.

server.write(buf, len)

server.write(val)

Val : مقدار تک بیتی یا کاراکتر برای نوشتن بر روی Clienها

Buf :  یک آرایه شامل یه سری از بایت ها

Len : طول بافر

دستورات Print و Println نیز مشابه همین دستور هستند.

 

  • EthernetClient:

یک Client را ایجاد می کند که می تواند با یک IP آدرس یا یک پورت ارتباط برقرار کند.

 

  • if (EthernetClient)

مشخص می کند آیا Client آماده است.

 

  • client.connected:

اگر Client به سرور وصل باشد True ، و اگر وصل نباشد False را برمی گرداند.

  • connect:

با یک IPآدرس و یا پورت مشخص ارتباط برقرار می کند.


client.connect(ip, port)   or   client.connect(URL, port)

  • client.write:

اطلاعات Client را بر روی سروری که Client به آن متصل است می نویسد.

client.write(val)
client.write(buf, len)

  • client.read:

دیتای ارسالی از سرور به Client متصل به آن را می خواند.

 

  • flush:

تا زمانی که تمامی کاراکترهای ارسالی داخل بافر، ارسال شوند، منتظر می ماند.

 

  • stop:

ارتباط با سرور را قطع می کند.

کتابخانه اترنت آردوینو دارای مثالهای آماده زیر می باشد:

  • ChatServer: راه اندازی یک سرور ساده
  • WebClient: یک درخواست HTTP را ایجاد کنید.
  • WebClientRepeating: درخواست های HTTP تکرار شونده را ایجاد کنید.
  • WebServer: یک صفحه ساده HTML را میزبانی کنید که مقادیر سنسور آنالوگ را نمایش دهد.
  • PachubeClient: به سایت com متصل شوید. این سایت عملیات datalogging را به طور رایگان امکان پذیر می کند.
  • PachubeClientString: رشته ها را به com ارسال کنید.
  • BarometricPressureWebServer: مقادیر را از یک سنسور فشار بارومتری به صورت یک صفحه وب به خروجی ارسال می کند.
  • UDPSendReceiveString: رشته های متنی را از طریق UDP ارسال و دریافت کنید.
  • DhcpChatServer: یک چت سرور ساده DHCP
  • DhcpAddressPrinter: یک آدرس IP را از طریق DHCP گرفته و در خروجی چاپ کنید.
  • TwitterClient: یک کلاینت Twitter با رشته ها
  • TelnetClient: یک کلاینت ساده Telnet
خیلی بدضعیفمتوسطخوبخیلی عالی (2 نظر, امتیاز کل: 5,00 از 5)
Loading...

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *