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

آموزش آردوینو – بخش دوم ساختار برنامه نویسی در محیط نرم افزار آردوینو

arduino-basic-tutorial-part-two-ide---digispark
نوشته شده توسط پریسا پوربلورچیان

برای شروع برنامه نویسی در محیط آردوینو Arduino، اولین قدم شناخت کامل ساختار محیط برنامه نویسی است. نرم افزار آردوینو اوپن سورس است و دسترسی به منابع نرم افزار آردوینو به راحتی در دسترس است. در این آموزش با هم با بخش های مختلف نرم افزار آشنا خواهیم شد. در ادامه با مرجع تخصصی، آردوینو به زبان فارسی، دیجی اسپارک همراه باشید.

 


زبان برنامه نویسی آردوینو


زبان برنامه نویسی آردوینو ++C است. زبان برنامه نویسی ++C از زبان برنامه نویسی C توسعه پیدا کرده و از سبک برنامه نویسی شی را پیروی می‌کند. زبان برنامه نویسی شی گرا یک شیوه ی نوین برای کدنویسی است که از ترکیب قطعات نرم افزاری ساخته شده است. هدف زبان برنامه نویسی شی گرا مثل ++C این است که اشیای دنیای واقعی را مدلسازی و نمونه سازی می‌کند. زبان برنامه نویسی ++C انعطاف پذیر است و محدودیتی برای آردوینو ایجاد نمی‌کند. مهم ترین نکته این است که زبان برنامه نویسی سی پلاس پلاس نسبت به حروف حساس است. در این زبان بین حروف کوچک و بزرگ تفاوت است و تمامی کلمات کلیدی با حروف کوچک نوشته می‌شود.

دستوالعمل های برنامه ++C دارای چند پارامتر مهم است.

  • هر دستور زبان برنامه نویسی به سمیکالن ; منتهی می‌شود.
  • حداکثر طول هر خط برنامه ۲۵۵ کاراکتر است.
  • برای مشخص شدن هر خط از برنامه از کامنت استفاده می‌کنیم تا پس از زباد شدن تعداد خط های برنامه نویسی امکان رفع عیب سریع تر باشد.

اگر تا به حال برنامه نویسی نکرده اید، نگرانی نداشته باشید، بخش به بخش جزییات ضروری راه اندازی را بررسی خواهیم کرد.

 


Sketch


برنامه ی آردوینو Arduino به سه بخش اصلی تقسیم می‌شود.

  • Structure
  • Values
  • Functions

بخش اول Structure

 

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

  • Setup () Function
  • Loop () Function

بخش اول Structure در نرم افزار آردوینو IDE - دانشجو کیت

  

معرفی Voidsetup()

در voidsetup توابع اصلی برای شروع برنامه نویسی تعریف می‌شود. از این تابع برای معرفی متغیرها، مدهای پایه، استفاده از دستورات کتابخانه ای استفاده می‌شود. فانکشن هایی که در setup تعریف می‌شود فقط یک بار اجرا می‌شود. از بخش های مهم دیگری که در voidsetup تعریف می‌شود، ورودی Input و خروجی Output است. در نهایت در این بخش از Return هم استفاده می‌شود. برنامه نوشته شده در این بخش با باز و بسته شدن سریال مانیتور و یا ریست توسط کلید قرار گرفته شده با آردوینو مجدد از اول اجرا می‌شود.

 

معرفی Voidloop()

زمانیکه دستورات نوشته شده در voidsetup اجرا شد، نوبت به voidloop یا همان توابع حلقه در برنامه می‌رسد. تا زمانیکه حلقه در برنامه تعریف شده باشد، تمامی دستورات نوشته شده اجرا می‌شود. تنها با قطع ارتباط و یا ریست برنامه متوقف خواهد شد. دستورات در تابع حلقه از بالا به پایین به صورت پیوسته اجرا می‌شود. به عنوان مثال اگر دارای دو دستور باشد، دستورات به ترتیب اجرا می‌شود. فاکشن لوپ lOOP یکی از اساسی ترین بخش های برنامه نویسی در آردوینو است و بدون آن تداخل در عملکرد میکروکنترلر ایجاد می‌کند. حتی اگر در این قسمت برنامه ای هم نوشته نشده باشد، نیاز به آن خواهد بود.

 

