آردوینو فارسی
6.98K subscribers
760 photos
309 videos
641 files
246 links
اولین کانال تخصصی آموزش آردوینو
گروه:
https://t.me/ArduinoFarsi_G
لینک کانال یوتیوب:
https://www.youtube.com/c/ArduinoFarsi
ارتباط با ادمین و ثبت سفارش:
☎️ رضا اژدرکش: 09199117192
💲 حمایت از کانال:
شماره کارت: 6104331049714000
بانک ملت بنام رضا اژدرکش
Download Telegram
Ardumoto Motor Driver Shield
https://telegram.me/ArduinoKaraneJavan
چندین شیلد سوار بر هم
https://telegram.me/ArduinoKaraneJavan
خلاصه اینکه شیلد های زیادی وجود دارند که میتوانیم استفاده کنیم و در صورت عدم وجود شیلد مورد نیاز خودمان آنرا بسازیم که در ادامه آموزش داده خواهد شد.
وای دده چقدر شیلد اینجاست https://telegram.me/ArduinoKaraneJavan
در ادامه مطلب به روش ساخت شیلد مورد نیاز خودمان خواهیم پرداخت اما فعلاً بریم سراغ اصل مطلب یعنی با یکی از بردها شروع بکار کنیم و پایه هاش رو شناسایی کنیم، کار هر پایه رو بدونیم، با محیط IDE نرم افزار آردوینویی که نصب کردیم آشنا بشیم، دستورات برنامه نویسی رو یاد بگیریم و به امید خدا با استفاده از مثالهایی که از مبتدی تا حرفه ای براتون میگذارم کم کم به یک آردوینو کار جوان واقعی تبدیل بشیم.
https://telegram.me/ArduinoKaraneJavan
گاه گمان نمی کنی و می شود
گاه نمی شود که نمی شود
گاه هزاران دوره دعا بی اجابت است
گاه نگفته قرعه بنام تو می شود
گاه گدای گدایی و بخت نیست
گاه تمام شهر گدای تو می شود

https://telegram.me/ArduinoKarane
سلام دوستان آردوینو کار عزیز
امروز میخوام براتون کمی از برد آردوینو UNO و پایه هاش بگم.
آردوینو UNO یا هر برد آردوینوی دیگری که وجود دارد دارای یک سری پایه های ورودی خروجی دیجیتال برای ارتباط با کلید ها، رله ها و LED و نظایر آن می باشد. که پایه های RS232 و I2C و SPI و PWM نیز روی همان پایه ها است که پایه های دیجیتال با اعداد 0 الی 13 در روی آردوینو UNO نمایش داده شده اند. و در برنامه نویسی نیز از همین اعداد جهت معرفی پین مورد نظر استفاده می شود. مانند مثال زیر:
digitalWrite (5,HIGH);
که در این مثال آردوینو پایه دیجیتال که روی برد با شماره 5 مشخص شده است را یک میکند.(HIGH). در ضمن میتوان در برنامه نویسی بجای اعداد خالی از حرف D در اول شماره پایه های دیجیتال استفاده نمود. بعنوان مثال دستور بالا را میتوان بصورت زیر نوشت:
digitalWrite (D5,HIGH);
پایه های آنالوگ در آردوینو با نامهای A0,A1,A2,... نمایش داده میشوند که بصورت ورودی هستند و نمیتوان از آنها خروجی آنالوگ دریافت کرد.
در برنامه نویسی نیز از همان نامهای A0,A1, ... یا همان اعداد 0 و 1 و 2 و ... استفاده می شود. بعنوان مثال دستور زیر مقدار ولتاژ آنالوگ پایه A0 را می خواند و در متغیر Value قرار میدهد:
int Value;
Value = analogRead (A0);
یا می توان دستور فوق را بصورت زیر نوشت:
int Value;
Value = analogRead (0);
در ضمن یادتان باشد که از پایه های آنالوگ هم میتوان بعنوان ورودی - خروجی دیجیتال استفاده کرد ولی فعلاً اینکار را انجام ندهید تا توضیحات قسمت مقدماتی تمام شوند و بطور کامل با برد فوق آشنا شویم سپس آموزش در این مورد گذاشته خواهد شد.

https://telegram.me/ArduinoKaraneJavan
شماره پایه های آردوینو UNO https://telegram.me/ArduinoKaraneJavan
عملکرد پایه های آردوینو UNO با توجه به شکل بالا بصورت زیر است:

