آموزش افزایش پورت سریال در آردوینو

در بخش قبل از به شرح بعضی از توابع  SoftwareSerial پرداختیم. در این قسمت قصد داریم به تکمیل آموزش توابع این کتابخانه بپردازیم.

 

()isListening

در صورتی که پورت سریال ساخته شده آماده برای دریافت اطلاعات باشه، این تابع مقدار true و در غیر این صورت مقدار false را برمی‌گرداند.

 

 

()peek

این تابع دیتایی که بر روی پورت سریال ساخته شده را می‌خواند. این تابع برخلاف تابع read پس از خواندن اطلاعات آن‌ها را بافر گیرنده سریال حذف نمی‌کند.

 

 

()overflow

این تابع اگر بافر گیرنده سریال پر شود ، مقدار True را برمی‌گرداند.بافر گیرنده سریال کتابخانه SoftwareSerial تا ۶۴ بایت را می‌تواند در خود نگه دارد.

مثال :

 

 

 

 

(print(data

این تابع دیتا را به پورت سریال ارسال می‌کند.تابع print دارای فرم های مختلفی می‌باشد.این تابع اعداد صحیح  ، متن ، کاراکتر را به صورت رشته اعداد اعشاری را به صورت رشته  با دو عدد اعشار ارسال می‌کند.به مثال زیر توجه کنید:

این تابع دارای دو ساختار به صورت زیر می‌باشد:

 

 

val : دیتایی می باشد که می‌خواهیم آن را به پروت سریال ارسال کنیم

format : فرمت نمایش و تعداد ممیز اعشار نمایش داده را مشخص می‌کند.

 

برای ارسال اطلاعات به فرمت باینری ( مبنای ۲ )  از BIN ، مبنای ۸ از OCT ، مبنای ۱۰ از DEC و مبنای ۱۶ از HEX  استفاده می‌کنیم. توجه شما را به مثال زیر جلب می‌کنم :

 

همچنین می‌توان تعداد ممیز اعشار را توسط format تعیین نمود.برای این کار کافی است تنها تعداد اعشار مورد نیاز را به جای format قرار دهیم همانند مثال زیر:

 

(println(data

 

این تابع همانند تابع  print می‌کند با ایت تفاوت که با هر بار ارسال اطلاعات دستور رفتن به خط بعد را نیز اجرا می‌کند.

به زبانی ساده تر دو نمونه کد زیر با هم یکسان می‌باشند:

 

 

 

(write(data

به وسیله این تابع می‌توان یک عدد بین ۰ تا ۲۵۵ ، یک رشته و یا یک آرایه (همراه با تعیین طولی از آرایه که قصد ارسال آن را دریم)ارسال کرد.این تابع تعداد کراراکتر‌های فرستاده شده در هر مرحله را نیز میخص مس‌کند. تفاوت این تابع با تابع print

در جیست؟ تابع print  دیتا را به صورت کاراکتر ASCII ارسال می‌کند که باعث می‌شود دیتای ارسالی برای کاربر قابل خواندن و درگ باشد . ولی در مقایل تابع write اطلاعات را به صورت بایتو ناخوانا ارسال می‌کند. علت استفاده از تابع writeدر این است که بعضی از دستگاه‌ها دیتا را با فرمت بایت می‌خوانند.

 

 

به پایان آموزش توسعه پین‌های پروتکل ارتباط سریال در آردوینو رسیدیم . در این  آموزش آموختید که چگونه می‌توان به کمک لایبرری SoftwareSerial تعداد اربتباط سریال در هر بردر را افزایش دهید.

علیرضا قربانی
علیرضا قربانی
علیرضا قربانی هستم دانشجوی مهندسی پزشکی. چیزهای خیلی زیادی رو در دنیا دوست دارم. یک گیک هستم و یشه گفت یک هکر. نه به معنی دزدی پسورد و ایمیل مردم. به معنی عشق به دونستن و عشق به تحقیق درباره خیلی از چیزهایی که می بینم و می‌شنوم. اگر بخوام علاقه‌مندی‌ درجه یکم رو نام ببرم میتونم بگم برنامه نویسی و بعد از اون امبدد سیستم ها.

7 دیدگاه ها

  1. […] آموزش افزایش پورت سریال آردوینو بخش دوم […]

  2. […] آموزش افزایش پورت سریال آردوینو بخش دوم […]

  3. میثم می‌گه:

    برای DUE که ARM است کاربرد داره؟

  4. حمید می‌گه:

    چگونه میزان بافر رو که فرمودید ۶۴ تا می باشد افزایش دهیم

پاسخ دهید

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