نمایش نتایج: از 1 به 7 از 7
Like Tree1 لایک
  • 1 Post By sajjad_ser

موضوع: کتابخانه ها (libraries) در آردینو (شیلد های نرم افزاری)

Threaded View

sajjad_ser کتابخانه ها (libraries) در... 05-27-2014, 02:12 PM
sajjad_ser نام شیلد Timer ... 05-27-2014, 07:55 PM
magmagmary دوست گرامی برو به لنک زیر... 10-04-2015, 09:09 AM
  1. #2
    Junior Member
    تاریخ عضویت
    Mar 2014
    نوشته ها
    6
    قبل از شیلد های نرم افزاری من یک کلاس نوشتم که کد برنامه آردینو خودم رو به حداقل برسونم و شیلد های نرم افزاری بتونن از داخل کد خودشون به توابع اصلی بدنه برنامه (setup و loop) دسترسی پیدا کنند.
    در این کتابخانه دو کلاس تعریف شده و در یک فایل با نام "softShield.h" قرار دارند در ادامه به توضیح این کلاس ها می پردازیم

    کلاس softModule :
    این کلاس چیزی نیست جز یک صف حلقوی که تمامی شیلد ها در این صف قرار میگیرند. این کار بدین منظور انجام می شود که توابع setup و update شیلدها در یک حلقه تکرار توسط توابع این کلاس فراخوانی شوند.
    توابع setup مربوط به شیلد ها توسط تابع setup این کلاس و توابع loop شیلد ها توسط تابع loop این کلاس فراخوانی می شوند.
    کلاس softShield :
    تمامی شیلد های نرم افزاری که توسط من نوشته و یا ویرایش میشن از این کلاس ارث می برن.
    ارث بری از این کلاس بخاطر اینه که شیلد ها به صورت خودکار به صف softModule افزوده بشن.

    این کتابخانه و ارث بری از softShield باعث میشه همه شیلد های نرم افزاری برای خودشون توابع setup و loop رو داشته باشن تا از کد نویسی تکراری جلوگیری بشه.
    حال ما میتونیم به این طریق توابع setup و update همه شیلد هایی که در برنامه ازشون استفاده کردیم رو فرخوانی کنیم:

    کد PHP:

    #include <softShield.h>

    void setup(){
      
    softModule::setup();
    }

    void loop(){
      
    softModule::update();

    کد درون setup باعث فراخوانی تابع setup همه شیلد های نرم افزاری میشه و کد درون loop باعث فراخوانی تابع update همه شیلد های نرم افزاری میشه.

    بهمراه این کتابخانه نمونه کدی داخل پوشه baseShield وجود دارد که ساختار کتابخانه هایی که از softShield ارث می برند را نشان میدهد.

    توجه داشته باشید که داشتن این کتابخانه و افزودن این دو خط کد در توابع setup و loop از الزامات استفاده از کتابخانه هایی هست که من در این تاپیک ارسال میکنم و اگه کتابخانه ای بجز softSheild به کتابخانه ی دیگه ای نیاز داشته باشه در پست مربوطه به اون اشاره خواهد شد.

    نام شیلد softSheild
    سایر شیلد های مورد نیاز این شیلد ندارد
    فایل های پیوست شده فایل های پیوست شده
    ویرایش توسط sajjad_ser : 05-27-2014 در ساعت 04:58 PM

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

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

SEO by vBSEO