در قسمت اول از آموزش آردوینو به زبان ساده، با اکوسیستم آردوینو و برتریهاش آشنا شدیم. حالا در این قسمت یاد میگیریم چگونه LED چشمکزن بسازیم و پایههای دیجیتال را کنترل کنیم. این پروژه هم برای آشنایی بیشتر با کدنویسی آردوینو مناسبه، هم کمک میکنه پایههای ورودی/خروجی دیجیتال رو بهتر بشناسیم. قبل اینکه وارد جزییات پروژه بشیم، تخصصیتر ساختمان برد آردوینو UNO R3 و همین طور نحوه پروگرام کردن اون رو میشناسیم.
آناتومی برد آردوینو UNO R3
- پینهای دیجیتال: روی برد 14 تا پایه دیجیتال ورودی/خروجی (I/O) وجود داره. بهشون میگن «دیجیتال» چون فقط میتونن دو حالت داشته باشن: خاموش (0) یعنی صفر ولت نسبت به GND و روشن (1) یعنی ۵ ولت نسبت به GND. پس اگه پایه در حالت خروجی باشه، یا صفره یا پنج ولت. اگه هم به عنوان ورودی استفاده بشه، باید ولتاژی بین ۰ تا ۵ ولت بهش بدی. ⚠️ دقت کن: اگه بیشتر از ۵ ولت به این پایهها بدی، احتمال داره به برد آسیب بزنه.
- LED پایه 13: این تنها قطعهی داخلی روی برده. بهترین گزینه برای اولین تست برنامهی چشمکزن (Blink) همینه. علاوه بر اون، موقع دیباگ (اشکالگیری) خیلی به کار میاد.
- LED پاور: وقتی روشنه یعنی آردوینو داره برق میگیره و روشنه.
- میکروکنترلر ATmega: این قلب اصلی برده؛ همهچیز رو این چیپ کوچیک کنترل میکنه.
- پینهای آنالوگ: با این پین ها میتونی مقادیر آنالوگ (بین صفر تا 5 ولت) رو با دستور analogRead() بخونی.
- پینهای GND و 5V: پایههای صفر ولت (زمین) و 5 ولت که میتونه برای تغذیهی مدار استفاده بشه؛
- جک آداپتور تغذیه: وقتی کابل USB وصل نیست، با این ورودی میتونی آردوینو رو روشن کنی. ⚠️ دقت کن: بین ۷ تا ۱۲ ولت رو قبول میکنه.
- LEDهای TX و RX: این دو تا LED وقتی برد با کامپیوترت ارتباط میگیره چشمک میزنن. این LEDها موقع آپلود کد یا ارسال داده سریال، سریع شروع به چشمکزدن میکنن.
- پورت USB: برای تغذیه آردوینو، آپلود کردن برنامهها، و همینطور ارتباط سریال (مثل Serial.println()) استفاده میشه.
- دکمه ریست: این دکمه میکروکنترلر ATmega رو ریست میکنه و برد از اول راهاندازی میشه.
منبع تصویر: سایت رسمی آردوینو
هدف پروژه
ما میخوایم یک LED رو به پین دیجیتال شماره 2 برد آردوینو UNO وصل کنیم و کاری کنیم که یک ثانیه روشن و یک ثانیه خاموش باشه؛ چیزی که به اسم Blink یا چراغ چشمک زن شناخته میشه.
قطعات مورد نیاز
- برد Arduino UNO
- بردبورد
- سیم جامپر
- مقاومت حدود 200 اهم (یا 220 اهم)
- یک LED معمولی
روش اتصال
- پایه بلندتر LED (آند یا مثبت) رو با یک سیم جامپر به پین شماره 2 آردوینو وصل کنید.
- پایه کوتاهتر LED (کاتد یا منفی) رو به یکی از پایههای مقاومت وصل کنید.
- پایهی دیگر مقاومت رو به پین GND روی آردوینو متصل کنید.
- مقاومت برای این استفاده میشه که جریان زیادی از LED عبور نکنه و باعث سوختنش نشه.

پروگرام کردن برد
برای اینکه بتونیم برد آردوینو رو برنامهریزی کنیم، نیاز به نرمافزار Arduino IDE داریم که از این لینک قابل دانلوده. نصب برنامه ساده است و در حین نصب، درایور مخصوص چیپ USB-to-Serial برد (مثل ATmega16U2 در آردوینو UNO) هم روی کامپیوتر نصب میشه تا برد شناسایی بشه. وقتی نصب برنامه تموم شد، از منوی File > New Sketch یک فایل جدید باز میکنیم و آن را در مسیر دلخواه Save میکنیم.
بعد از ذخیره برنامه: یک فولدر با نام پروژه ساخته میشه که داخلش یک فایل همنام با پسوند .ino قرار داره. حالا برد رو با کابل USB به کامپیوتر وصل کن. از منوی کشویی بالای Arduino IDE، بردت رو انتخاب کن (معمولاً به شکل Arduino Uno نمایش داده میشه که زیر نام برد، شماره COM Port اختصاص داده شده هم نمایش داده میشه). حالا وقتش رسیده که برنامه اصلی رو بنویسیم و برد رو پروگرام کنیم.

کد آردوینو
- کدی که در ادمه هست رو در نرم افزار کپی کن.
- برای اطمینان از اینکه کد اشکال دستوری نداره، قبل از آپلود، روی دکمه Verify کلیک کن.
- اگر کد بدون خطا باشه، در پایین صفحه عبارت Done Compiling نمایش داده میشه. در پنجره Output میتونی میزان فضای استفاده شده توسط این کد رو ببینی؛ مثلا چیزی شبیه این:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
const int ledPin = 2; // شماره پینی که LED به آن وصل شده const int delay_in_ms = 1000; // تاخیر بین روشن و خاموش شدن (میلیثانیه) void setup() { pinMode(ledPin, OUTPUT); // تنظیم پین به حالت خروجی } void loop() { digitalWrite(ledPin, HIGH); // روشن کردن LED delay(delay_in_ms); // صبر به مدت 1 ثانیه digitalWrite(ledPin, LOW); // خاموش کردن LED delay(delay_in_ms); // صبر به مدت 1 ثانیه } |
توضیح کد
|
1 |
pinMode(ledPin, OUTPUT); |
→ به آردوینو میگه که پین ۲ خروجی باشه. اگر const int ledPin = 13; رو در خط اول کد جایگزین بکنیم، اونوقت LED روی برد چشمک میزنه. دقت کن که در انتهای هر دستور زبان برنامه نویسی C ، حتما باید از ; استفاده کنیم.
|
1 |
digitalWrite(ledPin, HIGH); |
→ ولتاژ مثبت (5 ولت) رو به پین میده و LED روشن میشه.
|
1 |
delay(delay_in_ms); |
→ برنامه رو به مدت مشخص (اینجا ۱۰۰۰ میلیثانیه) متوقف میکنه. در واقع، delay() یک تابع هست که یک عدد بر حسب میلیثانیه بهش میدی و برنامه همون مدت متوقف میشه.
|
1 |
LOW |
→ ولتاژ رو قطع میکنه (صفر ولت) و در نتیجه LED خاموش میشه.
نکته تکمیلی
اگه بخواین LED سریعتر یا کندتر چشمک بزنه، کافیه مقدار
|
1 |
delay_in_ms |
رو تغییر بدین. مثلا برای نیمثانیه تاخیر، مقدارش رو روی
|
1 |
500 |
بگذارید.
منابع و لینکهای مفید

هیچ نظری ثبت نشده است! اولین نفر باشید.