این مقاله راهنمای پین های ESP8266 دیاگرام پین ها، عملکرد آنها و نحوه استفاده از آنها میباشد.

ماژول ESP8266 12-E دارای 17 پین GPIO است. همه GPIO ها در همه بردهای توسعه ESP8266 در قسمت خروجی برد قرار نمی گیرند، برخی از GPIO ها برای استفاده توصیه نمی شوند و برخی دیگر عملکردهای بسیار خاصی دارند.

با این راهنما، نحوه استفاده صحیح از پین های ESP8266 و جلوگیری از ساعت ها زمان عیب یابی را با استفاده از مناسب ترین پین ها برای پروژه های خود خواهید آموخت.

پین های ESP8266 12E بدون برد راه انداز

شکل زیر پایه تراشه  ESP8266 12-E را نشان می دهد. اگر از ماژول ESP8266 بدون برد راه انداز در پروژه های خود استفاده می کنید از این دیاگرام استفاده کنید.

ESP8266-ESP-12E-chip-pinout-gpio-pin

در حال حاضر، طیف گسترده ای از بردهای توسعه با تراشه ESP8266 وجود دارد که از نظر تعداد GPIO های قابل دسترس، اندازه و غیره با هم تفاوت دارند.

پرکاربردترین بردهای این ماژول ESP8266 ESP-01، ESP8266-12E NodeMCU Kit و Wemos D1 Mini هستند.

پین های ESP8266-01

اگر از برد ESP8266-01 استفاده می کنید، می توانید از دیاگرام GPIO زیر به عنوان مرجع استفاده کنید.

ESP-01-ESP8266-pinout-gpio-pin

پین های برد راه انداز ESP8266 12-E NodeMCU

دیاگرام پین های خروجی برد ESP8266 12-E NodeMCU در زیر نشان داده شده است.

پین های ESP8266

پین های Wemos D1 Mini

شکل زیر پین های خروجی WeMos D1 Mini را نشان می دهد.

راهنمای جامع پین های ESP8266 (کدام پین ها را میتوانیم استفاده کنیم؟)

پریفرال های ESP8266

پریفرال های ESP8266 شامل موارد زیر هستند:

  • 17 GPIOs
  • SPI
  • I2C (نرم افزاری)
  • I2S interfaces with DMA
  • UART
  •  ADC 10bit

پین های قابل استفاده در ESP8266

یک نکته مهم در مورد ESP8266 این است که شماره GPIO با شماره چاپ شده روی برد راه انداز مطابقت ندارد. به عنوان مثال، D0 مربوط به GPIO16 و D1 مربوط به GPIO5 است.

جدول زیر مطابقت بین شماره پین روی برد راه انداز و شماره GPIO را نشان می‌دهد و همچنین نشان می‌دهد که کدام پین‌ها برای پروژه‌های شما بهترین هستند و در استفاده از کدام یک باید محتاط باشید.

پین هایی که با رنگ سبز مشخص شده اند برای استفاده مناسب هستند. مواردی که با رنگ زرد مشخص شده‌اند برای استفاده مناسب هستند، اما باید توجه کنید زیرا ممکن است در هنگام بوت رفتار غیرمنتظره‌ای داشته باشند. پین هایی که با رنگ قرمز مشخص شده اند برای استفاده به عنوان ورودی یا خروجی توصیه نمی شوند.

لیبل روی بردGPIOحالت ورودیحالت خروجینکات استفاده
D0GPIO16بدون وقفهبدون pwm یا i2cمقدار high در زمان بوت
قابل استفاده برای wakeup در زمان deepsleep
D1GPIO5قابل استفادهقابل استفادهقابل استفاده برای SCL (I2C)
D2GPIO4قابل استفادهقابل استفادهقابل استفاده برای SDA (I2C)
D3GPIO0پول آپ شودقابل استفادهبه دکمه flash متصل شده در صورت پول داون شدن ماژول بوت نخواهد شد
D4GPIO2پول آپ شودقابل استفادهمقدار high در زمان بوت
به ال ای دی روی برد متصل شده در صورت low بودن ماژول بوت نخواهد شد
D5GPIO14قابل استفادهقابل استفادهSPI (SCLK)
D6GPIO12قابل استفادهقابل استفادهSPI (MISO)
D7GPIO13قابل استفادهقابل استفادهSPI (MOSI)
D8GPIO15پول داون شودقابل استفادهSPI (CS)
در صورت high بودن ماژول بوت نمیشود
RXGPIO3قابل استفادهRX pinمقدار high در زمان بوت
TXGPIO1TX pinقابل استفادهمقدار high در زمان بوت
خروجی دیباگ در زمان بوت. در صورت low بودن ماژول بوت نمیشود.
A0ADC0Analog InputX

GPIO های متصل به تراشه فلش داخلی

GPIO6 تا GPIO11 معمولاً به تراشه فلش در بردهای ESP8266 متصل می شوند. بنابراین، استفاده از این پین ها توصیه نمی شود.

پین های استفاده شده در هنگام بوت

