در این آموزش با ماژول وای فای و بلوتوث ESP32 آشنا میشوید و نحوه راه اندازی آن را یاد میگیرید.



| Working Voltage | 2.2 to 3.6 volts |
|---|---|
| Average Current | Around 80 mA |
| Maximum Current | 500 mA |
| Input/Output Pins | 32(The ESP32 chip has 48 I/O pin,s. But the module has only 28 accessible pins.) |
| ADC(Analog to Digital Converter) | 18 channels of 12 bits |
| DAC(Digital to Analog Converter) | 2 channels of 8 bits |
| UART(Serial Communication) | 3 |
| PWM | 32 |
| SPI Interface | 4 |
| I2C Interface | 2 |
| I2S Interface (to connect audio devices) | 2 |
| Capacitance TouchPads Pins | 10 |
| Memory Card Interface | 1 |
| CAN Interface | 1 |
| Temperature Sensor | 1 |
نکته: در ماژول های مختلف، ممکن است به برخی از پایه های تراشه ی ESP32 دسترسی نداشته باشید.

اخطار: ولتاژ منطقی پایه های ESP32، 3.3 ولت است. اگر می خواهید ESP32 را به وسایل دیگری که با ولتاژ منطقی 5 ولت کار می کنند، متصل کنید، حتما باید از یک مدار تبدیل سطح ولتاژ (level shifter) استفاده کنید.
در این ماژول دو پایه ی 5 ولت و 3.3 ولت برای تغذیه در نظر گرفته شده است. می توانید این دو پایه را برای تغذیه ی دستگاه ها و ماژول های دیگر استفاده کنید.


از 32 پایه ی GPIO این ماژول می توانید برای ارتباط با ال ای دی، سوئیچ و دیگر وسایل ورودی-خروجی استفاده کنید. به صورت داخلی می توانید این پایه ها را Pull-up یا Pull-down کنید.
نکته:
ADC:
از 16 پایه ی ADC این ماژول می توانید برای تبدیل ولتاژ های آنالوگ (خروجی برخی سنسور ها) به دیجیتال استفاده کنید. تعدادی از این مبدل ها به تقویت کننده ی داخلی متصل بوده و قادر به اندازه گیری ولتاژ های کوچک با دقت بالا هستند.

DAC:
ماژول ESP32 دارای دو مبدل دیجیتال به آنالوگ با دقت 8 بیت است.


SPI:
دو رابط SPI در این ماژول وجود دارد که می توانید از آن ها برای اتصال نمایشگر، ماژول کارت حافظه SD/microSD، حافظه ی فلش خارجی و … استفاده کنید.

I2C:
پایه های SCL و SDA برای ارتباط دو سیمه ی I2C هستند.

دو رابط سریال UART در این ماژول وجود دارد. با این پایه ها می توانید اطلاعات را تا سرعت 5Mbps بین دو دستگاه جابجا کنید. UART0 دارای پایه های CTS و RTS نیز هست.
PWM: تقریبا تمام پایه های ورودی- خروجی ESP32 قابلیت PWM (Pulse Width Modulation) را نیز دارند. از این پایه می توانید برای کنترل موتور ها، نور و رنگ ال ای دی ها و… استفاده کنید.
تراشه ی ESP32 دارای 5 حالت کاری است:
در این حالت تمام بخش های فرستنده و گیرنده ی وای فای و بلوتوث و … فعال است. تراشه در این حالت جریانی بین 80 تا 260 میلی آمپر مصرف می کند.
Modem-sleep mode:
وای فای و بلوتوث غیر فعال می شود ولی پردازنده فعال است. جریان مصرفی در این حالت بین 3 تا 20 میلی آمپر است.
پردازنده ی اصلی متوقف می شود ولی واحد RTC و پردازنده ی کمکی ULP فعال هستند. جریان مصرفی در این حالت حدود 0.8 میلی آمپر است.
تنها واحد RTC فعال است. در این حالت اطلاعات اتصال وای فای و بلوتوث درحافظه ی RTC ذخیره می شوند. جریان مصرفی در این حالت بین 10 تا 150 میکرو آمپر است.
تمام واحد ها به غیر از یک تایمر RTC که برای محسابه ی ساعت است و چند پایه ی ورودی-خروجی متصل به RTC غیر فعال می شوند. تایمر RTC و یا پین های متصل به آن می تواند تراشه را از این حالت خواب بیدار کند. جریان مصرفی در این حالت حدود 2.5 میکرو آمپر است. برای کسب اطلاعات بیشتر می توانید به دیتاشیت مراجعه کنید.
دیتاشیت ماژول ESP32 و تراشه آن را می توانید از لینک های زیر دانلود کنید.
https://www.espressif.com/sites/default/files/documentation/esp32_datasheet_en.pdf
https://espressif.com/sites/default/files/documentation/esp32-wroom-32_datasheet_en.pdf
| ESP8266 NodeMcu | ESP32 DEV Module | |
|---|---|---|
| Power | 3.3V | 3.3V |
| CPU | Tensilica L106 32-bit | Xtensa® Dual-Core 32-bit LX6 |
| Bluetooth | Do not have | Compliant with Bluetooth v4.2 BR/EDR and BLE specification |
| GPIO | 17 | 32 |
| Flash size | Up to 16MB | Up to 16MB |
| ADC | 10 bit | 12 bit |
| DAC | Do not have | 2 * 8bit |
| UART | 2 | 2 |

| ماژول وای فای و بلوتوث ESp32 | خرید از مرکز تحقیقات رباتیک |
| Arduino IDE |
نکته: برای نصب ESP32 نیاز به Arduino IDE نسخه ی 1.8.5 یا بالاتر می باشد.