Custom functions – فانکشن های سفارشی

 

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

  • a return type
  • a name
  • a list of parameters

 نوع تابع یکی از روش های برنامه نویسی ++c است که توسط ما تعریف می‌شود. اگر تابعی بخواهد مقداری را به تابع فراخوان برگرداند، آن مقدار در نام تابع قرار میگیرد. هر مقدار دارای نوع است و نام تابع هم بابد دارای نوع باشد. اگر تابع هیچ مقداری را به برنامه فراخوان برنگرداند، نوع آن VOID خواهد بود.

  • اگر تعداد پارامترها بیش از یکی باشد، باید با کاما , از یکدیگر جدا شود.
  • برای اجرای توابع آن ها را با نامشان فراخوانی کنید.
  • متغیرهای مورد نیاز توابع را در داخل توابع تعریف کنید. هیچ تابعی نمیتواند از متغیرهای توابع دیگر استفاده کند.
  • تعریف تابع در داخل تایع دیگر امکان پذیر نیست.

 


تست برنامه با void setup


یک برنامه بسیار ساده برای روش تست voidsetp در ادامه نوشته ایم. در ابتدا برنامه ی آردوینو را باز کنید.

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

  • از سریال مانیتور برای ارتباط بین دو آردوینو با یکدیگر، آردوینو به کامپیوتر و یا ارتباط آردوینو با سایر دستگاه ها استفاده می‌شود.
  • آردوینو یک پورت سریال دارد که با نام UART یا Universal Asynchronous مشخص شده است که به فرآیند ارسال داده با n بیت اطلاعات در یک لحظه گفته می‌شود.
  • در آردوینو از پین های دیجیتال ۰ و ۱ برای راه اندازی پورت سریال استفاده می‌شود.

 

تست برنامه با void setup در نرم افزار آردوینو IDE - دیجی اسپارک

 

برای ورود به سریال مانیتور CTRL + SHIFT + M  را همزمان نگه دارید و یا بر روی آیکون آن در سمت راست نرم افزار کلیک کنید.

 


تست برنامه با VOIDLOOP


 همان کد قبلی را در حلقه ی برنامه تعمیم میدهیم.

دستورات سریال مانیتور دقیقا مشابه قبل است.

تست برنامه با VOIDLOOP در نرم افزار آردوینو IDE - دیجی اسپارک

 

در این بخش برای تکرار دستور مورد نظر از تابع زمانی DELAY استفاده می‌کنیم.

برای ورود به سریال مانیتور CTRL + SHIFT + M  را همزمان نگه دارید و یا بر روی آیکون آن در سمت راست نرم افزار کلیک کنید.

 


جمع بندی لیدی پای


اصلی ترین بخش در برنامه نویسی صحیح نویسی دستورات در جای درست و فراخوانی به موقع است. قرار گرفتن یک دستور و یک تابع در برنامه تداخل عظیمی در برنامه ایجاد خواهد کرد. لذا یادگیری نکات اولیه برای کدنویسی از مهم ترین بخش های یادگیری آردوینو از پایه است. در این آموزش ساختار زبان برنامه نویسی آردوینو یعنی voidsetup و  voidloop و توابع سفارشی را آموختیم. نمونه کد جهت فراخوانی در متن آموزش نوشته شده است. یک به یک اجرا و در صورت سوال از همین طریق بپرسید تا راهنمایی صورت گیرد.

 

 

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

پریسا پوربلورچیان

تولید کننده محتوا / کارشناس IOT

زندگی یعنی پژوهش و فهمیدن چیزی جدید

تلاشم بر این است تجربیاتم در زمینه IOT‌ را به بهترین شکل با شما در میان بگذارم.

تبادل نظر و رفع عیب با ثبت دیدگاه

۸ دیدگاه

  • سلام تو این صفحه ایحاد جستجو کنید مشکل تایپی دارد اما مسئله اصلی اینه که اشتباه همیشه هست برای تایپ صحیح فارسی کیبورد گوشیم اگه اشتباه بنویسم زیرش خط قرمز می‌کشه برای پیشرفت لازمه آدما یکم بار مشکلات ازش برداشته بشه از نظر من باید بشه با زبان اسمبلی به راحتی برنامه نوشت اگر برنامه نویسها بخوان. و بابت آموزش ❤

  • خیلی خوب و ساده می نویسید. ممنون.

    یه سوال: نوشتن نگارش یک مطلب تخصصی مثل این که نیاز به درج کد و تولید تصویر داره، چقدر زمان میبره برای یه مبتدی؟؟

    • با سلام
      سپاس از همراهی شما کاربر گرامی
      اگر منظور شما نوشتن محتوای تخصصی است، نیاز به درک صحیح و انتقال مفاهیم به صورت متنی است که نمیتوان زمان برای آن مشخص کرد.