اگر برخی از پین ها esp8266 اگر پول آپ یا پول داون شوند، می توانند از بوت شدن ESP8266 جلوگیری کنند. لیست زیر وضعیت پین های زیر را در BOOT نشان می دهد:

همچنین جهت اطلاعات بیشتر میتوانید به این لینک مراجعه نمایید.

  • GPIO16: مقدار 1 در زمان بوت
  • GPIO0: درصورت پول داون بودن ماژول بوت نمیشود
  • GPIO2مقدار 1 در زمان بوتدرصورت پول داون بودن ماژول بوت نمیشود
  • GPIO15درصورت پول آپ بودن ماژول بوت نمیشود
  • GPIO3: high در زمان بوت
  • GPIO1: مقدار 1 در زمان بوت. درصورت پول داون بودن ماژول بوت نمیشود
  • GPIO10: مقدار 1 در زمان بوت
  • GPIO9مقدار 1 در زمان بوت

پین های high در زمان بوت

زمانی که ESP8266 بوت می شود، پین های خاصی وجود دارند که سیگنال 3.3 ولتی را در خروجی خود می دهند. اگر رله‌ها یا سایر دستگاه‌های جانبی به آن GPIO متصل هستند، ممکن است مشکل ساز باشد. GPIO های زیر یک سیگنال HIGH در هنگام بوت می دهند:

  • GPIO16
  • GPIO3
  • GPIO1
  • GPIO10
  • GPIO9

بعلاوه، سایر GPIO ها، به جز GPIO5 و GPIO4، می توانند سیگنال ولتاژ پایین را در هنگام بوت ارسال کنند، که اگر به ترانزیستورها یا رله ها متصل شوند، می تواند مشکل ساز شود. 

ورودی آنالوگ

ESP8266 فقط از یک پین برای خواندن مقادیر آنالوگ پشتیبانی می کند که GPIO ADC0 نامیده می شود و معمولاً روی برد ماژول با علامت A0 مشخص می شود.

اگر از تراشه ESP8266 بدون برد راه انداز استفاده می کنید، حداکثر ولتاژ ورودی پایه ADC0 مقدار 0 تا 1 ولت است. اگر از یک برد توسعه مانند کیت ESP8266 12-E NodeMCU استفاده می کنید، محدوده ولتاژ ورودی 0 تا 3.3 ولت است زیرا این بردها دارای یک تقسیم کننده ولتاژ داخلی هستند.

LED روی برد

اکثر بردهای توسعه ESP8266 دارای LED داخلی هستند. این LED معمولا به GPIO2 متصل می شود.

راهنمای جامع پین های ESP8266 (کدام پین ها را میتوانیم استفاده کنیم؟)

این LED با منطق معکوس کار می کند. برای خاموش کردن آن یک سیگنال HIGH و برای روشن کردن آن یک سیگنال LOW ارسال کنید.

پین RST

وقتی پین RST صفر می شود، ESP8266 ریست می شود. این همان وضعیت فشار دادن دکمه RESET روی برد است.

راهنمای جامع پین های ESP8266 (کدام پین ها را میتوانیم استفاده کنیم؟)

پین GPIO0 FLASH/BOOT

هنگامی که GPIO0 صفر می شود، ESP8266 را در حالت بوت لودر قرار می دهد. این همان وضعیت فشار دادن دکمه FLASH/BOOT روی برد است.

راهنمای جامع پین های ESP8266 (کدام پین ها را میتوانیم استفاده کنیم؟)

پین GPIO16

GPIO16 می تواند برای بیدار کردن ESP8266 از وضعیت خواب عمیق استفاده شود. برای بیدار کردن ESP8266 از وضعیت خواب عمیق، GPIO16 باید به پین RST متصل شود.

I2C

ESP8266 پین سخت افزاری I2C ندارد، اما می توان آن را در نرم افزار پیاده سازی کرد. بنابراین می توانید از هر GPIO به عنوان I2C استفاده کنید. معمولاً از GPIO های زیر به عنوان پین I2C استفاده می شود:

  • GPIO5: SCL
  • GPIO4: SDA

SPI

پین های استفاده شده به عنوان SPI در ESP8266 عبارتند از:

  • GPIO12: MISO
  • GPIO13: MOSI
  • GPIO14: SCLK
  • GPIO15: CS

پین های PWM

ESP8266 دارای PWM نرم افزاری این اجازه را می دهد تا در تمام پین های ورودی/خروجی: GPIO0 تا GPIO15. سیگنال های PWM در ESP8266 دارای وضوح 10 بیتی داشته باشید. 

پین های وقفه

ESP8266 از وقفه در هر GPIO پشتیبانی می کند، به جز GPIO16.

جمع بندی

امیدواریم این مقاله برای راهنمای استفاده از پین های ESP8266 مفید واقع شده باشد. اگر نکاتی در مورد نحوه استفاده صحیح از GPIO های ESP8266 دارید، می توانید کامنت کنید.

جهت اشنایی با کاربردهای ESP8266 میتوانید به این مقاله مراجعه کنید.

شروع برنامه نویسی ESP8266

برای امتیاز به این نوشته کلیک کنید!
[کل: 2 میانگین: 3]

نوشته های مشابه

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

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *