Aduino Tutorial آموزش آردوینو

آردوینو (قسمت دوم) – PWM

        در این قسمت از فیلم آموزشی بردهای آردوینو، شما با نحوه استفاده از میکروسوئیچ و دیبانس نرم افزاری آن آشنا می شوید. همچنین طریقه ی استفاده از خروجی های انالوگ برای ساخت سیگنال PWM یا مدولاسیون پهنای پالس را فرا خواهیم گرفت. در ادامه استفاده از این سیگنال برای کنترل روشنایی LED را، در یک پروژه پیاده سازی می کنیم. در آخر هم با نحوه استفاده از توابع در محیط نرم افزار آردوینو آشنا می شویم.

 

digitalRead(Pin) :

            مقدار یک پین را به صورت دیجیتال (صفر و یک) می خواند. و به صورت صفر و یک یا LOW , HIGH بر میگرداند.

آشنایی با دستور if :

if (شرط)

{

…..

}

else

{

…..

}

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

            به زبان دیگر در زمان اجرای برنامه شرط داخل پرانتز چک می شود. اگر درست باشد جای آن یک یا TRUE  قرار می دهد. و اگر نادرست باشد صفر یا FALSE  قرار می دهد. با بر قراربودن شرط (یک بودن) دستورات داخل if اجرا می شود. در غیر این صورت  دستورات بعدی خارج از if برنامه اجرا میشود.

            اگر در ادامه ی دستور if  از else  هم استفاده کرده باشیم. در صورت نادرست بودن شرط if دستورات داخل else اجرا می شود. استفاده از دستور else  در ادامه ی دستور if  اختیاری و نسبت به نیاز میباشد.

            نکته: اگر بعد از دستور if  قرار است که یک خط دستور اجرا شود، نیازی نیست که از کروشه استفاده کنیم. کروشه مواقعی استفاده میشود که دستوراتی که می خواهیم در داخل if  اجرا شود بیشتر از یک خط باشد.

استفاده از && و || :

            استفاده از AND  و OR در قسمت شرط دستور if در مواقعی به کار می آید که، می خواهیم دو یا چند شرط به طور همزمان چک شود.

if (شرط اول && شرط دوم && …) {…..;}

            گفتیم که شرط در زمان اجرا شدن برنامه چک شده و صفر و یک (TRUE, FALSE) برگردانده می شود. حال دو شرط داریم که به صورت صفر و یک برگردانده شده است. که AND و OR این دو شرط اگر یک باشد شرط اجرا می شود.

AND : FALSE && FALSE = FALSE

          FALSE && TRUE = FALSE

          TRUE && FALSE = FALSE

          TRUE && TRUE = TRUE

در AND  وقتی تمامی شرط ها برقرار باشد دستورات داخل کروشه اجرا می شود.

OR : FALSE || FALSE = FALSE

        FALSE || TRUE = TRUE

        TRUE || FALSE = TRUE

        TRUE || TRUE = TRUE

در OR فقط کافیست یکی از شرطها درست باشد تا دستورات داخل کروشه اجرا شود.

boolean :

            تعریف متغیر از نوع بیت می باشد. یعنی فقط می تواند صفر یا یک (TRUE, FALSE), (LOW,HIGH) باشد. توجه داشته باشید که یک و صفر یا TRUE و FALSE یا HIGH و LOW در زبان برنامه نویسی به یک معنا می باشند.

تعریف یک تابع :

 

Function

Function

 

            تعریف یک تابع کار زیاد پیچیده ای نیست، ولی تنوع زیادی دارد. در شکل بالا یک تابع تعریف کرده ایم:

  1. در این قسمت یک متغیراز نوع int تعریف کرده ایم. که قرار است در آن مقداری که تابع بر می گرداند ذخیره شود. تابعی که تعریف می کنیم می تواند چیزی بر نگرداند. ولی اگر قرار است متغیری را برگرداند آن باید خارج از تابع تعریف شود. به طور کلی void setup و void loop هم دو تابع هستند که در برنامه قرار داده شده اند.
  2. تابع را تعریف کرده ایم. تابع از نوع int تعریف شده است. یعنی خروجی تابع از نوع int است. وقتی void تعریف کنیم یعنی هیچ خروجی ای ندارد. Plus هم اسم تابع است که در هر جای برنامه می توانیم آن را صدا بزنیم. داخل پرانتز هم ورودی های برنامه هست که ما دو تا گذاشتیم که می تواند هر چند تا باشد. و یا می تواند اصلا ورودی نداشته باشد.
  3. عملیاتی است که در داخل تابع قرار دادیم تا انجام شود.
  4. وقتی تابع خروجی دارد آنرا با دستور return بر میگردانیم.
  5. تابع را در برنامه صدا می زنیم می توان هر جای برنامه آنرا صدا زد. داخل پرانتز هم ورودی های تابع که قرار است به جای x و y باشند را قرار دادیم.

PWM :

            به طور خیلی ساده و خلاصه PWM کم و زیاد کردن پهنای پالس می باشد. که با کم و زیاد کردن پهنای پالس و مقدار زمان روشن و خاموش بودن یک پین به هدف مورد نظرمی رسیم. زمان خاموش و روشن شدن یک پین بسیار سریع می باشد. مثلا برای اینکه یک LED را با نصف قابلیت نور دهی آن روشن کنیم. پین مورد نظر را یک میلی ثانیه (این عدد فرضی می باشد) روشن و یک میلی ثانیه خاموش میکنیم. این یک توضیح ساده از PWM میباشد که در آینده به توضیح بیشتر در مورد آن خواهیم پرداخت.

            برای شروع استفاده از PWM اول پین هایی که دارای امکان PWM هستند را پیدا می کنیم.

;analogWrite(X,Value) :

            این دستور برای مشخص کردن زمان روشن و خاموش کردن یک پین استفاده میشود، که همان PWM می باشد. از 0 تا 255 می توان بازه زمانی PWM را تغییر داد.

analogWrite(X,200);

به X که می تواند پین های مشخص شده برای خروجی انالوگ باشد مقدار 200 را داده ایم. فرضا پین مورد نظر 200 میلی ثانیه روشن و 55 میلی ثانیه خاموش می شود.

در ادامه می توانید فیلم آموزشی را مشاهده کنید:

 

دیدگاه ها :

پاسخی بگذارید

نشانی ایمیل شما منتشر نخواهد شد.