آردوینو اینترنت اشیا IOT

آموزش آپلود کدها روی ماژول وای فای با تراشه ESP8266 نسخه ۱۲X

programming-esp8266-12x-digispark
نوشته شده توسط راضیه دست غیب

اگر تابه حال درباره میکرو های ESP8266 نسخه ۱۲x نشنیده‌اید. لازم است بدانید، این میکروها، ارزان، پرقدرت و البته هسته اصلی پروژه‌های اینترنت اشیا و WiFi را می‌سازند. این میکروها معمولا در ماژول‌ها یا همان DEVELOPMENT BOARD هایی از جمله Nodemcu یا wemos D1 استفاده می‌شود. ولی در شرایطی که نیاز به اجرای پروژه با هزینه کمتر است. بایستی از تراشه ESP8266 نسخه‌های سری ۱۲ استفاده کرد. در این حالت پروژه با میکرو ESP8266 روی یک برد قابل پیاده سازی است. با توجه به ماهیت این میکرو، روش پروگرام کردن آن کمی متفاوت خواهد بود. در این پست دو روش ساده پروگرم کردن میکرو های ESP8266 12x را آموزش می‌دهم. در ادامه این آموزش با مرجع تخصصی ESP8266 به زبان فارسی، دیجی اسپارک همراه باشید.

پروگرام کردن ماژول ESP8266-12X - دیجی اسپارک

 


روش اول، استفاده از مبدل USB


در این روش با استفاده از مبدل USB به سریال، ماژول ESP8266 12e را پروگرام می‌کنیم. قبل از هرکاری لازم است که سیم‌های کوتاهی را با دقت به پایه‌های ESP8266 لحیم کنیم. از انجا که این میکرو از نوع smd می‌باشد. با چالش‌هایی روبرو خواهیم بود. این کار ممکن است که دشوار به نظر برسد اما با دقت و ارامش قطعا ممکن و قابل انجام است.

 


مبدل USB به سریال


در این پروژه از هر نوع مبدل USB به سریال می‌توانید استفاده کنید. اما من از مدل PL2303hx محصول prolific استفاده کردم. این مبدل‌ها امکان برقراری ارتباط با کامپیوتر از طریق پورت usb را فراهم می‌کنند. در حقیقت با اتصال این مبدل به کامپیوتر و نصب برنامه درایور، یک پورت سریال مجازی به پورت‌های کامپیوتر افزوده می‌شود. این مبدل قابلیت کار با سیستم عامل‌های windows، MAC،android ،linux را دارد. در خروجی این مبدل علاوه بر پین‌های txd ،rxd و gnd ولتاژ خروجی ۵v و ۳٫۳v هم در نظر گرفته شده است.

شماتیک ماژول ESP8266 12X - دیجی اسپارک


اتصالات مبدل USB به ESP8266


پایه EN ،RST و GPIO0 با یک مقاومت ۱۰K پول آپ می‌شوند. GPIO15 با یک مقاومت ۱۰K به زمین متصل می‌کنیم. با این روش به حالت Pull Down تبدیل می‌کنیم. یک خازن ۱۰ میکرو فارادی بین پایه VCC و GND قرار می‌دهیم. پایه ۳٫۳ ولت مبدل USB به سریال را به VCC میکرو ESP8266 متصل می‌کنیم. برای فعال سازی حالت برنامه نویسی میکرو در زمانی که اقدام به آپلود کد روی میکروکنترلر می‌کنیم. وقتی ESP8266 می‌خواهد شروع کند پایه‌ی GPIO0 باید LOW شود راحت ترین راه برای این کار اضافه کردن دو تا کلید فشاری مانند تصویر پایین است. ابتدا کلید GPIO0 رو فشار می‌دهیم. سپس کلید RST را فشار می‌دهیم. حالا هردوتا کلید را رها می‌کنیم. لازم نیست این مراحل را چندین بار حین پروسه آپلود انجام بدهید. وقتی که میکروکنترلر به حالت پروگرمینگ وارد شد. در آن حالت باقی می‌ماند تا زمانی که دوباره کلیدها فشرده شوند. خب ورود به حالت پروگرمینگ فقط نیمی از راه است. اما در ادامه باید ESP را به مبدل متصل کنیم.

اتصالات مبدل USB به ESP8266 - دیجی اسپارک

RXD مبدل را به TX میکرو متصل می‎کنیم.

TXD مبدل را به RX میکرو متصل می‌کنیم.

GND مبدل را به GND میکرو متصل می‌کنیم.

نکته مهم: اکثر مبدل‌های USB به سریال توانایی فراهم کردن ولتاژ ۳٫۳ با جریان کشی ۲۵۰ میلی آمپر را ندارند. پس بهتر است ۳٫۳ را از یک منبع تغذیه تامین کنیم.

 


آپلود برنامه روی ESP8266 12X


برای اپلود کردن برنامه به برد مراحل زیر لازم است. در کامپایلر آردوینو IDE از قسمت EXAMPLE برنامه BLIKNK را باز می‌کنیم. سپس از قسمت TOOL>PORT پورتی که مبدل به آن متصل شده، را انتخاب می‌کنیم. پس از آن حالت پروگرمینگ را با کمک کلیدها که در بالاتر توضیح دادم، فعال می‌کنیم. اکنون برنامه را آپلود می‌کنیم. اگر نشد اتصالات را چک کنید سپس دوباره امتحان کنید. اگر باز هم نشد از طریق بخش نظرات همین آموزش سوالاتتان را مطرح بفرمایید. پس از آپلود کدها روی ESP8266 12X کلید ریست را دوباره تحریک کنید.

اتصالات به پایه ماژول ESP8266 12X - دیجی اسپارک

 


تنظیمات ESP8266 در آردوینو


BOARD SETTING این پروژه به شرح زیر می‌باشد.

Board: Generic ESP8266 Module
Flash Mode: DIO
Flash Size: 4M (3M Spiffs)
Reset Method: ck
Flash Frequency: 40MHz
Upload Speed: 115200

 

نکته: در بردهای ESP8266 یک عدد ال ای دی قرار دارد. این LED روی برد به پایه ۲ متصل است.

 


روش دوم، استفاده از Nodemcu


در روش دوم برای آپلود کدها روی ماژول ESP8266 به یک برد Nodemcu نیاز داریم. اگر تا به حال با هر یک از DEVELOPMENT BOARD های ESP8266 کار کرده باشید؛ حتما می‌دانید که هیچ کدام از آن‌ها اقدامات پیچیده‌ی مرحله قبلی را لازم ندارند. برد به صورت اتوماتیک در حالت Programming قرار دارد. در این روش از برد Nodemcu به عنوان پروگرمر ESP8266 استفاده می‌کنیم.

 


ویژگی برد Nodemcu در آپلود کدها


امکان تامین ولتاژ ۳٫۳ به صورت مستقیم از پین ۳٫۳ ولت برد Nodemcu

بدون دردسر اتصالات Pull up و pull Down ماژول ESP را پروگرام می‌کنیم.

هزینه برد Nodemcu ناچیز بوده و معمولا در جیب هر مهندس سخت افزارای پیدا می‌شود.

 

 


آپلود برنامه با استفاده از Nodemcu


درواقع ما میکرو ESP8266 قرار گرفته روی برد Nodemcu را غیر فعال می کنیم. با وصل کرن پایه EN برد NODE MCU به GND و سپس وصل کردن میکرو ESP8266 به NODE MCU مانند توضیحات زیر، اقدامات صورت می‌گیرد.

آپلود برنامه با استفاده از Nodemcu - دیجی اسپارک

ابتدا مانند مرحله قبلی اتصالات را برقرار می‌کنیم. و در ادامه:

پایه ۳٫۳ ولت NODE MCU را به ۳٫۳ ESP8266 متصل می‌کنیم.

پایه زمین NODE MCU را به زمین ESP8266 متصل می‌کنیم.

پایه TXبرد NODE MCU را به TX ماژول ESP8266 متصل می‌کنیم.

پایه RX برد NODE MCU را به RX ماژول ESP8266 متصل می‌کنیم.

پایه RST برد NODE MCU را بهRST ماژول ESP8266 متصل می‌کنیم.

پایه D3 برد NODE MCU را به GPIO0 ماژول ESP8266 متصل می‌کنیم.

پایه EN برد NODE MCU را به GND متصل می‌کنیم.

 


تنظیمات Arduino IDE


در برنامه آردوینو از قسمت TOOL> PORT پورتی که برد Nodemcu از آن به کامپیوتر متصل شده است، را انتخاب می‌کنیم. سپس نوع برد را “(NodeMCU 1.0 (ESP12-E Module” انتخاب می‌کنیم.  حالا گزینه UPLOAD را کلیک می‌کنیم. کدها روی ماژول ESP8266 12X ما آپلود خواهند شد.

 

 

چنانچه در مراحل راه اندازی و انجام این پروژه با مشکل مواجه شدید، بدون هیچ نگرانی در انتهای همین پست، به صورت ثبت نظر سوالتان را مطرح کنید. من در سریع‌ترین زمان ممکن پاسخ رفع مشکل شما را خواهم داد. همچنین اگر ایرادی در کدها و یا مراحل اجرایی وجود دارند می‌توانید از همین طریق اطلاع رسانی کنید.

 

در پایان نظرات و پیشنهادات خود را با ما درمیان بگذارید و با اشتراک گذاری این آموزش در شبکه های اجتماعی , از وبسایت دیجی اسپارک حمایت کنید.

 

درباره نویسنده

راضیه دست غیب

تبادل نظر و رفع عیب با ثبت دیدگاه