برد آردوینو مگا Arduino Mega بر پایه آی سی های میکرو کنترلر سری ATmega1280 می باشد. تولید برد آردوینو مگا Arduino Mega متوقف شده است. سازنده نسخه ای پیشرفته تر و ارتقاء یافته با عنوان آردوینو Mega 2560 ارائه کرده است.
سخنرانی آقای ماسیمو بانزی، بنیانگذار آردوینو
برد آردوینو Mega یک برد میکروکنترلر بر پایه ATmega1280 می باشد. این برد مجموعا 54 پین ورودی/خروجی دیجیتال که 14 تای آن می تواند به عنوان خروجی PWM استفاده شود، 16 ورودی آنالوگ، 4 پورت UART پورت های سریال سخت افزاری، یک نوسان ساز کریستال 16 مگاهرتز، یک پورت USB، یک پاورجک، یکICSP Header و یک دکمه ریست دارد. برد Mega شامل کلیه امکانات مورد نیاز جهت بکارگیری میکروکنترلر موجود برروی برد می باشد. برای شروع، تنها با یک کـابل USB، به سادگی برد را به کامپیوتـرتان وصل کنید، و یا آن را با یـک آداپـتور AC-to-DC و یا باتری راه اندازی نمایید.
برد Mega با اکثر شیلدهایی که برای آردوینو مدل Duemilanove یا Diecimila طراحی شده اند، همخوانی دارد.
خلاصه
ATmega1280 |
میکروکنترلر |
5 ولت |
ولتاژ عملیاتی |
7-12 ولت |
ولتاژ ورودی (پیشنهادی) |
6-20 ولت |
ولتاژ ورودی (محدوده) |
54 |
پین های دیجیتال ورودی/خروجی |
16 |
پین های آنالوگ ورودی |
40 میلی آمپر |
جریان DC هر پین ورودی/خروجی |
50 میلی آمپر |
جریان DC پین 3.3 ولتی |
128کیلوبایت |
حافظه فلش |
8 کیلوبایت |
SRAM |
4 کیلوبایت |
EEPROM |
16 مگاهرتز |
سرعت ساعت |
تغذیه
ولتاژ مورد نیاز آردوینو مدل Mega می تواند از طریق یک اتصال USB و یا یک منبع تغذیه خارجی همچون باتری یا آداپتور AC-to-DC تأمین گردد. منبع تغذیه به صورت خودکار انتخاب می شود.
آداپتور که سوکت آن از نوع center-positive با قطر 2.1 میلی متری باشد؛ می تواند به پاورجک موجود برروی برد متصل گردد و سیم های باتری می توانند مستقیما وارد پین های GND و Vin شوند.
برد می تواند با منبع تغذیه خارجی 6 تا 20 ولت کار کند. اگر ولتاژ منبع تغذیه پایین تر از 7 ولت باشد، روی ولتاژ پین ها نیز اثر خواهد گذاشت و ممکن است ولتاژ خروجی آنها کمتر از 5 ولت شود، و باعث نوسان گردد. ولتاژ بیش از12 ولت نیز، می تواند موجب افزایش دمای رگولاتور و در نتیجه آسیب برد شود. ولتاژ پیشنهادی مناسب بین 7 تا 12 ولت می باشد.
پین های مربوط به منبع تغذیه به شرح زیر است:
VIN:این پین، پین ورودی ولتاژ آردوینو است که در مواقع استفاده از منبع تغذیه خارجی به جای منبع تغذیه تنظیم شده یا اتصال USB 5 ولتی از آن استفاده می شود و چنانچه برد از طریق پاورجک به منبع تغذیه وصل شده باشد، می توانید از طریق این پین (به عنوان خروجی) به ولتاژ منبع تغذیه دسترسی داشته باشید.
5V: این پین یک ولتاژ تنظیم شده 5 ولت را از طریق رگولاتور موجود بر روی برد فراهم می کند. برد می تواند از طریق پاورجک 12-7 ولت DC، پورت 5 ولتUSB و یا پین VIN برد 12-7 ولت، تغذیه شود. ولتاژ پین های 5 ولت و 3/3 ولت از رگولاتور عبور می نماید و استفاده از ولتاژ این پین ها ممکن است باعث صدمه دیدن برد شود. از همین رو استفاده از این پین ها توصیه نمی گردد.
3.3V: یک ولتاژ 3/3 ولتی، بوسیله ی رگولاتور روی برد فراهم می گردد که حداکثر جریان آن 50 میلی آمپر می باشد.
GND: پین های زمین.
شماتیک و مرجع طراحی
در زیر فایلهای مربوطه از سایت مرجع لینک داده شدهاند :
فایل ایگل: arduino-mega-reference-design.zip
فایل شماتیک: arduino-mega-schematic.pdf
حافظه
ATmega1280، جهت ذخیره کد، دارای 128 کیلوبایت حافظه فلش می باشد که 8 کیلو بایت از آن، جهت BootLoader استفاده می گردد 8 کیلو بایت مربوط به حافظه SRAM و 4 کیلوبایت نیز مربوط به حافظه EEPROM می باشد.
پین های ورودی و خروجی
هر یک از 54 پین دیجیتال موجود بر روی برد ATmega1280با استفاده از توابع pinMode()، digitalWrite() و digitalRead()، می تواند به عنوان ورودی یا خروجی مورد استفاده قرار گیرد. ولتاژ پین ها 5 ولت بوده و ظرفیت جریان هر پین حداکثر 40 میلی آمپر خواهد بود. همچنین هر یک از این پین ها دارای یک مقاومت داخلی 50-20 کیلواهمجهت Pull-Up می باشد که به صورت پیش فرض غیرفعال است. به علاوه، برخی از این پین ها دارای عملکردهای منحصر به فردی هستند که شرح آن در زیر آمده است:
Serial پین های (RX) یا 0 و (TX) یا 1: - (RX) 19 و (TX) 18; Serial 2 - (RX) 17 و (TX) 16; Serial 3 - (RX) 15 - (TX) 14; : پین RX برای دریافت و TX جهت انتقال اطلاعات به صورت سریال و با پروتکل TTL استفاده می شود. این پین ها به پین های مرتبط USB-to-TTL ATmega16U2 متصل هستند.
وقفه خارجی: پین 2 (وقفه 0)، 3 (وقفه 1)، 18 (وقفه 5)، 19 (وقفه 4)، 20 (وقفه 3)، و 21 (وقفه 2): این پین ها می توانند به صورتی تنظیم شوند که یک وقفه را را براساس اندکی افزایش یا کاهش لبه، و یا هر نوع تغییر در مقدار، ایجاد نمایند.
PWM: پین های 2 تا 13 و 44 تا 46 : امکان دسترسی به یک خروجی PWM 8 بیتی را با استفاده از تابع analogWrite()فراهم می کنند.
SPI: SPI-50 (MISO)، 51 (MOSI)، 52 (SCK) ، 53 (SS): با استفاده از توابع کتابخانه ای این پین ها می توانند یک ارتباط SPI ایجاد نمایند. همچنین پین های SPI از طریق ICSP Header نیز قابل دسترسی هستند که به صورت فیزیکی با بردهای Uno، Duemilanove، و Dieimila همخوانی دارد.
LED- 13: یک LED آماده، به پین دیجیتال 13 متصل شده است. هنگامی که پین در حالت HIGH قرار دارد، LED روشن و زمانی که پین در حالت LOW قرار دارد، خاموش می شود.
I2C پایه های: 20 (SDA) - 21 (SCL I2Cاین پین ها، امکان ایجاد یک ارتباط TWI را با استفاده ازتوابع کتابخانه ای Wireمقدور می سازند. توجه کنید که محل قرارگیری این پین ها با محل پین های TWI در برد های Duemilanove یا Diecimila یکسان نیست.
برد16 ورودی آنالوگ دارد که میزان تفکیک پذیری هر یک از آنها 10 بیت (یعنی 1024 مقدار مختلف) می باشد. این پین ها به طور پیش فرض می توانند ولتاژی بین ولتاژ پایه (Ground) تا حداکثر 5 ولت را اندازه گیری نمایند. اگر چه با استفاده از پین AREF و تابع analogRefrence() می توان حد بالای این تفکیک پذیری را تغییر داد .
سایر پین ها
AREF:ولتاژ مرجع برای ورودی های آنالوگ، از طریق این پین و با استفاده از تابع analogReference()تأمین می گردد.
Reset:وضعیت لاین مرتبط را برای ریست میکروکنترلر در حالت Low قرار می دهد، معمولاً زمانی از این پین استفاده می شود که بخواهید بر روی شیلدتان دکمه ریست قرار دهید. زیرا استفاده از شیلدها از دسترسی به دکمه ریست موجود بر روی برد آردوینو جلوگیری می کند.
ارتباطات
بردATmega1280شامل امکاناتی می باشد که ارتباط با کامپیوتر، سایر بردهای آردوینو، و یا دیگر میکروکنترلرها را مقدور می سازد. این برد، چهار سخت افزار UART را برای ارتباط سریال (5ولت) TTL فراهم می کند.ATmega16U2 ( یا ATmega8U2 در بردهای نسخه 1 و 2) موجود بر روی برد، یکی از این ارتباطات سریال را تبدیل به یک ارتباط USB نموده و در نهایت یک پورت سریال مجازی(COM) روی کامپیوتر شما ایجاد می کند. سیستمهای ویندوزی به یک فایل با پسوند .inf احتیاج خواهند داشت، اما سیستم های Linux و OSX، به طور خودکار، برد را به عنوان یک پورت COM شناسایی می کنند. نرم افزار آردوینو شامل یک بخش کنترل پورت سریال است که به شما اجازه می دهد داده های متنی را به آردوینو ارسال، یا از آن دریافت نمایید. چراغهای RX و TX موجود بر روی برد در زمان ارسال و دریافت اطلاعات از طریق تراشه ATmega8U2/ATmega16U2 و یا اتصال USB به کامپیوتر (به غیر از ارتباط سریالی پین های 0 و 1) در حالت چشمک زن قرار می گیرد.
AT Mega ارتباط SPI و TWI را نیز مقدور می سازد. نرم افزار آردوینو شامل یک کتابخانه Wire می باشد تا کار با درگاه TWI را آسان کند.
برنامه نویسی
برد آردوینو Mega با نرم افزار آردوینو قابل برنامه نویسی است.
AT Mega AT Mega موجود بر روی برد Arduino Mega دارای یک bootloaderاز پیش آماده می باشد که به شما این امکان را می دهد تا بدون نیاز به پروگرامر جانبی، کدهای جدید خود را آپلود و اجرا نمایید. این ارتباط بر اساس پروتکل STK500 بر قرار می شود.
همچنین شما می توانیدBootLoader را نادیده گرفته و مستقیماً از طریق ICSP header برد را برنامه ریزی نمایید.
ریست خودکار
برد آردوینو Mega به صورتی طراحی شده است که در صورت اتصال به کامپیوتر، قبل از آپلود کد جدید، امکان ریست بوسیله ی نرم افزار آردوینو را به جای فشار دکمه ریست داشته باشید. یکی از خطوط سخت افزاری کنترل جریان (DTR) در میکروکنترلر ATmega8U2 از طریق یک خازن 100 نانوفارادی FT232RL، به پایه ریست AT Mega متصل شده است. زمانی که این خط آزاد می شود (در حالت LOW قرار می گیرد) پایه ریست در وضعیتی قرار می گیرد که باعث ریست پردازنده می شود. با استفاده از این خازن نرم افزار آردوینو به شما اجازه می دهد که به راحتی و با فشردن دکمه Uploadدر محیط نرم افزاری آردوینو، کد خود را آپلود نمایید. بدین معنی که در وضعیت Low قرار گرفتن DTR همزمان با شروع آپلود، هماهنگی خوبی برای داشتن Time out کوتاهتر توسط BootLoader ایجاد می نماید.
این راه اندازی ملزومات دیگری نیز دارد، زمانی که برد Mega به کامپیوتری که سیستم عامل آن Mac OS X یا لینوکس است، متصل باشد در هر بار ارتباط نرم افزار با برد (از طریق کابل USB) عمل ریست اتفاق می افتد. بعد از گذشت نیم ثانیه یا بیشتر BootLoader برد Mega در حال اجرا می باشد. از آنجا که Mega طوری برنامه نویسی شده است که داده های ناقص (به عنوان مثال داده ای در حاشیه آپلود کد جدید) را نادیده بگیرد، چند بایت اول هر داده ای را که بعد از ایجاد ارتباط به برد ارسال می گردد، جدا می نماید. چناچه برنامه ای بر روی برد در حال اجرا باشد، در زمان شروع برنامه می تواند تنظیمات اولیه و یا سایر داده ها را دریافت کند. توجه داشته باشید نرم افزاری که قرار است با برد آردوینو ارتباط برقرار کند، می بایست حداقل بعد از یک ثانیه تأخیر پس از برقراری ارتباط، نسبت به ارسال اطلاعات اقدام نماید.
برد Mega شامل یک مسیر می باشد که با قطع آن می توانید ریست خودکار را غیر فعال نمایید. این دو نقطه در طرفین این مسیر می توانند دوباره با لحیم کاری به یکدیگر متصل شوند، تا مجدداً ریست خودکار فعال گردد. این قسمت با برچسب « RESET-EN» مشخص شده است. همچنین شما می توانید با اتصال یک مقاومت 110 اهم از پین 5 ولت به پین ریست، سیستم ریست خودکار را غیرفعال نمایید..
محافظت پورت USB از جریان بیش از حد
برد آردوینو Mega دارای یک پلی فیوز قابل ریست جهت محافظت از پورت USB کامپیوتر شما در مقابل افزایش یا کاهش جریان می باشد. علاوه بر این بیشتر کامپیوترها سیستم محافظت داخلی خودشان را دارند و این فیوز صرفاً یک لایه حفاظتی مجزا را فراهم می نماید. چناچه بیش از 500 میلی آمپر جریان از پورت USB گرفته شود، فیوز به صورت خودکار تا زمان متعادل شدن جریان ارتباط را قطع می نماید.
مشخصه های فیزیکی و سازگاری شیلدها
حداکثر طول و عرض PCB برد Mega، به ترتیب 4 و 1/2 اینچ است که البته این ابعاد با احتساب پورت USB و پاور جک، افزایش می یابد. سه سوراخ موجود بر روی برد به شما اجازه می دهد که برد را برروی یک سطح یا جعبه پیچ نمایید. توجه کنید که فاصله بین پین های دیجیتال 7 و 8 برابر 160 میلی متر (0/16 اینچ) و فاصله بین سایر پین ها 100میلی متر می باشد.
برد Mega به گونه ای طراحی شده است که با اکثر شیلدهای طراحی شده برای برد های Uno، Diecimila یا Duemilanove سازگار باشد. پین های دیجیتال شماره 0 تا 13 ( و پین های GND و AREF مجاور)، پین های ورودی آنالوگ شماره 0 تا 5، هدر منبع تغذیه، وICSP Header ، همگی در موقعیت مساوی قرار دارند. به علاوه، UART (پورت سریال) اصلی، روی همان پین هایی (0 و 1) قرار گرفته است که به عنوان وقفه خارجی 0 و 1 (به ترتیب پین های 2 و 3) استفاده می شوند. SPI به واسطه ی ICSP Header در هر دو برد Mega و Duemilanove/Dieimila موجود است. لطفا به خاطر داشته باشید که پین I2C که روی Mega (شماره 20 و 21) می باشد، منطبق با پین های بردهایDuemilanove/Diecimilia (ورودی های آنالوگ 4 و 5) نیست.
سایت سازنده: Arduino
آموزش ایجاد پسوورد در آردوینو Arduino
گذرواژه یا اسم رمز یک کلمه یا جمله و یا رشتهای از کاراکتر است که برای اصالتسنجی به کار میرود. افراد یا ابزارها برای استفاده از یک سامانه محافظت شده توسط گذرواژه، باید آن گذرواژه را به واحد اصالتسنجی آن سامانه ارائه دهند و در صورت ارائهٔ گذرواژهٔ درست مجاز به استفاده از آن سامانه میشوند، همچنین گذرواژه برای اثبات هویت نیز به کار میرود به این صورت که کاربر یک سامانه با ارائه نام کاربری خود باید گذرواژه خود را نیز ارائه بدهد در صورت ارائه گذرواژه درست، ادعای وی در مورد تعلق نام کاربری به وی مورد تائید سامانه قرار میگیرد.گذرواژهها در اغلب سامانههای رایانهای و دستگاههای الکترونیکی مورد استفاده قرار میگیرند. به طور معمول فرایند پیکربندی دستگاههای الکترونیکی توسط گذرواژه محافظت میشود.در ادامه آموزش ایجاد پسوورد در آردوینو با مرجع تخصصی آردوینو ، دیجی اسپارک همراه باشید. در این آموزش برای ایجاد پسوورد و همچنین عملیات بر روی آن از کتابخانه password.h استفاده شده است که میتوانید از تب دانلود در همین صفحه آن را دانلود کنید.
پس از دانلود کتابخانه و اضافه کردن آن به نرمافزار آردوینو ، توسط دستور زیر آن را به برنامه فراخوانی میکنیم.
مشخصات
- کاربری
- مناسب برای استفاده شخصی
- نوع ماژول
- آردوینو - Arduino
- تعداد قطعات
- 67 عدد
- سطح تجربه مورد نیاز
- نیمه حرفه ای
- ولتاژ مورد نياز
- 7 تا 12 ولت DC
- فیبر مدار چاپی
- فایبر گلاس دو رو متالیزه
- ظرفیت
- دارای 54 پایه ورودی و خروجی
- چاپ مس
- دارای چاپ آبی
- فرکانس
- 16 مگاهرتز
- نوع کانکتور
- پین هدر
- معماری پردازنده
- میکروکنترلر
- نسخه آردوینو
- آردوینو Mega
- SWDCLK- پین ساعت SWD
- SWDIO- پین داده SWD
- SWDRST - پین ریست SWD
- میکروپایتون: از زبان برنامه نویسی پایتون استفاده می کند که خواندن و نوشتن آن آسان است و برای مبتدیان مناسب تر است.
- آردوینو: از زبان برنامه نویسی مبتنی بر C++ استفاده می کند که پیچیده تر است و به دانش برنامه نویسی بیشتری نیاز دارد.
- میکروپایتون: می تواند بر روی بردهای مختلف میکروکنترلر، از جمله ESP8266، ESP32 و Raspberry Pi Pico اجرا شود.
- آردوینو: پلتفرمی با مجموعه ای از بردهای توسعه خود است که هر کدام ویژگی ها و قابلیت های خاص خود را دارند.
- میکروپایتون: به طور پیش فرض از بسیاری از کتابخانه های مفید مانند GPIO، ADC، PWM، I2C، SPI و Wi-Fi پشتیبانی می کند.
- آردوینو: برای استفاده از بسیاری از این کتابخانه ها، نیاز به نصب کتابخانه های خارجی دارید.
- میکروپایتون: جامعه ای رو به رشد دارد، اما به اندازه جامعه آردوینو بزرگ نیست.
- آردوینو: جامعه ای بزرگ و فعال با پشتیبانی گسترده و منابع آموزشی فراوان دارد.
- میکروپایتون: به طور کلی سریعتر از آردوینو است.
- آردوینو: برای پروژه های مبتنی بر الکترونیک و سخت افزار مناسب تر است.
- سطح تجربه شما در برنامه نویسی: اگر مبتدی هستید، میکروپایتون انتخاب آسان تری است.
- نوع پروژه ای که می خواهید انجام دهید: اگر به دنبال پروژه ای مبتنی بر الکترونیک هستید، آردوینو انتخاب مناسب تری است.
جهت دسترسی به پروژههای آردوینو از سایت دیجی اسپارک استفاده کنید. طی سالیان گذشته تا به امروز هر روز آموزشهای جدید در جهت توسعه و یادگیری برنامهنویسی آردوینو منتشر شده است. همچنین در سایت دانشجوکیت در بخش کیتهای آردوینو و پروژه های آردوینو، پروژههای متنوعی در اختیار کاربران قرار گرفته شده است تا به روزترین آموزشها را دریافت کنن.
// تعریف تابع
void myFunction() {
// بدنه تابع (کد اجرایی)
}
void setup() {
// کد تنظیمات...
}
void loop() {
// کد اجرایی...
myFunction(); // فراخوانی تابع
}
میکروپروسسور یک تراشه کلی است که اجزای مختلف سیستم را در خود جای داده است، در حالی که میکروکنترلر، یک نوع ویژه از میکروپروسسور است که اجزای کنترلی و ورودی/خروجی را برای اجرای برنامههای کنترلی دارد.
برای یادگیری آردوینو، نیازی به دانش قبلی در زمینه الکترونیک یا برنامهنویسی ندارید. با این حال، داشتن دانش پایه در این زمینهها میتواند به شما کمک کند تا یادگیری آردوینو را سریعتر و آسانتر انجام دهید. اگر دانش پایهای در زمینه الکترونیک ندارید، میتوانید با مطالعه دیجی اسپارک، مقالات و دورههای آموزشی آنلاین و متنی، این دانش را به دست آورید. اگر دانش پایهای در زمینه برنامهنویسی ندارید، میتوانید با یادگیری زبان برنامهنویسی C/C++، شروع به یادگیری آردوینو کنید.
برای کدنویسی در آردوینو، باید از زبان برنامهنویسی C/C++ استفاده کنید. کدهای آردوینو در فایلهای متنی با پسوند .ino ذخیره میشوند. برای نوشتن کدهای آردوینو، میتوانید از نرمافزار Arduino IDE استفاده کنید. در نرم افزار نمونه کد ساده برای شروع قرار گرفته شده است اما میتوانید با مراجعه به سایت دیجی اسپارک از سری آموزشهای مقدماتی و رایگان بهره ببرید.
برای شروع کار با آردوینو، نیازی به دانش قبلی در زمینه الکترونیک یا برنامهنویسی ندارید. با این حال، داشتن دانش پایه در این زمینهها میتواند به شما کمک کند تا یادگیری آردوینو را سریعتر و آسانتر انجام دهید.
برای شروع کار با آردوینو، به یک برد آردوینو ترجیحا مدل UNO R3 و یا R4، کابل Type Bو یک سیستم نیاز دارید. از نرمافزار Arduino IDE برای نوشتن و کامپایل کردن کدهای آردوینو و برنامهنویسی استفاده کنید. برای خرید قطعات کیت سنسور انتخاب خوبی برای شروع برنامه نویسی میکروکنترلرهاست و به مجموعهای از سنسورهای کاربردی دسترسی خواهید داشت.
digitalRead برای خواندن وضعیت یک پین دیجیتال (HIGH یا LOW) و analogRead برای خواندن ولتاژ از یک پین آنالوگ استفاده میشود.
Serial.print داده را به صورت ASCII به سریال ارسال میکند، در حالیکه Serial.write داده را به صورت بایتی ارسال میکند.
آردوینو به صورت پیشفرض thread است. برای پیادهسازی چندنخی، میتوان از توابع اینتراپت و مدیریت توابع کالبک (callback functions) استفاده کرد.
در این خصوص پیشنهاد میشود از فول پک سنسور استفاده کنید.
در ادامه لینک کالا قرار گرفته شده است.
برای عیب یابی کد خود در نرم افزار آردوینو می توانید از بخش Debug استفاده کنید. برای این کار، ابتدا باید گزینه Debug را از منوی Tools انتخاب کنید. سپس، کد خود را به صورت مرحله ای اجرا کنید و مقادیر متغیرها را مشاهده کنید. برای این کار، می توانید از دکمه های Step Into، Step Over، Step Out، و Run استفاده کنید.
در Arduino IDE، خروجی Serial Monitor به عنوان یک ابزار برای مشاهده لاگها به کار میرود. اما در آینده، ابزارهای دیگر ممکن است این امکانات را گسترش دهند.
با استفاده از یک دوربین و الگوریتمهای پردازش تصویر برای تشخیص چهره میتوانید این سیستم را پیادهسازی کنید.
همچنین از برد مایکسیدوینو برای پردازش تصویر میتوانید استفاده کنید.
پین SWD در Arduino UNO R4 برای اشکال زدایی پیشرفته استفاده میشود. SWD مخفف Serial Wire Debug است و یک پروتکل ارتباطی است که برای اتصال یک ابزار اشکال زدایی به یک میکروکنترلر استفاده میشود. با استفاده از پین های SWD، می توان کد میکروکنترلر را در حین اجرا مشاهده کرد، مقادیر حافظه را خواند و نوشت، و نقاط وقفه را تنظیم کرد. این می تواند برای عیب یابی مشکلات در کد میکروکنترلر بسیار مفید باشد.
در Arduino UNO R4، پین های SWD در زیر برد قرار دارند و به شرح زیر نامگذاری شده اند:
Arduino uno R3 بر اساس میکروکنترلر ATmega328P ساخته شده است، در حالی که Arduino uno r4 RA4M1 بر اساس میکروکنترلر RA4M1 از شرکت Renesas ساخته شده است. این دو میکروکنترلر از نظر عملکرد و ویژگیهای کلی شباهتهای زیادی دارند، اما تفاوتهایی نیز با یکدیگر دارند. برخی از تفاوتهای اصلی عبارتند از:
میکروکنترلر RA4M1 دارای حافظه بیشتری، سرعت کلاک بالاتر و پشتیبانی از ویژگیهای جدیدی مانند CAN bus است.
Arduino uno r4 RA4M1 دارای یک منبع تغذیه داخلی 5 ولت است، در حالی که Arduino uno R3 نیاز به یک منبع تغذیه خارجی دارد.
Arduino uno r4 RA4M1 دارای یک پورت سریال جدید به نام JTAG است که برای عیبیابی استفاده می شود.
Arduino uno R3 گزینه بهتری برای مبتدیان است زیرا ارزان تر و سادهتر است. همچنین دارای یک کتابخانه گسترده تر از کدها و مثال ها است که برای مبتدیان مفید است.
Arduino uno r4 RA4M1 گزینه بهتری برای کاربران پیشرفته است زیرا دارای ویژگی ها و عملکردهای بیشتری است. همچنین می تواند برای پروژه هایی که نیاز به حافظه بیشتر، سرعت کلاک بالاتر یا پشتیبانی از ویژگی های جدید مانند CAN bus دارند، استفاده شود.
برای اتصال برد آردوینو uno r4 به کابل تایپ C نیاز دارید. برای برقراری ارتباط ابتدا نرمافزار آردوینو arduino ide را نصب کنید. سپس پکیج UNO R4 را نصب کنید. با استفاده از کابل تایپ C اتصال برد به سیستم را برقرار کنید.
برای نصب برد Arduino Uno R4 Minima RA4M1 در نرمافزار Arduino، ابتدا باید نرمافزار Arduino را از وبسایت رسمی Arduino دانلود و نصب کنید. پس از نصب نرمافزار Arduino، مراحل زیر را دنبال کنید:
۱. در نرمافزار Arduino، به منوی File > Preferences بروید.
۲. در پنجره باز شده، به بخش Boards Manager بروید.
۳. در کادر جستجو، عبارت Arduino Uno R4 Minima RA4M1 را تایپ کنید.
۴. پس از یافتن برد Arduino Uno R4 Minima RA4M1، روی دکمه Install کلیک کنید.
پس از نصب برد Arduino Uno R4 Minima RA4M1، میتوانید آن را در پروژههای خود استفاده کنید.
آردوینو یک پلتفرم توسعه است که شامل یک IDE (محیط توسعه یکپارچه) و یک زبان برنامه نویسی مبتنی بر C++ است. میکروپایتون یک زبان برنامه نویسی است که می تواند بر روی بردهای آردوینو با تراشه ESP, RP2040 و همچنین سایر میکروکنترلرها مثل ESP, STM استفاده شود.
تفاوت های کلیدی بین میکروپایتون و آردوینو:
زبان برنامه نویسی:
سخت افزار:
قابلیت ها:
جامعه:
موارد دیگر:
انتخاب بین میکروپایتون و آردوینو به عوامل مختلفی بستگی دارد:
کیتهای آردوینو نوعی از کیت الکترونیکی پیشرفته هستند. کیت الکترونیکی پرورش دهندهی خلاقیت و سرگرمی فوق العادهای است. کیت های آردوینو عموما دارای آموزش راه اندازی و سورس برنامه نویسی هستند. در دانشجو کیت انواع کیت آردوینو را میتوانید بررسی و خرید کنید. کلیه این کیتها توسط دانشجو کیت طراحی و تولید میشوند. جهت خرید و بررسی کیت آردوینو از شاخههای اصلی در نوار آبی رنگ بالای سایت قسمت بردهای توسعه را انتخاب کنید. (کافیست نشانگر موس را بر روی برد های توسعه قرار دهید.) سپس گزینه کیت آردوینو را انتخاب نمایید.
جهت سهولت در انتخاب کیت و کابرد مورد نظر در نوار سمت راست سایت امکان جستجو و فیلتر در دسترس کاربران قرار گرفته است. اولین گزینه انتخاب نوع کیت است، که کیت ها بر اساس بردهای مصرفی و همچنین مونتاژ دسته بندی شده اند. به تصویر زیر دقت کنید.
فیلتر بعدی رنج سنی است که با این فیلتر میتوان کیت آردوینو متناسب با رنج سنی کاربر تهیه کرد. رنج سنی یک شاخص کلی برای محدود کردن انتخابها برای خرید کیت آردوینو است.
فیلتر بعدی خرید بر اساس نوع نمایشگر مورد استفاده است. نمایشگر در کیت آردوینو کمک میکند تا اطلاعات مورد نظر را روی آن نمایش دهید. از اینجا میتوانید کیت های آردوینو براساس نوع نمایشگر را فیلتر کنید.
فیلتر بعدی خرید کیت آردوینو بر اساس برد آردوینو مورد استفاده است. بردهای آردوینو انواع مختلفی دارند، میتوانید از این بخش گزینه مورد نظر را فیلتر کنید.
فیلتر آموزش راه اندازی در جهت سهولت دسترسی کاربر به کیت های همراه یا فاقد آموزش(خود آموز) قرار گرفته است. دارا بودن آموزش برای یک کیت آردوینو گزینهی مهمی است. بنابراین اگر تمایل به خرید کیت آردوینو دارای آموزش را دارید، از این بخش استفاده کنید. به تصویر زیر دقت کنید.
با استفاده از فرمت آموزش میتوان نوع آموزش مورد نظر خود را به راحتی انتخاب کرد که به دو صورت تصویری و کتبی در دسترس قرار میگیرد.
فیلتر بعدی بر اساس میزان فرکانس RFID است. اگر کیت مورد نظر براساس نوع RFID باشد میتوانید فرکانس آنرا از این بخش انتخاب کنید.
با استفاده از فیلتر سنسور میتوان کیت آردوینو مورد نظر خود را بر اساس نوع سنسور به کار رفته انتخاب کرد.
فیلتر بعدی معماری پردازنده است که با استفاده از این فیلتر میتوان نوع پردازنده کیت را انتخاب کرد. شاید بخواهید کیت مورد نظرتان براساس تراشهای خاص باشد که از اینجا میتوانید انتخاب کنید.
با استفاده از این فیلتر میتوان پهنای باند اینترنت را انتخاب کرد. اگر کیت آردوینو مورد نظر دارای ماژول سیم کارتی باشد، میتوانید پهنای باند آنرا مشخص کنید. کیتهای ارزان قیمت معمولا دارای پهنای باند 2g هستند.
با استفاده از این فیلتر میتوان کیت های آردوینو را بر اساس نوع باتری مورد استفاده انتخاب کرد.
با این گزینه میتوان کیت مورد نظر و مصرفی خود را بر اساس برند مورد استفاده انتخاب کرد. ما در فروشگاه دانشجو کیت علاوه براینکه کالاهای تولیدی خودمان را به فروش میرسانیم کالاهای دیگر تولید کنندگان ایرانی را هم به فروش میرسانیم. بنابراین از این بخش میتوانید از برندهای معتبر تولید داخل استفاده کنید.
گزینه بعدی محدوده قیمتی است که با این گزینه میتوان به راحتی کیت آردوینو با بودجه مورد نظر را تهیه کرد.
روند ثبت سفارش کیت آردوینو از فروشگاه دانشجو کیت با موبایل
برای ثبت سفارش از طریق تلفن همراه برای دسترسی به شاخه محصولات باید در صفحه اصلی در قسمت بالا صفحه از سه خط افقی استفاده کرد. در ادامه کلیه روند خرید کیت آردوینو با موبایل را شرح دادهایم.
در فهرست شاخههای اصلی اولین گزینه بردهای توسعه است که برای باز کردن آن روی قسمت پلاس میزنیم.
در زیر مجموعه بردهای توسعه اولین گزینه آردوینو است که دوباره برای دیدن زیر مجموعه آن باید روی گزینه پلاس کلیک کرد.
سپس اولین گزینه کیت آردوینو را انتخاب کنید.
در تلفن همراه برای فیلتر محصولات ابتدا باید روی گزینه خرید سریع رفته تا فیلتر محصولات نمایش داده شود.
جهت سهولت در انتخاب کیت و کابرد مورد نظر در نوار سمت راست سایت امکان جستجو و فیلتر در دسترس کاربران قرار گرفته است. اولین گزینه انتخاب نوع کیت است، که کیت ها بر اساس بردهای مصرفی و همچنین مونتاژ دسته بندی شده اند.
فیلتر بعدی رنج سنی است که با این فیلتر میتوان کیت آردوینو متناسب با رنج سنی کاربر تهیه کرد.
گزینه بعدی نسخه رزبری پای و خرید کیت بر اساس برد رزبری پای است. اگر کیت مورد نظر براساس بردهای میکروکنترلر رزبری پای باشد، میتوانید از اینجا نوع برد را انتخاب کنید.
فیلتر بعدی خرید بر اساس نوع نمایشگر مورد استفاده است.
فیلتر بعدی خرید کیت آردوینو بر اساس برد آردوینو مورد استفاده است.
فیلتر آموزش راه اندازی در جهت سهولت دسترسی کاربر به کیت های همراه یا فاقد آموزش(خود آموز) قرار گرفته است.
با استفاده از فرمت آموزش میتوان نوع آموزش مورد نظر خود را به راحتی انتخاب کرد که به دو صورت تصویری و کتبی در دسترس قرار میگیرد.
فیلتر بعدی بر اساس میزان فرکانس RFID است.
با استفاده از فیلتر سنسور میتوان کیت آردوینو مورد نظر خود را بر اساس نوع سنسور به کار رفته انتخاب کرد.
فیلتر بعدی معماری پردازنده است که با استفاده از این فیلتر میتوان نوع پردازنده کیت را انتخاب کرد.
با استفاده از این فیلتر میتوان کیت های آردوینو را بر اساس نوع باتری مورد استفاده انتخاب کرد.
نوع فرکانس مصرفی در کیت را میتوان با این فیلتر تعیین کرد.
با این گزینه میتوان کیت مورد نظر و مصرفی خود را بر اساس برند مورد استفاده انتخاب کرد.
گزینه بعدی محدوده قیمتی است که با این گزینه میتوان به راحتی کیت آردوینو با بودجه مورد نظر را تهیه کرد.
گزینه آخر نوع کانکتور و جامپر و پین هر مصرفی است.
برای اتصال به شبکه وای فای دستورات زیر را وارد کنید.
import network
wlan = network.WLAN(network.STA_IF)
wlan.active(True)
wlan.connect("نام_شبکه_Wi-Fi", "رمز_عبور")
while not wlan.isconnected():
pass
MicroPython برای اجرا بر روی میکروکنترلرهای مختلف از جمله ESP8266، ESP32، STM32 و غیره طراحی شده است. وبسایت رسمی MicroPython یک لیست از پلتفرمهای پشتیبانیشده را ارائه میدهد.
برای تعریف یک تابع در MicroPython، از کلیدواژه def استفاده کنید. به عنوان مثال:
def greet(name):
print("Hello, " + name + "!")
بله، MicroPython از توابع با تعداد متغیرهای از آرگومانها پشتیبانی میکند. شما میتوانید تعداد دلخواهی از آرگومانها به یک تابع ارسال کنید
بله، MicroPython از توابع داخلی معمول Python مانند print(), len(), و range() پشتیبانی میکند. این توابع به صورت پیشفرض در MicroPython فراهم شدهاند.
میتوانید یک فایل متنی جدید ایجاد کرده و توابع را در آنجا تعریف کنید. سپس با استفاده از دستور import، آن فایل را به کد اصلیتان وارد کنید.
برای صدا زدن یک تابع از یک ماژول دیگر در MicroPython، ابتدا ماژول را با استفاده از دستور import وارد کنید، سپس نام تابع را با نام ماژول مرتبط فراخوانی کنید.
# در فایل ماژول مثلاً به نام mymodule.py
def my_function():
print("Hello from my_module!")
# در فایل اصلی
import mymodule
mymodule.my_function()
برای فراخوانی یک تابع یک تابع از یک کلاس در MicroPython، ابتدا یک نمونه از کلاس بسازید و سپس تابع را از طریق آن نمونه فراخوانی کنید.
class MyClass:
def my_method(self):
print("Hello from my method!")
my_instance = MyClass()
my_instance.my_method()
برای اتصال به اینترنت با برد میکروکنترلر ESP32، میتوانید از کتابخانه WiFi.h استفاده کنید. این کتابخانه شامل توابعی برای اتصال به شبکههای Wi-Fi و ارسال و دریافت دادهها از طریق Wi-Fi است.
برای ساخت یک سیستم کنترل دما با برد میکروکنترلر ESP32، به موارد زیر نیاز دارید:
یک برد میکروکنترلر ESP32
یک سنسور دما مثل DHT DS18B20
یک المان سرد کننده
با استفاده از کتابخانه DHT.h، میتوانید از سنسور دما برای خواندن دمای محیط استفاده کنید. سپس، میتوانید از این دما برای کنترل المان گرمایشی یا سرمایشی استفاده کنید.
در خصوص برنامه نویسی از کتابخانه DHT و در صورت نیاز کتابخانه وای فای برای ارسال دادهها به پلتفرم IoT باید استفاده کنید.