مقایسه ESP8266 و ESP32
در مطالب قبلی، با ESP8266 و ESP32 آشنا شدیم؛ دو SoC مجهز به WiFi که توسط شرکت چینی اسپرسیف تولید شدهاند و توانستهاند توجه گستردهای را در جامعه سازندگان مستقل به خود جلب کنند.
اکنون زمان آن رسیده است که این دو SoC را رودرروی یکدیگر قرار دهیم. در این مقایسه ESP8266 و ESP32، شباهتها و تفاوتهای آنها را بهصورت نقطهبهنقطه بررسی خواهیم کرد و در قالب یک جدول مقایسه، ویژگیهای هر دو تراشه را کنار هم خواهیم دید.
طبیعتاً ESP32 در بیشتر بخشها با اختلاف قابل توجهی برنده این مقایسه خواهد بود، زیرا نسل جدیدتر و جانشین ESP8266 محسوب میشود. با این حال، همانطور که خواهیم دید، ESP8266 نیز همچنان تراشهای بسیار ارزشمند است؛ بهویژه اگر قیمت پایینتر آن را نیز در نظر بگیریم.
بدون مقدمه بیشتر، در ادامه جدول مقایسه را مشاهده میکنید:
| دستهبندی | ویژگی | ESP8266 | ESP32 |
|---|---|---|---|
| پردازنده | پردازنده | Tensilica LX106 | Tensilica Xtensa X36 |
| تعداد بیت | 32 بیت | — | |
| تعداد هسته | تکهستهای | دوهستهای | |
| فرکانس | 80MHz (تا 160MHz) | 160MHz (تا 240MHz) | |
| حافظه | SRAM | 160KB | 512KB |
| SPI Flash | تا 16MiB | — | |
| توان | ولتاژ تغذیه | 3.0 تا 3.6V | 2.2 تا 3.6V |
| محدوده دما | -40°C تا 125°C | — | |
| مصرف انرژی | مصرف جریان | میانگین 80mA، حداکثر 225mA | — |
| مصرف در Deep Sleep | 20µA (RTC + حافظه RTC) | 2.5µA (10µA RTC + حافظه RTC) | |
| حالت کممصرف | ❌ | کمتر از 150µA | |
| ارتباطات | Wi-Fi | 802.11 b/g/n (تا +20dBm)، WEP/WPA | — |
| Soft-AP | ✔️ | — | |
| رمزنگاری سختافزاری | ❌ (TLS 1.2 بهصورت نرمافزاری) | ✔️ | |
| Bluetooth | ❌ | Bluetooth v4.2 BR/EDR + BLE | |
| رابط Ethernet MAC | ❌ | 10/100Mbps | |
| واحدهای جانبی | GPIO قابل استفاده | 17 | 36 |
| PWM سختافزاری / نرمافزاری | ❌ / 8 | 1 / 16 | |
| ADC | 1 کانال (10 بیت) | 18 کانال (12 بیت) | |
| ADC با پیشتقویتکننده | ❌ | ✔️ (نویز پایین، 60dB) | |
| DAC | ❌ | 2 کانال (8 بیت) | |
| UART | 2 (در یکی فقط TX قابل استفاده است) | 4 | |
| I²C | 1 | 2 | |
| SPI | 2 | 4 | |
| I²S | 1 | 2 | |
| 1-Wire | پیادهسازی نرمافزاری | — | |
| CAN Bus | ❌ | 1 × CAN 2.0 | |
| سنسور لمسی | ❌ | 10 کانال | |
| سنسور دما | ❌ | ✔️ | |
| سنسور Hall | ❌ | ✔️ | |
| مادون قرمز (IR) | ✔️ | — | |
| تایمر | 3 | 4 (64 بیتی) | |
| مولد اعداد تصادفی | ❌ | ✔️ | |
| رمزنگاری Flash | ❌ | ✔️ | |
| Secure Boot | ❌ | ✔️ |
اول از همه، ESP32 به یک پردازنده دو هستهای قدرتمندتر مجهز است. برتری مهم بعدی آن نیز پشتیبانی از Bluetooth BLE در کنار WiFi است.
علاوه بر این، ESP32 از حافظه بیشتر، رمزنگاری حافظه Flash، Secure Boot، شتابدهنده سختافزاری رمزنگاری (ویژگیای که نبود آن در ESP8266 بهشدت احساس میشد)، مولد اعداد تصادفی (Random Number Generator) و ساعت زمان واقعی (RTC) بهره میبرد.
از نظر ورودی/خروجی (I/O) نیز ESP32 اختلاف قابل توجهی با ESP8266 دارد. این تراشه دارای ۳۶ پایه GPIO (در مقایسه با ۱۷ پایه)، ۱۰ پایه با قابلیت تشخیص لمس (Touch)، ۱ کانال PWM پرسرعت و ۱۶ کانال PWM کمسرعت (در مقایسه با ۸ کانال PWM در ESP8266)، ۱۸ کانال ADC با دقت ۱۲ بیت به همراه تقویتکننده داخلی (Preamplifier) (در مقایسه با یک ADC دهبیتی) و همچنین ۲ مبدل دیجیتال به آنالوگ (DAC) هشتبیتی است.
در بخش رابطهای ارتباطی (Communication Buses) نیز ESP32 بار دیگر برتری خود را نشان میدهد. این تراشه دارای ۴ رابط UART (در مقایسه با ۲ رابط که یکی از آنها فقط قابلیت TX دارد)، ۲ رابط I²C (در مقایسه با ۱ رابط)، ۴ رابط SPI (در مقایسه با ۲ رابط)، ۲ رابط I²S (در مقایسه با ۱ رابط) است و همچنین از CAN Bus 2.0 نیز پشتیبانی میکند.
علاوه بر این، ESP32 به ۴ تایمر ۶۴ بیتی (در مقایسه با ۳ تایمر)، حسگر Hall، حسگر دما و امکان استفاده از Ethernet با سرعت 10/100Mbps مجهز است.
از سوی دیگر، هر دو SoC شباهتهایی نیز دارند. هر دو از حافظه Flash تا سقف ۱۶ MiB پشتیبانی میکنند و هر دو دارای ارتباط WiFi مطابق استاندارد 802.11 b/g/n هستند.
همانطور که از ابتدا انتظار میرفت، ESP32 بدون شک یک تراشه بسیار قدرتمند است. با این حال، ESP8266 همچنان یک SoC بسیار ارزشمند به شمار میرود و قیمت پایینتری نیز دارد. اما نمیتوان انکار کرد که ESP32 استانداردهای جدیدی را در این رده از تراشهها تعریف کرده است.
البته باید به این نکته نیز توجه داشت که در حال حاضر، تعداد کمی از بردهای توسعه امکان دسترسی به تمام قابلیتها و همه پایههای ESP32 را فراهم میکنند. به همین دلیل، در بسیاری از پروژههای عملی، تفاوتهای این دو تراشه کمتر از چیزی است که روی کاغذ به نظر میرسد و معمولاً این تفاوتها به توان پردازشی بیشتر، پشتیبانی از Bluetooth و شتابدهنده سختافزاری رمزنگاری محدود میشود.