دوستان سلام! امیدوارم حالتون عالی باشه. در این مقاله قصد داریم به شما معرفی مفصلی از Arduino Mega 2560 ارائه کنیم. این یک برد میکروکنترلر است که توسط Arduino.cc توسعه یافته و بر اساس میکروکنترلر Atmega2560 ساخته شده است. اولین پروژه آردوینو در موسسه طراحی تعامل Ivrea در سال 2003 توسط David Cuartielles و Massimo Banzi با هدف ارائه راهی ارزان و انعطاف پذیر برای دانش آموزان و متخصصان برای یادگیری برنامه نویسی آغاز شد.
بردهای آردوینو به طور گسترده ای در رباتیک، سیستم های یکپارچه، اتوماسیون، اینترنت اشیا (IoT) و پروژه های الکترونیک استفاده می شوند. این بردها در ابتدا برای دانشجویان و کاربران غیر فنی معرفی شدند اما امروزه بردهای آردوینو به طور گسترده در پروژه های صنعتی مورد استفاده قرار می گیرند.
قبلاً مقالاتی در مورد Arduino Uno، Arduino Nano به روز کرده ایم. همه این ماژول ها مشابه به هم عمل می کنند. برخی از ویژگیهای اساسی مانند طراحی چیدمان PCB، اندازه، تعداد پینهای آنالوگ و سازگاری با برد برد وجود دارد که آنها را از یکدیگر متمایز میکند. از نظر کدنویسی، تمامی این بردها در نرم افزار Arduino IDE برنامه ریزی می شوند و برای قرار دادن آنها در حالت اجرا، نیازی به اتصال قطعات یا دستگاه های اضافی ندارید. همه چیز از قبل در برد ساخته شده است که این ماژول را به راحتی در دسترس قرار می دهد. فقط طبق نیاز خود برد بورد را وصل کنید و با آن اجرا کنید.
زمانی که نیاز به انجام یک کار ساده با پینهای ورودی/خروجی کمتر و حافظه کمتر دارید بردهای نانو و یونو مناسب هستند، با این حال، هنگامی که پروژه پیچیده می شود، یک برد با حافظه کمتر قادر به تکمیل کار نیست. اینجاست که آردوینو مگا 2560 به کار می آید. این برد دارای 54 پین دیجیتال و 16 پین آنالوگ با حافظه بیشتر برای ذخیره کد برنامه است. از 54 پایه دیجیتال 16 پایه می تواند برای تولید PWM به کار رود.
در اینجا شکلی آورده شده که نکات کلیدی آردوینو Mega2560 را نشان می دهد:
مشخصات ماژول Mega2560
شماره. | Nano مشخصات | مقدار |
1 | میکروکنترلر | Atmega2560 |
2 | اسیلاتور کریستالی | 16MHz |
3 | ولتاژ کاری | 5V , 3.3V |
4 | ولتاژ ورودی | 7V-12V |
5 | ماکزیمم نرخ جریان تراشه | 40mA |
6 | USB | Type-B Micro USB |
7 | ICSP هدر | بلی |
8 | DC جک تغذیه | بلی |
9 | نرخ جریان هر پایه | 20mA |
10 | Flash | 256K |
11 | SRAM | 8K |
12 | EEPROM | 4K |
13 | PWM | 15 |
15 | Digital I/O | 54 |
16 | تعداد پایه آنالوگ | 16 |
پایه های ماژول Mega2560
شماره. | شماره پایه | توصیف پایه |
1 | D0 – D53 | پایه های ورودی/خروجی دیجیتال |
2 | A0 – A15 | پایه های ورودی/خروجی آنالوگ |
3 | D2 - D13 | پایه های مدولاسیون عرض پالس PWM |
4 | Pin # 0 (RX) , Pin # 1 (TX) Pin # 19 (RX1) , Pin # 18 (TX1) Pin # 17 (RX2) , Pin # 16 (TX2) Pin # 15 (RX3) , Pin # 14 (TX3) | پایه های ارتباط سریال |
5 | Pin # 50 ( MISO ) Pin # 51 ( MOSI ) Pin # 52 ( SCK ) Pin # 53 ( SS ) | پایه های ارتباط SPI |
6 | Pin # 20 ( SDA ), Pin # 21 ( SCL ) | پایه های ارتباطی I2C |
7 | پایه # 13 | LED روی برد |
8 | D2 & D3 | پایه های اینتراپت خارجی |
آردوینو مگا به طور ویژه برای پروژه هایی طراحی شده است که به مدارهای پیچیده و فضای حافظه بیشتری نیاز دارند. بسیاری از پروژه های الکترونیکی را می توان به خوبی توسط سایر بردهای موجود در بازار انجام داد که آردوینو مگا را برای پروژه های معمولی غیر معمول می کند. با این حال، پروژههایی وجود دارند که به دلیل توانایی آن در ذخیره دستورالعملهای بیشتر در حافظه کد و تعدادی پین دیجیتال و آنالوگ ورودی/خروجی تنها توسط آردوینو مگا انجام میشوند، مانند ساخت پرینترهای سه بعدی یا کنترل بیش از یک موتور، سه راه برای تغذیه برد وجود دارد. می توانید از کابل USB برای تغذیه برد و انتقال کد به برد استفاده کنید.
این ماژول دارای فیوز قابل تنظیم مجدد است که از داغ شدن بیش از حد پورت USB کامپیوتر شما در صورت کشیدن جریان زیاد از برد جلوگیری می کند. اکثر رایانه ها دارای توانایی محافظت از خود در برابر چنین دستگاه هایی هستند، با این حال، افزودن فیوز یک لایه حفاظتی اضافی را فراهم می کند.
توصیف پایه های ماژول Mega2560
5 ولت و 3.3 ولت: این پین برای ارائه ولتاژ تنظیم شده خروجی در حدود 5 ولت استفاده می شود. این منبع تغذیه تنظیم شده، کنترلر و سایر اجزای برد را تغذیه می کند. می توان آن را از Vin برد یا کابل USB یا منبع ولتاژ 5 ولت تنظیم شده دیگری تهیه کرد. در حالی که تنظیم ولتاژ دیگری توسط پین 3.3 ولت ارائه می شود. حداکثر توانی که می تواند مصرف کند 50 میلی آمپر است.
GND پنج پایه زمین روی برد موجود است که در مواقعی که بیش از یک پایه زمین برای پروژه مورد نیاز است مفید خواهد بود.
Reset این پین برای ریست کردن برد استفاده می شود. تنظیم این پین روی LOW باعث ریست شدن برد می شود.
Vin این ولتاژ ورودی وارد شده به برد است که از 7 ولت تا 20 ولت متغیر است. ولتاژ اعمال شده توسط جک پاور از طریق این پین قابل دسترسی است. با این حال، ولتاژ خروجی از طریق این پین به برد به طور خودکار تا 5 ولت تنظیم می شود.
ارتباط سریال. RXD و TXD پین های سریالی هستند که برای انتقال و دریافت داده های سریال استفاده می شوند، یعنی Rx نشان دهنده دریافت داده ها است در حالی که Tx برای ارسال داده استفاده می شود. چهار ترکیب از این پین های سریال استفاده می شود که در آن Serail 0 شامل RX(0) و TX(1)، سریال 1 حاوی TX(18) و RX(19)، سریال 2 حاوی TX(16) و RX(17)، و سریال 3 شامل TX(14) و RX(15) می باشد.
وقفه های خارجی شش پین برای ایجاد وقفه های خارجی استفاده می شود، یعنی وقفه 0(0)، وقفه 1(3)، وقفه 2(21)، وقفه 3(20)، وقفه 4(19)، وقفه 5(18). این پینها به روشهای مختلفی وقفه ایجاد میکنند، یعنی ارائه مقدار LOW، لبه بالارونده یا نزولی یا تغییر مقدار به پایههای وقفه.
LED. این برد دارای LED داخلی است که به پین دیجیتال 13 متصل است. مقدار HIGH در این پایه LED را روشن می کند و مقدار LOW آن را خاموش می کند. این led به شما امکان می دهد مهارت های برنامه نویسی خود را در زمان واقعی تغییر دهید.
. AREF این مخفف مرجع ولتاژ آنالوگ است که یک ولتاژ مرجع برای ورودی های آنالوگ است.
پین های آنالوگ. بر روی ماژول 16 پین آنالوگ با برچسب A0 تا A15 تعبیه شده است. توجه به این نکته ضروری است که تمامی این پین های آنالوگ را می توان به عنوان پین های ورودی/خروجی دیجیتال نیز استفاده کرد. هر پین آنالوگ دارای وضوح 10 بیتی است. این پین ها می توانند از 0 تا 5 ولت اندازه گیری کنند. با این حال، مقدار بالایی را می توان با استفاده از تابع AREF و ()analogReference تغییر داد.
I2C. دو پایه 20 و 21 از ارتباط I2C پشتیبانی می کنند که در آن 20 نشان دهنده SDA (خط داده سریال عمدتاً برای نگهداری داده ها استفاده می شود) و 21 نشان دهنده SCL (خط ساعت سریال عمدتاً برای ارائه همگام سازی داده ها بین دستگاه ها استفاده می شود)
ارتباطات SPI .SPI مخفف عبارت Serial Peripheral Interface است که برای انتقال داده بین کنترلر و سایر اجزای لوازم جانبی استفاده می شود. چهار پین یعنی 50 (MISO)، 51 (MOSI)، 52 (SCK)، 53 (SS) برای ارتباط SPI استفاده می شود.
انداره ماژول Mega2560 در زیرآورده شده است:
برنامه نویسی آردوینو مگا 2560
ماژول Mega 2560 را می توان با استفاده از نرم افزار Arduino به نام IDE که از برنامه نویسی C پشتیبانی می کند برنامه ریزی کرد.
کدی که روی نرم افزار می سازید Sketch نام دارد که در نرم افزار نوشته می شود و سپس از طریق کابل USB به برد منتقل می شود.
این برد دارای یک بوت لودر داخلی است که استفاده از پروگرامر خارجی را برای نوشتن کد در برد بی نیاز می کند.
بوت لودر با استفاده از پروتکل STK500 ارتباط برقرار می کند.
هنگامی که برنامه را کامپایل و روی برد رایت کردید، می توانید کابل USB را جدا کنید که در نهایت برق را از برد جدا می کند.
چندوظیفگی یکی دیگر از ویژگی های مفید ماژول مگا آردوینو است. با این حال، نرمافزار Arduino IDE از ویژگی چندوظیفهای پشتیبانی نمیکند، اما میتوانید از سیستمعاملهای دیگری مانند FreeRTOS و RTX برای نوشتن برنامه C برای این منظور استفاده کنید. این به شما انعطاف پذیری استفاده از برنامه ساخت سفارشی خود را با استفاده از اتصال دهنده ISP می دهد.
کاربردهای آردوینو مگا 2560
آردوینو مگا 2560 یک انتخاب ایده آل برای پروژه هایی است که به فضای حافظه بیشتری و تعداد پین های بیشتری روی برد نیاز دارید. در زیر کاربردهای اصلی مگا بردهای آردوینو آورده شده است.
توسعه چاپگر سه بعدی
کنترل و راه اندازی بیش از یک موتور
رابط چندین سنسور
سنجش و تشخیص دما
پروژه های تشخیص سطح آب
اتوماسیون خانگی و سیستم های امنیتی
سیستم های یکپارچه
برنامه های کاربردی اینترنت اشیا
برنامه نویسی موازی و چند وظیفه ای
دیدگاه خود را بنویسید