Arduino IDE یک نرم افزار منبع باز است که برنامه نویسان و سازندگان تجهیزات الکترونیکی از آن برای توسعه پروژه های مبتنی بر میکروکنترلرهای آردوینو استفاده می کنند. این محیط نرمافزاری به صورت رایگان و باز معرفی شده است و برای توسعه و کنترل دستگاهها و پروژههای الکترونیکی بسیار مفید است.
ما در آموزش نرم افزار آردوینو به آشنایی با محیط نرم افزار آردوینو و برسی همه منو های نرم افزار آردوینو میپردازیم و به همراه عکس گام به گام با هم جلو میریرم
در قسمت اول به مقایسه و معرفی انواع برد های آردوینو پرداختیم وحال در این جلسه آموزشی استفاده از IDE آردوینو را یاد میگیریم.
پیشنهاد میکنم یک برد آردوینو تهیه کنید.
این برد ها آن قدر محبوب وگسترده هستند که تمام نیاز های شما را بر طرف می کنند،و برنامه نویسی آن بسیار ساده است.
برتری آردوینو نسبت به سایر کامپایلرها در چیست:
کامپایلر آردوینو رایگان و OPEN SOURC است و هرکسی می تواند آن را توسعه دهد.
آردوینو نیازی به پروگرامر ندارد ومستقیما به پورت USB وصل می شود.
ارتباط سریال با آن بسیار راحت است واز طریق همان USB آن صورت میگیرد.
مثال ها و توابع آن بسیار بسیار کسترده هستند.
محیط برنامه نویسی آن ساده است.
بصورت آنی بعد از کامپایل کردن نتیجه را مشاهده کنید.
با آن پروژه های بسیار پیشرفته را میتوان راه اندازی کرد.
شروع کار با نرم افزار آردوینو:
- برای شروع باید کامپایلر آردوینو را دانلود نمایید
- به همون روش همیشگی next next نصب کنید ????
- اردوینو باز کنید و صفحه شبیه به عکس زیر میبینید
- پنجره اصلی (Main Window): این پنجره حاوی منوها و نوارهای ابزار مختلف است و به شما امکان دسترسی به ابزارها و تنظیمات اصلی را میدهد.
- ناحیه کدنویسی (Code Editor): در این بخش، شما میتوانید کد برنامهی خود را بنویسید. شما می توانید از زبان برنامهنویسی C/C++ برای کدنویسی در آردوینو استفاده کنید.
نوارهای ابزار :
- منوی File :
در این منو شما میتوانید عملیاتی مانند ایجاد یک پروژه جدید، باز کردن پروژه های پییشین، ذخیره کردن پروژه و خروج از محیط نرمافزاری را انجام دهید. علاوه بر این در این نوار ابزار منویی به نام “Examples” وجود دارد و شما میتوانید از طریق این منو به کد پروژه های آماده دسترسی داشته باشید.
- New : این گزینه به شما امکان میدهد یک پروژه جدید در Arduino IDE ایجاد کنید. با استفاده از این گزینه، میتوانید یک صفحه کد خالی جدید باز کنید و به کدنویسی بپردازید.
- (Ctrl + O) Open: با این گزینه، میتوانید یک پروژه آردوینو موجود را از روی دیسک سخت خود باز کنید. شما میتوانید فایل INO (فایل اصلی پروژه آردوینو) را انتخاب کرده و باز کنید.
- Open Recent: : این بخش نمایش لیستی از پروژههای اخیراً باز شده را نشان میدهد تا بتوانید به سرعت به پروژههایی که تازهترینها باز کردهاید دسترسی داشته باشید
- Page Setup : این گزینه به شما امکان میدهد تنظیمات صفحه چاپ پروژه خود را تعیین کنید. با انتخاب این گزینه، میتوانید اندازه کاغذ، جهت چاپ، حاشیهها و سایر تنظیمات مربوط به چاپ را تنظیم کنید.
- (Ctrl + P) Print: با استفاده از این گزینه، میتوانید کد پروژه خود را چاپ کنید. بعد از انتخاب این گزینه، میتوانید تنظیمات چاپ را تعیین کرده و کد را بر روی کاغذ چاپ کنید.
- (Ctrl + Q) Quit : این گزینه به شما امکان میدهد برنامه Arduino IDE را ببندید و از آن خارج شوید.
- (Ctrl + Comma) Preferences : این گزینه به شما امکان میدهد تنظیمات مختلف مربوط به Arduino IDE را تنظیم کنید. از این قسمت میتوانید تنظیمات مانند زبان برنامهنویسی، میزان جزئیات خطاها و اطلاعات بیشتر را تغییر دهید.
- Location : این فیلد نشان میدهد که پوشه کتابخانه پروژهها در کجا قرار دارد. با کلیک بر روی دکمه “Browse” (مرور)، میتوانید مکان جدیدی برای کتابخانه پروژهها خود انتخاب کنید.
- Editor Language : این فیلد به شما امکان تنظیم زبان رابط کاربری ویرایشگر کد را میدهد. این گزینه به شما امکان تغییر زبان نرمافزار را میدهد تا بتوانید زبانی که برای نمایش متن و پیامهای نرمافزار استفاده میشود را به زبان دلخواه خود تغییر دهید.
- Edit font Size : این گزینه به شما اجازه تغییر اندازه فونت در ویرایشگر کد را میدهد.
- Show Verbose Output During Compilation : بسته به مواردی که شما فعال کرده اید، شما میتوانید در پنجره خروجی اطلاعات بیشتری از فرآیند کامپایل کد، اشکالزدایی (Debugging) و پیگیری مشکلات را مشاهده کنید. این میتواند به شما در تشخیص و رفع مشکلات کمک کند، به خصوص زمانی که با پیچیدگیهای کامپایل کد مواجه میشوید.
- compiler warning : در این بخش شما میتوانید تصمیم بگیرید که کد شما در زمان کامپایل چه نوع هشدارهایی را نمایش دهد یا بینماید. این میتواند به شما در اشکالزدایی و بهبود کیفیت کد کمک کند، زیرا شما به راحتی میتوانید هشدارهای مهم را تشخیص دهید و رفع کنید.
- Display line numbers : در اینجا شما میتوانید تنظیم کنید که آیا شماره خطوط (line numbers) در ویرایشگر کد نمایش داده شود یا خیر.
- Verify code after upload : تایید کد در واقعیت به مرحله کامپایل و بررسی صحت کد میپردازد تا مطمئن شود که کد شما بدون مشکل کامپایل میشود و هیچ خطایی در آن وجود ندارد.
- Check for updates on startup : تنظیم این گزینه به شما امکان بهروزرسانیهای خودکار نرمافزار Arduino IDE را میدهد و به روز ماندن از نسخههای جدید و اصلاحات مهمی که ارائه میشوند را تسهیل میکند.
- Use accessibility feature : تنظیمات این بخش معمولاً تأثیری در نحوه عملکرد Arduino IDE برای کاربران عادی ندارد و معمولاً برای کاربرانی با نیازهای ویژه تنظیم میشود. این تنظیمات ممکن است شامل تغییرات در رنگها، موقعیت موس، میزان بزرگنمایی متن، صداهای هشدار و ویژگیهای دسترسی دیگر باشد که به کاربران با نیازهای ویژه کمک میکند.
- Enable code folding : به شما امکان مشخص کردن این دارد که آیا قابلیت تاشو کد (code folding) در ویرایشگر کد نمایش داده شود یا خیر. تاشو کد یک ویژگی است که به شما اجازه میدهد قسمتهای مختلف کد را جمعآوری و پنهان کنید تا کد شما در ویرایشگر به صورت مرتبتر و کمحجمتر نمایش داده شود.
- Additional Boards Manager URLs : در این بخش شما می توانید بوردهای مدنظرتان را به Arduino IDE اضافه کنید تا بتوانید با آنها کار کنید و پروژههای خود را بر روی انواع بوردها اجرا کنید.
- Use external editor : به شما اجازه میدهد تا تنظیم کنید که آیا میخواهید از ویرایشگر خارجی برای ویرایش کد Arduino خود استفاده کنید یا خیر.
- Save when verifying or uploading : تمشخص میکند کد شما باید به طور خودکار ذخیره شود هنگامی که شما کد را تایید (Verify) یا آپلود (Upload) میکنید یا خیر.
- Example :
کدهای نمونه موجود در منو “Examples”به همراه توضیحات مفصل شان توسط تیم Arduino و جامعه Arduino تهیه شدهاند. در نتیجه شما می توانید از پروژه های منو “Examples” به عنوان یک منبع مفید برای یادگیری و شروع کار با Arduino کمک بگیرید. نمونه کدهای موجود در منو به دستهبندیهای مختلفی تقسیم شدهاند، این دستهبندیها معمولاً بر اساس نوع سنسور، عملکرد یا نوع پروژه صورت میگیرد. به عنوان مثال، شما ممکن است در این منو پروژه هایی مرتبط با LEDها، سنسورهای دما، کنترل موتورها و … را بیابید.
منوی “Examples” در Arduino IDE شامل نمونههای کد ابتدایی و اساسی برای آشنایی با Arduino و برنامهنویسی آن است. این پروژهها معمولاً به عنوان نقطه شروع مناسب برای افرادی که تازه به Arduino و برنامهنویسی میکروکنترلرها وارد شدهاند، توصیه میشوند.
منو 01.Basics :
- : AnalogReadSerial این پروژه یک نمونه کد برای خواندن و نمایش مقدار آنالوگ ورودی از یک پین آنالوگ را در اختیار مخاطب قرار میدهد. این کاربردی است برای خواندن سنسورهای آنالوگی مانند سنسورهای دما یا سنسورهای نور مورد استفاده قرار میگیرد.
- AnalogReadSerial: این مثال شامل حداقل کدی است که برای کامپایل یک برنامه آردوینو لازم است.
- : Blink این یک پروژه ساده است که به شما نشان میدهد چگونه با روشن و خاموش LED با وقفه زمانی مدنظرتان یک LED چشمک زن بسازید.
- : DigitalReadSerial این کد نمونه به شما نشان میدهد چگونه وضعیت یک ورودی دیجیتال (digital input) را از یک پین دیجیتال خوانده و اطلاعات مربوط به وضعیت این ورودی را از طریق پورت سریال (Serial Port) به کامپیوتر ارسال کنید.
- : Fade این پروژه یکی از پروژههای آموزشی معروف در محیط برنامهنویسی آردوینو است که به شما نحوه کنترل روشنایی یک LED با استفاده از PWM را آموزش میدهد.
- : Button این پروژه نمونه کد برای کنترل LED با استفاده از یک دکمه را نمایش میدهد. وقتی دکمه فشرده میشود، LED روشن میشود و وقتی دکمه رها میشود،LED خاموش میشود.
- AnalogReadVoltage : این یک پروژه آموزشی است که به شما نحوه خواندن ورودی آنالوگ و نمایش آن درSerial Monitor را به آموزش می دهد. ( این پروژه معمولاً برای مفهومسازی و آموزش مباحث مربوط به سنسورهای آنالوگ و تبدیل ولتاژ آنالوگ به دیجیتال استفاده میشود) .
منو 02.Digital :
- BlinkWithoutDelay : در این پروژه چگونگی روشن و خاموش شدن یک LED بدون استفاده از تابع delay () آموزش داده میشود.
- Button : این پروژه به شما نشان میدهد چگونه یک کلید فشاری را با استفاده از آردوینو کنترل کنید. وقتی کلید فشاری فشرده میشود، LED روشن میشود و وقتی کلید رها میشود، LED خاموش میشود.
- : Debounce در این پروژه شما یاد می گیرید که چطور وضعیت یک دکمه فشاری که نویزگیری شده و وضعیت پایداری دارد را بخوانید.
- DigitalInputDelay : این پروژه وضعیت ورودی دیجیتال را خوانده و بعد از زمانی مشخص (این زمان با کمک تابع millis() مشخص میشود) وضعیت جدید را خوانده و نمایش میدهد.
- StateChangeDetection :در پروژه چگونگی مانیتور کردن تغییر وضعیت ورودی دیجیتال (مانند: شمارش تعداد فشرده شدن یک دکمه) بررسی میشود.
- : ToneKeyboard یک پروژه آموزشی در محیط برنامهنویسی آردوینو است که به شما نحوه ساخت یک کیبورد موسیقی ساده با استفاده از آردوینو را آموزش میدهد. در این پروژه هر کلیدی که فشرده میشود، یک نوت موسیقی با استفاده از تابع tone() ایجاد میکند.
- ToneMelody : با کمک این پروژه شما میتوانید ملودیهای موسیقی ساده یا حتی پیچیدهتری را با استفاده از توابع دیجیتال نوت پلیر (tone player) آردوینو ایجاد کنید و آنها را از یک بوق (speaker) یا buzzer پخش کنید.
- ToneMultiple : در این پروژه شما یاد میگیرید که چطور چندین نوت موسیقی با فرکانسها و دورههای مختلف را به وسیله آردوینو تولید کرده و از بوق (speaker) یا buzzer پخش کنید.
- TonePitchFollower : در این پروژه، آردوینو به عنوان یک نظارتگر برای شناسایی فرکانس نوتها در ساز موسیقی عمل میکند و واکنشهای مختلفی را در پاسخ به نوتهای موسیقی شناخته شده ایجاد میکند.
منو 03.Analog :
- AnalogInOutSerial : این پروژه نحوه خواندن و کنترل ولتاژهای آنالوگ را نشان میدهد و شما می توانید از یک پتانسیومتر که به یک پین آنالوگ آردوینو شده است، مقدار مقاومت پتانسیومتر را در مانیتور سریال اردینو نمایش دهیم.
- AnalogInput: درر این پروژه یاد میگیریم که چطور با کمک پتانسیومتر میزان روشنایی یک LED را کنترل کنیم.
- AnalogWriteMega: آردوینو مگا برای تنظیم خروجیهای آنالوگ از تابع analogWrite() استفاده میکند شما می توانید از این تابع برای تنظیم ولتاژ خروجی PWM در پایههای مخصوص PWM در آردوینو مگا کمک بگیرید. ولتاژ PWM میتواند بین 0 و 255 تنظیم شود، که 0 به معنی خروجی LOW و 255 به معنی خروجی HIGH (بالا) است.
- Calibration: هدف اصلی این پروژه کالیبره کردن حسگرها یا سنسورهای استفاده شده در پروژه است تا مقادیر خوانده شده از حسگرها از دقت بیشتری برخوردار باشند.
- Fading: در این پروژه، شدت نور یک LED به طور متداول افزایش و کاهش مییابد، به صورتی که به نظر میآید که LED به طور نرم و تدریجی روشن و خاموش میشود.
- Smoothing: این پروژه به شما نحوه کاهش نویز و نوسانات در دادههای ورودی آنالوگ را آموزش میدهد. این پروژه برای تقویت دقت در اندازهگیریها از ورودیهای آنالوگ و تجزیه و تحلیل دقیقتر دادهها بسیار مفید است.
منو 04.Communication :
- ASCIITable : در این پروژه آردوینو یک جدول از کاراکترها و مقادیر ASCII آنها به صورت اعشاری، هگزا دسیمال، اکتال و باینری نشان میدهد.
- Dimmer : این پروژه به شما نشان می دهد که چگونه می توان با ارسال داده ها را از رایانه به برد آردوینو روشنایی یک LED را کنترل کرد. داده ها در بایت های جداگانه ارسال می شوند که هر کدام از آنها از 0 تا 255 متغیر است.
- Graph : این پروژه به شما نشان می دهد که چگونه یک بایت از داده ها را از آردوینو به یک کامپیوتر شخصی ارسال کنید و نتیجه را نمودار کنید.
- Midi: این پروژه نحوه ارسال یادداشت های MIDI را از برد آردوینو به ابزار MIDI که از طریق کابل استاندارد 5 قطبی DIN متصل است، نشان می دهد.
- MultipleSerial : در این پروژه یاد میگیرید که چطور از دو پورت سریال موجود در آردوینو مگا استفاده کنید.
- PhysicalPixel : این پروژه آردوینو با دریافت کاراکتر “H” یک LED را روشن می کند و زمانی که کاراکتر “L” را دریافت می کند LED را خاموش می کند.
- ReadASCIIString : این پروژه به شما یاد میدهد که چطور یک رشته از مقادیر عددی را که با کاما از هم جدا شده اند، جهت Fade کردن یک LED تجزیه کنید.
- SerialCallResponseASCII : در این پروژه یادمیگیرید که چطورچندین متغیر را با استفاده از روش تماس و پاسخ (handshaking) ارسال کنید. علاوه بر این می ـموزید که چطور مقادیر را پیش از ارسال، با کد اسکی رمزگذاری کنید.
- SerialEvent : زمانی که داده های سریال در بافر موجود باشد، این تابع به طور خودکار در انتهای حلقه () فراخوانی می شود. در این حالت، هر کاراکتر یافت شده به یک رشته اضافه می شود تا زمانی که یک خط جدید پیدا شود. سپس رشته چاپ می شود و دوباره به حالت null می رسد.
- SerialPassthrough : این پروژه نحوه اتصال مجازی سریال 0 و سریال 1 را نشان می دهد و شما می توانید از این پروژه بر روی بردهایی بارگذاری کرد که دارای دو رابط UART مختلف روی پین های 0 و 1 و پورت USB هستند (مانند Zero، MKR1000، 101).
- Virtual Color Mixer : این پروژه نحوه ارسال چندین مقدار را از برد آردوینو به کامپیوتر نشان می دهد در نتیجه شما میتوانید مقدار سه پتانسیومتر را برای تنظیم مولفه های قرمز، سبز و آبی رنگ قرائت کنید.
منو 05.Control :
این منو شامل کدهای نمونه است که به شما کمک میکنند تا ساختارهای کنترلی و مفاهیم مرتبط با آنها را بیاموزید. این کدها برای ایجاد ساختارهای تصمیمگیری و تکرار در برنامههایتان واقعاً مفید هستند، زیرا به شما امکان میدهند برنامههای قدرتمندتری ایجاد کنید.
- ForLoopIteration ( حلقه تکرار for ) : در این پروژه یاد میگیریم که چطور با حلقه for چندین LED را کنترل کنید.
- IfStatementConditional ( دستور if ) : if اساسی ترین ساختار کنترلی در برنامه نویسی است که در زمان استفاده از آن اجرا شدن برخی از دستورات به درست بودن یا نبودن شرط وابسته است.
نکته : دستور if به شما امکان می دهد بین دو گزینه گسسته، TRUE یا FALSE یکی را انتخاب کنید، هنگامی که بیش از دو گزینه وجود دارد، می توانید از چند دستور if استفاده کنید یا می توانید از دستور switch استفاده کنید!
- SwitchCase ( دستور switch-case ) : این پروژه نشان میدهد که چگونه از دستور switch – case برای انجام عملیاتهای مختلف در برنامه استفاده کنید. در این پروژه شما یاد میگیرید که بسته به ورودی سنسور از بین چندین گزینه(واقعاً تاریک، کم نور، متوسط و روشن) یکی را انتخاب کنید.
- SwitchCase2 ( دستور switch-case ) : این پروژه به شما یاد میدهد که چطور می توان بر اساس کاراکترهای دریافت شده در پورت سریال، دستورات مختلفی را اجرا کرد.
- WhileStatementConditional ( حلقه while ) : این پروژه نمونهای از استفاده از حلقه while برای تکرار عملیاتها تا زمانی که یک شرط مشخص اجرا میشود را نمایش میدهد. به عبارتی شما در این پروژه یادمیگیرید که چطور از حلقه while برای کالیبره کردن حسگر استفاده کنید.
منو 06.Sensors :
دستورات موجود در پروژه های این زیر منو به عنوان مبنایی عالی برای توسعه پروژههایی مبتنی بر حسگرها در Arduino عمل میکنند و به شما کمک میکنند و دادههایی مربوط به محیط را به درستی اندازهگیری کنید تا شما سریعتر به دانش و تجربه برنامهنویسی حسگرها دست پیدا کنید.
- ADXL3xx : این پروژه نمونهای از چگونگی خواندن دادههای سنسور شتابسنج ADXL3xx را نشان میدهد.
- Knock : این پروژه نحوه استفاده از سنسور ضربه برای تشخیص ضربه به یک سطح چوبی را نشان میدهد.
- Memsic2125 : در این پروژه شما با نحوه خواندن داده ها از شتاب سنج Memsic 2125 (شتاب سنج دو محوره ای با قابلیت اندازه گیری شتاب تا g2 ±) آشنا می شوید.
- Ping : در این پروژه شما نحوه استفاده از سنسور اولتراسونیک (سنسوری برای اندازهگیری فاصله) را یاد میگیرید.
منو 07.Display :
دستورات موجود در پروژه های این زیر منو نحوه کنترل و نمایش اطلاعات بصری بر روی نمایشگرهای مختلف مانند نمایشگرهای کاراکتری (LCD) و نمایشگرهای ماتریسی (LED matrix)را به شما آموزش میدهند.
- BarGraph : این پروژه نمونهای از چگونگی استفاده از LEDها برای ساخت یک نمایشگر نواری را نشان میدهد.
- RowColumnScanning : این پروژه به شما نحوه کنترل LED ها در یک ماتریس 8×8 را نشان میدهد. زیرا نمایشگرهای ال ای دی اغلب به صورت ماتریس هایی از ال ای دی ها که در ردیف هایی از آندها و ستون های کاتدهای معمولی یا برعکس چیده شده اند، بسته بندی می شوند.
منو 08.Strings :
- CharacterAnalysis : در این پروژه ما از عملگرهایی استفاده می کنیم که به ما امکان می دهند نوع کاراکتری را که با آن سر و کار داریم تشخیص دهیم.
- StringAdditionOperator : این پروژه نمونهای از نحوه افزودن دو رشته به یکدیگر با استفاده از عملگر “+” را نشان میدهد. به این حالت الحاق می گویند و باعث می شود که رشته اصلی با طول رشته یا آرایه کاراکتری که آن را به آن متصل می کنید طولانی تر باشد.
- StringAppendingOperators : این پروژه نحوه ی استفاده از عملگر += و دستور concat() برای چسباندن رشته ها را میاموزید.
- StringCaseChangeFunctions : دستورات این پروژه برای تبدیل حروف موجود در یک رشته به حروف بزرگ یا کوچک مورد استفاده قرار میگیرند.
- StringCharacterFunctions : این پروژه به شما آموزش میدهد که چطور در یک رشته یک کاراکتر خاص را دریافت/تنظیم کنید.
- StringComparisonOperators : عملگرهای استفاده شده در این پرژه به شما امکان میدهند تا در برنامههایتان مقایسههای متنوعی را بین رشتهها انجام دهید و به تصمیمگیری بر اساس مقایسه دو رشته بپردازید.
- StringConstructors : این پروژه به شما نحوه دستکاری string ها را آموزش میدهد. برای مثال شما میتوانید کاراکترهایی را به رشتهها اضافه کنید، رشتهها را از طریق الحاق ترکیب کنید، طول یک رشته را دریافت کنید، رشتههای فرعی را جستجو و جایگزین کنید.
- StringIndexOf : indexOf متد یا تابعی است که بر روی یک رشته فراخوانی میشود و یک رشته زیررشته (substring) را به عنوان ورودی میپذیرد .این تابع در رشته اصلی جستجو میکند و موقعیت اولین وقوع (substring) را در رشته اصلی به صورت اندیس (شماره ترتیبی) باز میگرداند.
- : StringLength با استفاده از دستور length می توانید طول رشته ها را بدست آورید.
- StringLengthTrim : شما می توانید طول یک رشته را با استفاده از دستور length بدست آورید یا با استفاده از دستور trim() کاراکترهای اضافی را حذف کنید.
- StringReplace : عوض کردن کاراکتر هایی خاص از یک رشته.
- StringStartsWithEndsWith : چک کردن این موضوع که آیا رشته با کاراکتری خاص شروع / پایان یافته است یا خیر.
- Stringsubstring : جستجو یک زیر رشته (substring) در رشته.
- StringToInt : در این پروژه شما نحوه تبدیل رشته به عدد صحیح را یاد میگیرید.
منو 09.USB :
این بخش شامل مثال هایی از ارتباط موس و کیبرد با آردوینو می باشد. کدها و کتابخانه های این بخش تنها مخصوص بردهای آردوینو Leonardo، Micro و Due است.
- KeyboardLogout : خروج از صفحه کلید) هنگامی که پایه 2 را به زمین وصل کنید، خروج از سیستم رخ می دهد.
- KeyboardMessage : KeyboardMessage در واقع یک رشته (String) است که حاوی پیامی است که میخواهید به عنوان ورودی کیبورد به سیستم عامل ارسال کنید. این پیام ممکن است شامل متن، دستورهای کنترلی، یا ترکیبی از آنها باشد.
- KeyboardReprogram : با اجرای این پروژه پنجره جدیدی را در Arduino IDE باز می شود و برد با یک برنامه ساده چشمک زدن دوباره برنامه ریزی می شود.
- KeyboardSerial : یک بایت را از پورت سریال می خواند و پس از دریافت، برد یک ضربه کلید به کامپیوتر ارسال می کند. ضربه کلید ارسالی یک بالاتر از چیزی است که دریافت شده است، بنابراین اگر یک “a” را از مانیتور سریال ارسال کنید، یک “b” از برد متصل به رایانه دریافت خواهید کرد.
- ButtonMouseControl : در این پروژه شما میتوانید مکاننمای روی صفحه رایانه را با Arduino Leonardo، Micro یا Due کنترل کنید، برای این کار شما به پنج دکمه فشاری برای حرکت مکان نما روی صفحه نیاز دارید( چهار دکمه جهت دار (بالا، پایین، چپ، راست) و یکی برای کلیک چپ ماوس).
- JoystickMouseControl :. هنگام فشار دادن یک دکمه، حرکت مکان نما کامپیوتر را با جوی استیک کنترل می کند.
- KeyboardMouseControl : دستورات ماوس و صفحه کلید را در یک پروژه نشان می دهد.
منو 10.StarterKit_BasicKit :
در این بخش مثال هایی برای کار با کیت های StarterKit و BasicKit وجود دارد.
منو 11.ArduinoISP :
- ArduinoISP : در این پروژه شما میتوانید با استفاده از یک برد آردوینو دیگر، برنامههایی را بر روی بردهای AVR دیگری که از همان خانواده میکروکنترلر AVR هستند، بارگذاری کنید.
- منوی Edit :
این منویابزارهای مهمی را برای ویرایش و تغییر کدها در Arduino IDE ارائه میدهد. این ابزارها برای انجام کارهای مختلف مانند جستجو، جایگزینی، کپی/کات، ایجاد کامنت و… بسیار مفید هستند.
- (Ctrl + Z) Undo :
این گزینه به شما امکان بازگشت به وضعیت قبلی کد (Undo) را میدهد، به این معنا که تغییرات اخیری که اعمال کردهاید را لغو میکند.
- Redo (Ctrl + Y) :
این گزینه به شما امکان اعمال مجدد تغییراتی که قبلاً با استفاده از “Undo” لغو کردهاید را میدهد.
- Cut (Ctrl + X) :
با انتخاب این گزینه، متن یا محتوای انتخاب شده در کد را کات (برش) میدهد و آن را به حافظه کپی میکند تا بتوانید آن را در جای دیگری وارد کنید.
- Copy (Ctrl + C):
این گزینه به شما امکان کپی کردن متن یا محتوای انتخاب شده در کد را میدهد تا بتوانید آن را در جای دیگری وارد کنید.
- (Ctrl + V) Paste :
با استفاده از این گزینه، متن یا محتوایی که در حافظه کپی شده است را در مکان فعلی کرسر وارد میکند.
- (Ctrl + A) Select All :
با انتخاب این گزینه، تمام متن موجود در کد را انتخاب میکند.
- (Ctrl + F) Find :
با انتخاب این گزینه، یک جعبه جستجو باز میشود و شما میتوانید کلمات یا عبارات خاصی را در کد خود جستجو کنید.
- (F3) Find Next :
این گزینه به شما امکان میدهد به مورد بعدی مطابق با جستجویی که انجام دادهاید بروید.
- (Shift + F3 Find) Previous :
با انتخاب این گزینه، به مورد قبلی مطابق با جستجویی که انجام دادهاید بروید.
- (Ctrl + H) Replace :
با انتخاب این گزینه، شما میتوانید یک کلمه یا عبارت را با یک کلمه یا عبارت دیگر در کد جایگزین کنید.
- (Ctrl + L) Go To Line :
این گزینه به شما امکان میدهد به یک خط خاص در کد بروید. شما شماره خط مورد نظر خود را وارد میکنید و به آن خط منتقل میشوید.
- Comment/Uncomment (Ctrl + /) :
با استفاده از این گزینه، شما میتوانید توضیحاتی (کامنتها) را به کدهای خود اضافه کنید یا حذف کنید. اگر یک قسمت از کد را انتخاب کنید و این گزینه را بزنید، آن قسمت به صورت کامنت درآمده یا از حالت کامنت خارج میشود.
- Code Folding :
این گزینه به شما امکان میدهد بخشهایی از کد را جمعکنید تا در یک خط خلاصه نمایش داده شوند.
- منوی Sketch :
- Verify / Compile :
پس از اجرای یکی از این گزینهها و در صورتی که کد بدون مشکلات کامپایل شود، شما میتوانید از گزینه “Upload” برای آپلود کد به برد Arduino استفاده کنید و برنامه را روی برد اجرا کنید.
- Upload :
با انتخاب این گزینه، میتوانید کد را کامپایل کرده و بردهای Arduino خود را برای اجرا آماده کنید.
- Export Compiled Binary :
این گزینه به شما امکان میدهد فایل کامپایل شده (باینری) را در مسیری دلخواه ذخیره کنید.
- Show Sketch Folder :
این گزینه به شما امکان میدهد پوشه حاوی فایلهای پروژه را در سیستم عامل خود باز کنید.
- Add File :
با انتخاب این گزینه، میتوانید فایلهای جدید به پروژه خود اضافه کنید، مثلاً تصاویر، فایلهای متنی، یا فایلهای دیگری که نیاز دارید.
- Include Library :
این زیرمنو به شما امکان میدهد کتابخانههای مورد نیاز پروژهتان را به کد اضافه کنید. میتوانید از کتابخانههای استانداردArduino و یا کتابخانههای شخصی خود استفاده کنید
نکته : کتابخانهها در واقع مجموعهای از کدها و توابع آماده هستند که برای انجام وظایف خاصی در پروژههای Arduino مورد استفاده قرار میگیرند. این کتابخانهها به شما امکان میدهند کدهای مورد نیاز خود را بازنویسی نکنید و از توابع و روشهای آماده آنها استفاده کنید.
- Manage Libraries : این گزینه به شما امکان میدهد کتابخانههای موجود را مشاهده، نصب، یا بهروزرسانی کنید. با انتخاب این گزینه، پنجرهای باز میشود که در آن میتوانید کتابخانهها را جستجو کنید و نصب کنید.
- Add .ZIP Library : این گزینه به شما امکان میدهد کتابخانههای شخصی یا سفارشی که به صورت فایل فشرده ZIP در دسترس دارید را به پروژههای خود اضافه کنید.
- منوی Tools :
این منو شامل مجموعهای از زیرمنوها و گزینههای مختلف است که به شما امکان میدهند تنظیمات مربوط به پروژه و بردهای Arduino خود را تغییر دهید.
Auto Format : برای اصلاح فرمت کد منبع شما به شکل خودکار و مرتب استفاده میشود. این گزینه به شما امکان میدهد کد خود را به یک استاندارد خاص فرمت کنید تا کد شما به صورت قابل خواندنتر و منظمتر نمایش داده شود.
نکته : زمانی که از این گزینه استفاده می کنید، به طور خودکار برخی از قواعد فرمتبندی را اعمال میکند، مانند تراز کردن و تورفتگی (indentation) مناسب، ایجاد فاصلههای مناسب بین خطوط کد، و سایر استانداردهای فرمتبندی کد.
Fix Encoding & Reload : این گزینه برای ترمیم کدهایی که ممکن است با مشکلاتی در کدگذاری مواجه شده باشند و بازنگری کد استفاده میشود.
Manage Libraries : به شما امکان میدهد کتابخانههای مختلف را جستجو کرده، نصب کرده، و بهروزرسانی کنید. از این منو میتوانید به اطلاعات کاملی در مورد کتابخانههای موجود دسترسی پیدا کنید و کتابخانههای جدید را به پروژههای خود اضافه کنید.
Serial Monitor : این گزینه به شما امکان میدهد پنجره مانیتور سریال را باز کنید تا دادههایی که از برد Arduino به کامپیوتر ارسال میشوند را مشاهده کنید.
Serial Plotter : شما امکان میدهد دادههایی که از برد Arduino به کامپیوتر ارسال میشوند را به صورت گرافیکی و نمودارها نمایش دهید. این ابزار به شما کمک میکند دادهها را به صورت بصری تحلیل کنید و تغییرات در دادهها را در طول زمان ببینید.
WiFi101/WiFiNINA Firmware Updater : فریمور بهروزرسانی میتواند مشکلات امنیتی و اشکالزدایی را برطرف کند و عملکرد بهتری برای بردهای WiFi101 و WiFiNINA فراهم کند. از آنجایی که نسخههای جدید فریمور اغلب بهبودها و بهبودهای عملکردی دارند، بهروزرسانی فریمور معمولاً توصیه میشود.
Board : این زیرمنو به شما امکان میدهد نوع برد مورد استفاده در پروژه خود را انتخاب کنید. این منو به شما امکان میدهد تنظیمات مربوط به برد مورد استفاده خود را تغییر دهید تا کد منبع شما به درستی بر روی برد مورد نظر اجرا شود.
: Processor برخی از بردهای Arduino دارای انواع مختلفی از پردازندهها هستند. این گزینه به شما امکان میدهد پردازنده مورد استفاده برای برد خود را انتخاب کنید.
Port : شما میتوانید پورت USB متصل به برد Arduino خود را انتخاب کنید. این پورت مورد استفاده برای ارتباط بین کامپیوتر و برد Arduino است.
Programmer : در صورتی که از برنامهنویس خارجی برای بردهای خاص استفاده میکنید، میتوانید این گزینه را تنظیم کنید.
: Burn Bootloader (Arduino IDE به شما امکان میدهد بوتلودر (bootloader) مربوط به برد Arduino خود را روی برد اجرا کنید یا بازنویسی کنید. بوتلودر نرمافزاری است که در بردهای Arduino نصب شده و به شما امکان میدهد کدها به سادگی از طریق پورت USB به برد ارسال و بر روی آن اجرا شوند.
- منوی Help :
به شما امکان میدهد به منابع و اطلاعات مرتبط با Arduino دسترسی پیدا کنید و به مشکلات و سوالات خود پاسخ بگیرید.
خب استفاده از IDE آردوینو تموم شد اگه بخش هایی از آموز نا مفهموه یا سوالی دارید میتونید در بخش نظرت همین آموش بپرسید تا دوستان در سریع ترین زمان ممکن بهتون جواب بدن یا آموزش آبدیت کنیم
_______ _______