جستجو برای:
  • شیراز کدرز
    • Empire
    • سیاست حریم خصوصی
  • آموزش ها
    • آموزش آردوینو مقدماتی
      • آموزش آردوینو جلسه اول
      • آموزش آردوینو جلسه دوم
      • آموزش آردوینو جلسه سوم
      • آموزش آردوینو جلسه چهارم
      • آموزش آردوینو جلسه پنجم
      • آموزش آردوینو جلسه ششم
      • آموزش آردوینو جلسه هفتم
      • آموزش آردوینو جلسه هشتم
      • آموزش آردوینو جلسه نهم
      • آموزش آردوینو جلسه دهم
    • آموزش آردوینو مبتدی
      • آموزش آردوینو جلسه یازدهم
      • آموزش آردوینو جلسه دوازدهم
      • آموزش آردوینو جلسه سیزدهم
    • آموزش الکترونیک | بایگانی
      • آموزش الکترونیک مقدماتی درس 1
      • آموزش الکترونیک مقدماتی درس 2
      • آموزش الکترونیک مقدماتی درس 3
      • آموزش الکترونیک مقدماتی درس 4
  • حساب کاربری
    • حساب کاربری من
    • پنل کاربری پیشرفته
    • کیف پول
    • سفارش‌ها
    • خروج
  • فروشگاه
    • محصولات
شیراز کدرز
  • شیراز کدرز
    • Empire
    • سیاست حریم خصوصی
  • آموزش ها
    • آموزش آردوینو مقدماتی
      • آموزش آردوینو جلسه اول
      • آموزش آردوینو جلسه دوم
      • آموزش آردوینو جلسه سوم
      • آموزش آردوینو جلسه چهارم
      • آموزش آردوینو جلسه پنجم
      • آموزش آردوینو جلسه ششم
      • آموزش آردوینو جلسه هفتم
      • آموزش آردوینو جلسه هشتم
      • آموزش آردوینو جلسه نهم
      • آموزش آردوینو جلسه دهم
    • آموزش آردوینو مبتدی
      • آموزش آردوینو جلسه یازدهم
      • آموزش آردوینو جلسه دوازدهم
      • آموزش آردوینو جلسه سیزدهم
    • آموزش الکترونیک | بایگانی
      • آموزش الکترونیک مقدماتی درس 1
      • آموزش الکترونیک مقدماتی درس 2
      • آموزش الکترونیک مقدماتی درس 3
      • آموزش الکترونیک مقدماتی درس 4
  • حساب کاربری
    • حساب کاربری من
    • پنل کاربری پیشرفته
    • کیف پول
    • سفارش‌ها
    • خروج
  • فروشگاه
    • محصولات
0

ورود و ثبت نام

وبلاگ

آموزش آردوینو جلسه دوم

29 اردیبهشت 1399
ارسال شده توسط admin_hb
آموزش آردوینو | مقدماتی ، همه دسته ها
394 بازدید

همانطور که در جلسه اول گفتیم، آردوینو دارای یک میکروکنترلر جهت پروگرم کردن برنامه های نوشته شده بر روی آن است. در این جلسه با نحوه برنامه نوشتن و آپلود آن بر روی آردوینو آشنا میشوید.

در صورتی که با زبان های C و C++ آشنایی دارید به راحتی میتوانید برنامه نویسی آردوینو را یاد بگیرید. حتی اگر با این زبان ها آشنایی ندارید جای نگرانی نیست چرا که در این سری از آموزش های منتشر شده تمامی دستورات و اصطلاحات آشنا خواهید شد…

آردوینو Uno

آشنایی

در این آموزش از یک سری اصطلاحات و کلمات استفاده میکنیم که خوب است معنی آنها را بدانید:

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

آپلود: یکی دیگر از ابزار های آردوینو، آپلود کردن کد ها است، یعنی با زدن این دکمه کد هایی که کامپایل کرده ایم را بر روی آردوینو متصل به کامپیوتر آپلود میکنیم.

پروگرم: معنی لغوی پروگرم (Program) برنامه است. در برنامه نویسی میکروکنترلر به پروسه آپلود کردن کد پروگرم میگویند.

سینتکس: به نحوه نوشتن کدها سینتکس (Syntax) میگویند. برای مثال در برنامه نویسی بیشتر زبان هایی مانند C پس از اتمام دستورات از سمی کالن (;) استفاده میکنیم و درصورتی که آن را فراموش کنید نرم افزار آردوینو برای شما خطایی را نمایش میدهد.

پروتکل: به نحوه برقراری ارتباط بین دو یا چند دستگاه پروتکل (Protocol) میگویند. برای مثال ما انسان ها برای برقراری ارتباط با یکدیگر باید زبان یکدیگر را متوجه شویم. در آردوینو از چند پروتکل Uart, SPI, I2C استفاده میکنیم که هریک از آنها در آینده توضیح داده خواهند شد.

سریال: درواقع سریال (Serial) یک پروتکل ارتباطی است که برای ارتباط بین دو یا چند دستگاه استفاده میشود؛ لازم به ذکر است برای پروگرم کردن آردوینو باید از پروتکل سریال استفاده کرد. این پروتکل از دو سیم برای ارسال و دریافت اطلاعات با سرعتی مشخص استفاده میکند. سیم TX ارسال و سیم RX دریافت اطلاعات را بر عهده دارد.

برای یادگیری کامل تر جلسات، بهتر است یک بورد آردوینو تهیه کنید که برای شروع به شما آردوینو Uno یا Dueminalove را پیشنهاد میدهیم که علاوه بر قیمت مناسب کارایی های فراوانی نیز دارند.

بهتر است بخوانید آموزش آردوینو مقدماتی جلسه اول

حافظه بورد آردوینو

میکروکنترلر 328 Atmega دارای سه بخش اصلی حافظه است. یک حافظه فلش، حافظه SRAM و یک حافظه به منظور ثبت اطلاعات از نوع EEPROM. در مورد هر یک از اجزای حافظه میکرو به ترتیب بحث خواهیم کرد.

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

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

حافظه SRAM: این نوع حافظه فرار است و با قطع جریان مقادیر روی آن پاک میشوند. از این نوع حافظه برای ذخیره متغیر ها استفاده میشود.

حافظه آدرس پذیر EEPROM: از این حافظه برای ذخیره اطلاعات و متغیر ها در آردوینو به کار میرود و با قطع برق اطلاعات آن باقی میماند. این نوع حافظه قابلیت چند بار نوشتن را نیز دارا میباشد. ظرفیت حافظه EEPROM برای میکروکنترلر Atmega328 برابر با 1کیلوبایت است.

پایه های آردوینو

آردوینو دارای تعدادی پایه جهت استفاده به عنوان خروجی یا ورودی است که به وسیله آن میتوان المان هایی مانند کلید و LED را کنترل کرد. پین های آردوینو به دو دسته دیجیتال و آنالوگ دسته بندی میشوند:

دیجیتال: اگر به بورد آردوینو خود نگاه کنید تعدادی پین را مشاهده میکنید. تعدادی از این پین ها با عدد مشخص شده اند. این پین ها پین های دیجیتال اند؛ با استفاده از پین های دیجیتال میتوانید مقادیر 0 و 1 را روی آنها اعمال کنید (0 یعنی 0 ولت منطقی و 1 یعنی 5 ولت منطقی).

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

آنالوگ: در سمت دیگر بورد آردوینو، پین هایی را مشاهده میکنید که با حرف A مخفف Analog مشخص شده اند. این پینها توانایی اندازه گیری ولتاژی که روی آنها اعمال میشوند را دارند و به صورت یک عدد ده دهی نمایش میدهند؛ یعنی بسته به ولتاژی که روی آنها اعمال میشود، مقداری بین 0 تا 1023 را به ما برمیگردانند.

توجه: ولتاژ اعمال شده روی پین های آردوینو نباید بیشتر از 5 ولت باشند!

PWM: برخی از پین های دیجیتال با علامت ~ مشخص شده اند. این پین ها پین های PWM یا مدولاسیون پهنای باند هستند که در آینده کامل به توضیح درمورد آن میپردازیم.

برنامه نویسی

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

برای شروع برنامه نویسی شما را با بدنه کد آشنا میکنم.

کد زیر را در آردوینو خود آپلود کنید.

(نحوه آپلود کد در جلسه قبل آموزش داده شده است)

void setup(){
     // Setup
}
void loop(){
     // Codes
} 
 

در کد بالا دو بخش setup و loop داریم؛ کد های موجود در setup تنها یک بار اجرا میشوند اما کد های درون loop تا ابد ادامه دارند. نکته موجود این است که با قرار دادن دو عدد / در آغاز هر خط اصطلاحا آن خط را کامنت میکنید.

کامنت ها جزو کد حساب نمیشوند و حافظه آردوینو را اشغال نمیکنند و تنها برای نشانه گذاری هستند.

به هر یک از این void ها تابع (Function) میگویند.

کد زیر یک چشمک زن ساده است:

int led = 13;
void setup(){
pinMode(led, OUTPUT);
}
void loop(){
digitalWrite(led, HIGH);
delay(1000);
digitalWrite(led, HIGH);
delay(1000);
} 

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

int led = 13; 

در کد بالا متغیری از نوع int با نام led و با مقدار 13 تعریف کردیم. در قسمت setup کد

pinMode(led, OUTPUT); 

را قرار دادیم. در این کد پین 13 را به عنوان خروجی تعریف کرده ایم.

digitalWrite(led, HIGH);
...
digitalWrite(led, LOW);
... 

در کد بالا به پین 13 آردوینو مقدار HIGH یا LOW را قرار داده ایم (HIGH یا 1 منطقی یا 5 ولت یا روشن، LOW یا 0 منطقی یا  0 ولت یا خاموش)

delay(1000); 

در کد بالا از delay برای ایجاد تاخیر استفاده کردیم. مقدار درون پرانتز به میلی ثانیه است. برای مثال برای 1 ثانیه تاخیر باید عدد 1000 به معنای 1000 میلی ثانیه یا 1 ثانیه را وارد کنید.

همچنین میتوانید از یک متغیر برای تغییر زمان delay استفاده کنید.

digitalWrite(led, HIGH);
delay(1000);
digitalWrite(led, LOW);
delay(1000); 

کد بالا مقدار پین LED را روی 5 قرار میدهد و پس از یک ثانیه مقدار را به 0 ولت بر میگرداند.

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

درصورت داشتن هرگونه سوال یا نظر در بخش نظرات با ما در ارتباط باشید…

بعدی
قبلی
اشتراک گذاری:
دانلود فایل کامل پروژه
دانلود فایل
فایل کامل (جلسه اول و دوم)

پسورد فایل : ندارد گزارش خرابی لینک

برچسب ها: آردوینوآموزش آردوینوآموزش برنامه نویسی آردوینوبرنامه نویسیکد نویسی
درباره admin_hb

حسین بذرافکن هستم، برنامه نویس، فریلنسر و عاشق الکترونیک...

نوشته های بیشتر از admin_hb
در تلگرام
کانال ما را دنبال کنید!
در اینستاگرام
ما را دنبال کنید!
مطالب زیر را حتما بخوانید
  • آموزش آردوینو جلسه سیزدهم

    221 بازدید

  • آموزش آردوینو جلسه دوازدهم

    244 بازدید

  • آموزش الکترونیک مقدماتی درس 3

    348 بازدید

  • آموزش الکترونیک مقدماتی درس 2

    304 بازدید

  • آموزش الکترونیک مقدماتی درس 1

    253 بازدید

  • آموزش آردوینو جلسه یازدهم

    454 بازدید

قدیمی تر آموزش الکترونیک مقدماتی درس 4
جدیدتر آموزش آردوینو جلسه سوم

2 دیدگاه

به گفتگوی ما بپیوندید و دیدگاه خود را با ما در میان بگذارید.

  • arimas گفت:
    13 بهمن 1399 در 1:22 ق.ظ

    سلام پیجتون عالیه.خیلی ممنون

    پاسخ
    • admin_hb گفت:
      7 اسفند 1399 در 6:22 ب.ظ

      خیلی ممنون از نطرتون

      پاسخ

دیدگاهتان را بنویسید لغو پاسخ

جستجو برای:

امروز، چهارشنبه ۱۳ اسفند ۹۹ ساعت ۲۳:۴۱

نوشته های تازه

آموزش آردوینو جلسه سیزدهم

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

بیشتر »
14 آذر 1399

آموزش آردوینو جلسه دوازدهم

در جلسه قبل با توابع کشیدن اشکال در نمایشگر Nokia 5110 آشنا شدیم. در این

بیشتر »
11 آذر 1399

آموزش الکترونیک مقدماتی درس 3

آموزش الکترونیک مقدماتی درس 3 در جلسات گذشته با مباحث بسیاری آشنا شدیم؛ در این

بیشتر »
3 مهر 1399

ورود

رمز عبور را فراموش کرده اید؟

هنوز عضو نشده اید؟ عضویت در سایت