به نام خدا
در این پست قصد داریم بر روی یکی از پینهای آردوینو Arduino، موج مربعی ایجاد کنیم. موج مربعی یا PWM همان قطع و وصل کردن ولتاژ ۰ و ۵ ولت با بازه زمانی مشخص (بین ۱ تا ۲ میلی ثانیه برای سروو موتور ها و موتور براشلس) هست. بعد با کم و زیاد کردن طول موج میزان خروجی پین آردوینو Arduino را تنظیم کنیم. سپس پین ۹ آردوینو را به پایه ی مثبت LED وصل کرده و میزان نور را تغییر میدهیم. برای آشنایی بیشتر با موج مربعی این پست را مطالعه نمایید.
موارد لازم جهت انجام پروژه :
- برد آردوینو UNO – یک عدد — خرید از فروشگاه
- مقاومت ۲۲۰ اهم – یک عدد
- LED – یک عدد
شماتیک :
کدهای برنامه کنترل نور LED :
int led = 9; int brightness = 0; int fadeAmount = 5; void setup() { pinMode(led, OUTPUT); } void loop() { analogWrite(led, brightness); brightness = brightness + fadeAmount; if (brightness == 0 || brightness == 255) { fadeAmount = -fadeAmount ; } delay(30); }
معرفی پین متصل به LED
int led = 9;
تعریف دو متغییر و مشخص کردن مقدار درون آنها
int brightness = 0; int fadeAmount = 5;
خروجی قرار دادن پین LED در حلقه ی Setup
void setup() { pinMode(led, OUTPUT); }
اعمال مقدار آنالوگ brightness بر روی پین LED
analogWrite(led, brightness);
جمع دو مقدار fadeAmount و brightness و ریخت آن درون متغییر brightness
brightness = brightness + fadeAmount;
قرار دادن مقدار brightness بین ۰ تا ۲۵۵ در حلقه ی if
if (brightness == 0 || brightness == 255) { fadeAmount = -fadeAmount ; }
صبر به مدت ۳۰ میلی ثانیه (این عدد قابل تغییر است و میتوانید میزان روشن بودن را با تغییر این عدد ، کم و زیاد کنید)
delay(30); }
اگر از میزان درخشندگی LED راضی نیستید میتوانید مقاومت کمتری سر راه LED قرار دهید.
سلام من یک مبتدی هستم که برای اولین بار با آردینو کار میکنم .
این کد ها رو باید فقط در برنامه واسط آردینو کپی و انتقال دهیم و عدد متغیر که میزان نور ال ای دی را تغیر میدهد کدام است با سپاس .
سلام و درود ببخشید
میشه کاری کرد که وقتی در برد ولتاژ مثبت و منفی را دریافت کرده باشد ال ای دی قرمز آروم روشن و آروم خاموش بشه
با سلام
متوجه سوالتان نشدم. لطفا دقیقتر با جزئیات کاملتری سوالتان را مطرح کنید.