
Nodemcu چیست؟
بورد توسعه ESP8266 را معمولا به عنوان ماژول WIFI میشناسند که در واقع یک نوع میکروکنترلر محسوب میشود . اما لزوم تولید NodeMcu به اینجا ختم نمیشود. برد توسعه NodeMCU به دلیل داشتن پلتفرم متنباز، نوعی از بوردهای امبدد در زمینه اینترنت اشیا به شمار میرود که می توان آن را با انواع اسکریپت های برنامه نویسی نظیر Lua ، MicroPython استفاده کرد.
حالا تصور کنید که یک میکروکنترلر بتواند به اینترنت متصل شود چه کارهایی که نمی تواند بکند؟ این میتواند یک پردازنده با تمام قابلیت های یک آردوینو باشد با تمام راحتی هایش و حتی بهتر از آن، که علاوه بر GPIO و پشتیبانی از پروتکل های ارتباطی مختلف، حافظه RAM و Flash خوبی هم داشته باشد، بعلاوه قابلیت جذاب اتصال به اینترنت را در خود داشته باشد تا بتواند همزمان با تمام قابلیت های معمولی یک میکروکنترلر ساده ما را به دنیای پر از عجایب اینترنت هم اتصال دهد
این برد توسعه یافته ی ESP8266 WIFI Internet و جدید ترین نسخه ی NodeMcu با جدید ترین سخت افزار هاست. که دارای کیفیت مطلوبی میباشد .کیت توسعه یافته بر پایه ی ESP8266 ، دارای GPIO ، PWM ، IIC ، ارتباط تک سیمه و ADC همه در یک برد میباشد.
Nodemcu چیست؟
ESP8266 :
این نام که به ماژول وایفای معروف است، در اصل نام یک میکرو کنترلر می باشد.
به طور کلی ماژول های WIFI ESP8266 از چند بخش تشکیل شده است:
1-میکرو کنترلر ESP8266 (هسته مرکزی)
2-حافظه فلش (برای برنامه ریزی)
3-مدار تقویت کننده جهت اتصال به آنتن
4-آنتن WIFI (البته در بعضی از مدل ها آنتن روی برد وجود ندارد و باید جداگانه به ماژول متصل شود)
5-پورت های ورودی و خروجی (شامل تغذیه، پورت سریال و ورودی و خروجی ها)
6-دو عدد LED جهت بررسی وضعیت کار ماژول
- راحتی استفاده
- قابلیت برنامه نویسی با زبان برنامه نویسی lua یا Arduino IDE
- قابلیت استفاده بصورت access point یا station
- قابلیت استفاده در کاربردهای Event-driven API
- دارای آنتن داخلی
- دارای 13 پایه GPIOT، 10 کانال PWM، I2C، SPI، ADC، UART و 1-Wire
تغذیه
ESP8266 با ولتاژ ۳٫۳ ولت کار میکند در صورتی که بیشتر آردوینو ها با ۵ ولت کار میکنند. برای اینکه فضا الکی اشغال نشود، هیچ سوکت منبع تغذیه ای وجود ندارد. در عوض ، تنها با یک کابل میکرو USB کل برد تغذیه می شود .برق ۳٫۳ ولت را از طریق سه پین خود به بقیه قطعاتی که نیاز داشته باشند به صورت مساوی میدهد. Nodemcu چیست؟
پین اوت
در مورد Pinout، قبلاً در سایر پست های وبلاگ درباره ESP8266 بحث شده بود ، اما برجسته ترین پین ها عبارتند از:
- پین 0 *: GPIO 16 فقط برای خواندن / نوشتن GPIO.
- پین 1: GPIO 5
- پین 2: GPIO 4
- پینت 3: GPIO 0
- پین 4: GPIO 2
- پین 5: GPIO 14
- پین 6: GPIO 12
- پین 7: GPIO 13
- پین 8: GPIO 15
- پین 9: GPIO 3
- پین 10: GPIO 1
- پین 11: GPIO 9
- پین 12: GPIO 10
- برخی دیگر ذخیره می شوند ، یا برای قدرت (GND ، Vcc) و سایر سیگنال ها کار می کنند.
پین ADC(مبدل آنالوگ به دیجیتال ): NodeMCU دارای یک کانال ADC است که از طریق پین A0 قابل دسترسی است.
پین SPI : چهار پین برای برقراری ارتباط توسط پروتکل SPI موجود است.
پین I2C : این میکروکنترلر دارای قابلیت برقراری ارتباط با پروتکل I2C است که به دلیل استفاده داخلی از این پینها ، باید دریابید که کدام پین ها به این پروتکل اختصاص داده شدهاند.
پین UART: دارای دو رابط UART است. از آنجا که از RXD0 و TXD0 برای پروگرام کردن بورد استفاده میشود، قابلیت اتصال به تجهیز خارجی در آنها نیست. بنابراین می توان از RXD1 و TXD1 استفاده کرد.
UART
UART مخفف Universal Asynchronous Receiver/Transmitter میباشد. UART در اصل یک مدار فیزیکی محسوب میشه که میاد دریافت و ارسال داده ها رو به صورت سریال انجام میده. در اصل UART میاد دو تا دستگاه رو به صورت مستقیم به هم متصل میکنه. این پروتکل داده ها رو به صورت Asynchronous یا ناهمزمان ارسال میکند.
I2C
پروتکل برای انتقال داده و سیگنال کلاک از دو سیم یا مسیر استفاده میکند. یک سیم برای انتقال داده SDA (Serial Data) و یک سیم برای انتقال کلاک SCL (Serial Clock). عملکرد این پروتکل به صورت master و slave است .
SPI
SPI مخفف Serial Peripheral Interface میباشد. معمولاً برای اتصال بین میکروکنترلرها و مدارهای مجتمع یا سنسورها ،از پروتکل I2C استفاده می شود . ارتباطات در پروتکل SPI هم بر اساس استاد و برده یا همان master – slave یا میباشد. این پروتکل از ۴ خط برای ارتباطاتش استفاده میکند.
در حقیقت ESP8266 یک تراشه ساخت شرکت ESPRessif میباشد. به لطف آزاد بودن 80 درصد قدرت پردازشی اون میتونیم از اون بدون میکروکنترلر استفاده کنیم. در حقیقت برنامه رو روی آن پروگرام کنیم. ماژول های ESP8266 از طریق دستورات AT Command مربوط به خودشون کنترل و مورد کاربرد قرار میگیرند.که میتونیم اون و با انواع میکرو راه اندازی کنیم
با توجه به اینکه فریمور روی این تراشه نصب هست، ماژول به دستورات ارسالی AT Command پاسخ خواهد داد. در صورتی که ماژول اصطلاحا پروگرام بشه این فریمور از بین رفته و دیگه با کامند ها کنترل نمیشه. البته جای نگرانی نیست چون میتونید براحتی فریمور رو نصب کنید و مجددا با کامند ها با ماژول کار کنید.
پایه RX ماژول ESP8266 را به پایه TX ماژول مبدل سریال به USB وصل کنید و پایه TX ماژول ESP8266 را به RX ماژول مبدل.پس از نصب درایور مبدل سریال پورت COM به کامپیوترتان اضافه می شود در برنامه esp8266flasher آن را انتخاب کنید
بعد از اتمام عملیات فلش GPIO 0 را به از GND جدا کنید و با رستارت ماژول از مد پروگرم خارج شده و ماژول run میشود.
شما می توانید بدون نیاز به فریمور با برنامه آردوینو برای ماژول کدنویسی کامپایل و پروگرم کنید و در واقع فریمور اختصاصی خودتان را داشته باشید یعنی بدون نیاز به میکروکنترلر اضافی می توانید پروژه هایتان را با این ماژول بسازید.
برای خرید Nodemcu به وب سایت امجد مارکت مراجعه کنید
همچنین میتوانید برای اموزش های بیشتر به قسمت بلاگ ما و آموزش STM32 قسمت اول مراجعه کنید
بهترین منبع برای اموزش STM32 و ماژول های مرتبط سایت شرکت STM میباشد