1⃣ پایه هایی که با اعداد 0 الی 13 مشخص شده اند پایه های ورودی - خروجی دیجیتال می باشند.
2⃣ پایه هایی که با A0 الی A5 مشخص شده اند پایه های ورودی آنالوگ می باشند.
3⃣ پایه هایی که با علامت ~ مشخص شده اند پایه های PWM می باشند.
4⃣ پایه هایی که کنار آنها ICSP نوشته شده است جهت ارتباط SPI مورد استفاده قرار می گیرند.
5⃣ پایه هایی که با GND مشخص شده اند پایه های زمین برد (همان منفی مدار) می باشند.
6⃣ پایه های 5V و 3V3 خروجی 5 ولت و 3.3 ولت برای استفاده سایر مدارات، شیلد ها، سنسورها و ماژولهایی می باشد که میخواهیم به آردوینو متصل کنیم.
7⃣ پایه VIN ولتاژ ورودی فیش آداپتور است که در بعضی از شیلدها نیاز است. بعنوان مثال ما شیلدی داریم که با 9 ولت کار میکند در اینصورت این شیلد طوری طراحی شده است که وقتی روی برد آردوینو قرار می گیرد ورودی 9 ولت آن به پایه VIN از آردوینو متصل می شود. و باید ولتاژ ورودی که از فیش پاور به آردوینو متصل می نماییم 9 ولت باشد تا آنرا راه اندازی کند.
8⃣ پایه ای که با AREF مشخص شده است پایه ولتاژ مرجع جهت ورودی های آنالوگ می باشند.
9⃣ پایه ای که با IOREF مشخص شده است، اجازه می دهد شیلدها، خود را با ولتاژ خروجی برد تطبیق دهند. در آینده شیلدها قادر خواهند بود خود را با بردهایی که از AVR با ولتاژ 5 ولت استفاده می کنند و همچنین بردهای آردوینوDue که از ولتاژ 3/3 ولت استفاده می کنند، تطبیق دهند.
🔟 پایه هایی که با RXD و TXD مشخص شده اند پایه های ارتباط با RS232 یا همان پورت سریال می باشند.
1⃣ پین های SDA و SCL نزدیک پین AREF جهت ارتباط I2C می باشند که هیچ چیز در کنار آنها نوشته نشده است.


https://telegram.me/ArduinoKaraneJavan
معرفی برد آردوینو UNO:

برد آردوینو Uno یک میکروکنترلر بر پایه ATmega328 می باشد. این برد 14 پین ورودی و خروجی دیجیتال دارد (که 6 تای آن می تواند به عنوان خروجی PWM استفاده گردد)، 6 ورودی آنالوگ، یک تشدیدگر سرامیکی 16مگاهرتز (Ceramic Resonator)، یک پورت USB، یک پاورجک (ورودی منبع تغذیه)، یک ICSP header و یک دکمه ریست دارد. برد Uno شامل کلیه امکانات مورد نیاز جهت بکارگیری میکروکنترلر موجود بر روی برد می باشد. برای شروع تنها با یک کابل USB، به سادگی برد را به کامپیوترتان متصل کنید و یا آن را با یک آداپور AC-To-DC و یا باتری راه اندازی نمایید.
آردوینو Uno با بردهای پیشین متفاوت است؛ زیرا در آن از تراشه FTDI USB-to-serial استفاده نشده است و به جای آن از یک Atmega16U2 (تا نسخه R2 از Atmega8U2) که به عنوان مبدل USB-to-serialبرنامه ریزی شده، استفاده گردیده است.
نسخه R2 برد Uno دارای یک مقاومت جهت پولینگ اتصال HWB میکروکنترلر به زمین می باشد که تغییر حالت به DFU را آسان تر می کند.
نسخه R3 برد، ویژگی های جدیدی دارد که در ادامه آمده است:

پین های SDA و SCL نزدیک پین AREF و 2 پین جدید دیگر در نزدیکی پین Reset اضافه شده اند. یکی از این پین های جدید IOREF می باشد که اجازه می دهد شیلدها، خود را با ولتاژ خروجی برد تطبیق دهند. در آینده شیلدها قادر خواهند بود خود را با بردهایی که از AVR با ولتاژ 5 ولت استفاده می کنند و همچنین بردهای آردوینوDue که از ولتاژ 3/3 ولت استفاده می کنند، تطبیق دهند. دومین پین برای تغییرات آتی رزرو شده است و در حال حاضر هیچ کاربردی ندارد.
مدار ریست قوی تر ATmega16U2 جایگزین 8U2 شده است.

https://telegram.me/ArduinoKaraneJavan
عملکرد پایه های Arduino - UNO https://telegram.me/ArduinoKaraneJavan
👍3
یک ذره حوب یا بد بودن در سال از نظر ریاضی
سلام آردوینو کاران جوان
دیگه کم کم وقت این رسیده که بریم توی مود برنامه نویسی.
پس بریم که با محیط IDE آردوینو آشنا بشیم.

https://telegram.me/ArduinoKaraneJavan
محیط IDE آردوینو
همانگونه که ملاحظه می فرمایید در محیط IDE آردوینو نیز مانند هر نرم افزار دیگری چندین منو و 5 عدد کلید میانبر برای منوهای مهم قرار دارد.
پس بنابراین از توضیحات اضافی در مورد منو های تکراری خودداری کرده و به منو های خاص می پردازیم.


https://telegram.me/ArduinoKaraneJavan
منوی File
منوی File:
در این منو گزیه های شکل بالا قرار داند که توضیح مختصری راجع به هرکدام به اطلاع شما می رسانم:
1- منوی New: یک IDE جدید برای نوشتن برنامه جدید ایجاد میکند و تمامی تنظیماتی که در این IDE انجام داده ایم از قبیل نوع برد آردوینو، Baud Rate، شماره پورت و غیره را به آن اختصاص می دهد.

2- منوی Open: جهت باز کردن یک پروژه که قبلاً نوشته ایم استفاده می شود. ولی باز هم تنظیمات فعلی IDE را روی آن اعمال می نماید. مثلاً اگر یک طرح فرستنده با برد Arduino Nano نوشته اید و یک طرح گیرنده با برد Arduino Mega 2560 نوشته اید و می خواهید هر دوی آنها را باز کرده و در سریال مانیتور خروجی هردوی آنها را ببینید هرگز از منوی Open یکی از طرح ها طرح دیگر را باز نکنید. زیرا تنظیمات سریال هردو یکسان می شود و تنظیمات برد آنها نیز یکی می شود و بنابراین نمیتوانید خروجی هردو طرح را در سریال مانیتور بطور همزمان ببینید. بنابراین در اینگونه موارد بهتر است که طرح ها را بصورت جداگانه باز نمایید.

3- منوی Open Recent: جهت باز کردن پروژه هایی که همین اواخر روی آنها کار کرده اید استفاده می شود و لیست آنها در زیر منوی این منو وجود دارد.

4- منوی Sketchbook در سیستم عامل ویندوز کاربردی ندارد و در سیستم عامل لینوکس لیست کتابخانه ها را نشان می دهد. در سیستم عامل ویندوز کتابخانه ها در My Documents\Arduino\libraries قرار دارند.

5- منوی Examples: این منو دارای مثالهایی برای شروع برنامه نویسی آردوینو و آموزش کار با آردوینو می باشد و در ضمن هر کتابخانه جدیدی که به آردوینو اضافه می کنید مثالهای استفاده از آن کتابخانه به این قسمت منتقل می شود.

6- منوهای Close , Quit هردو برای خروج از برنامه می باشند.

7- منوی Save: این منو جهت ذخیره آخرین تغییرات در برنامه نوشته شده می باشد. البته به محض کامپایل کردن برنامه نوشته شده یا Upload کردن آن در برد تغییرات بصورت اتوماتیک ذخیره می شوند.

8- منوی Save As: برای ذخیره برنامه نوشته شده در یک مکان دیگر از حافظه می باشد.

9- منوی Page Setup: برای تنظیمات صفحه برای چاپ می باشد.

10- منوی Print: جهت چاپ خروجی مورد استفاده قرار می گیرد.

11- منوی Preferences: از این منو جهت اعمال تنظیماتی از قبیل نمایش یا عدم نمایش شماره خط در محیط IDE، انتخاب زبان منو ها و غیره استفاده می شود. که در زیر توضیح داده می شود.

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


https://telegram.me/ArduinoKaraneJavan
در این شکل کلیه منو ها به زبان شیرین فارسی ترجمه شده اند بجز دو گزینه که لازم دیدم راجع به گزینه Enable Code Folding توضیحاتی بدهم.
در صورت تیک زدن این گزینه در سمت چپ نام توابع و دستوراتی مانند if و for و موارد اینچنینی که دارای مجموعه ای از دستورات می باشند یک علامت + می افتد که توسط آن می توانیم توابعی را که نوشته ایم و دیگر با آن کاری نداریم را پنهان کنیم و فقط نام تابع نمایش داده می شود. که در برنامه های طولانی که می نویسید استفاده از این گزینه بسیار کارآمد است.


https://telegram.me/ArduinoKaraneJavan