Düşük maliyetli, düşük güç tüketimli ve kullanımı kolay bir mikrokontrolcüye ihtiyacınız varsa, ESP32 ve ESP8266 hakkında duymuş olabilirsiniz. Her ikisi de popüler ve IoT topluluğunda yaygın olarak kullanılır, ancak hangisi daha iyidir? Bu blog yazısında, ESP32 ve ESP8266’nın özelliklerini, özelliklerini ve performansını karşılaştırarak, projeniz için hangisinin en uygun olduğuna karar vermenize yardımcı olacağız.

ESP32 ve ESP8266 Nedir?

ESP32 ve ESP8266, düşük maliyetli, Wi-Fi özellikli, programlanabilir mikrokontrolcülerdir. Her ikisi de Espressif Systems tarafından üretilir ve açık kaynaklı bir işletim sistemi olan FreeRTOS tarafından desteklenir. Bu nedenle, IoT uygulamaları için popülerdirler ve birçok sensör, motor ve diğer cihazlarla kolayca entegre edilebilirler.

ESP32 vs ESP8266: Özellikler

ESP32, çift çekirdekli 32 bit işlemciye sahiptir ve 240 MHz’de çalışır. Ayrıca 520 KB SRAM ve 4 MB flash bellek ile birlikte gelir. Bununla birlikte, ESP8266 tek çekirdekli bir 32 bit işlemciye sahiptir ve sadece 80 MHz’de çalışır. ESP8266, 80 KB SRAM ve 4 MB flash bellek ile birlikte gelir.

ESP32, Bluetooth ve Bluetooth Low Energy (BLE) desteği sunar, ancak ESP8266 sadece Wi-Fi özelliği sunar. ESP32 ayrıca, ESP8266’dan daha fazla sayıda I/O pimine sahiptir ve birçok farklı sensör ve cihazla kolayca entegre edilebilir.

ESP32 vs ESP8266: Performans

ESP32’nin daha yüksek işlemci hızı ve daha fazla SRAM ile daha iyi bir performansı vardır. ESP32, çift çekirdekli bir işlemciye sahip olduğu için birden fazla işlemi aynı anda yürütebilir. Ayrıca, BLE desteği sayesinde, daha fazla IoT uygulamasını destekler.

ESP8266, düşük maliyeti ve kolay kullanımı nedeniyle hala birçok projede tercih edilmektedir. Ancak, daha az SRAM ve tek çekirdekli işlemci nedeniyle bazı IoT uygulamaları için yeterli olmayabilir.

Aşağıdaki tabloda ES8266 ve ESP32 arasındaki ana farkları göstermektedir.

 

ESP8266
ESP32
MCU
Xtensa Single-core 32-bit L106
Xtensa Dual-Core 32-bit LX6 with 600 DMIPS
802.11 b/g/n Wi-Fi
HT20
HT40
Bluetooth
X
Bluetooth 4.2 and BLE
Typical Frequency
80 MHz
160 MHz
SRAM
X
Flash
X
GPIO
17
34
Hardware /Software PWM
None / 8 channels
None / 16 channels
SPI/I2C/I2S/UART
2/1/2/2
4/2/2/2
ADC
10-bit
12-bit
CAN
X
Ethernet MAC Interface
X
Touch Sensor
X
Temperature Sensor
X
(old versions)
Hall effect sensor
X
Working Temperature
-40ºC to 125ºC
-40ºC to 125ºC
Price
$ (3$ – $6)
$$ ($6 – $12)
ESP32 vs ESP8266: Hangisini Seçmelisiniz?

ESP32, daha yüksek işlemci hızı, daha fazla bellek ve Bluetooth/BLE desteği ile daha fazla işlem gücü sunar. Ayrıca, daha fazla I/O pimi sayesinde birçok farklı sensör ve cihazla kolayca entegre edilebilir. ESP8266 ise, düşük maliyeti ve kolay kullanımı nedeniyle hala birçok projede tercih edilmektedir. Ancak, daha az bellek ve tek çekirdekli işlemci nedeniyle bazı IoT uygulamaları için yeterli olmayabilir.

Eğer projenizde yüksek işlem gücü ve BLE desteği gerekiyorsa, ESP32 tercih edebilirsiniz. Ayrıca, birden fazla sensör veya cihaz entegrasyonu yapmanız gerekiyorsa da ESP32 daha uygun olabilir. Ancak, daha basit bir projede çalışıyorsanız ve düşük maliyetli bir çözüm arıyorsanız, ESP8266 sizin için yeterli olabilir.

Sonuç olarak, projenizin ihtiyaçlarına göre değerlendirme yapmanız ve ESP32 ve ESP8266’nın özelliklerini karşılaştırmanız gerekiyor. Hangisinin daha uygun olduğuna karar vermek için, projenizin ihtiyaçlarını ve bütçenizi dikkate alarak karar vermelisiniz.

ESP32 Pinout

ESP32, ESP8266’dan daha fazla GPIO’ya sahiptir ve hangi pinlerin UART, I2C, SPI olduğuna karar verebilirsiniz; bunu kodda ayarlamanız gerekir. Bu, ESP32 yongasının aynı pine birden çok işlev atamanıza izin veren çoğullama özelliği sayesinde mümkündür.

Bunları kodda ayarlamazsanız, aşağıdaki şekilde gösterildiği gibi varsayılan olarak tanımlanan pinlerde olacaklardır (bu, ESP32 DEVKIT V1 DOIT kartı için bir örnektir (36 GPIOS’lu versiyon)—pin konumu, üreticiye bağlı olarak değişir).

ESP32 Pinout

ESP32 Pinout

 

ESP8266 Pinout

Aşağıdaki Nodemcu 12E kiti üzerinde entegre edilmiş esp8266’nın pin diagramını bulabilirsiniz.

ESP8266 (NodeMCU) Pinout

ESP8266 (NodeMCU) Pinout

 

PWM, ADC ve Daha Fazlası

PWM sinyallerini, kodda ayarlanan yapılandırılabilir frekanslar ve görev döngüsü ile herhangi bir GPIO’da ayarlayabilirsiniz.

Analog pimlere gelince, bunlar statiktir, ancak ESP32, ESP8266’daki yalnızca bir 10 bitlik ADC pimine karşı 18 kanaldaki (analog etkin pimler) ölçümleri destekler. ESP32 ayrıca iki adet 8 bitlik DAC kanalını destekler.

Ayrıca ESP32, dokunmayı algılayan ve olayları tetiklemek veya örneğin ESP32’yi derin uykudan uyandırmak için kullanılabilen 10 kapasitif algılamalı GPIO içerir.

ESP32 varsayılan olarak Bluetooth iletişim protokolünü desteklerken ESP8266 desteklemez.

Arduino IDE – ESP32 ve ESP8266

ESP32 ve ESP8266 kartlarını programlamanın birçok yolu vardır. Her iki kart da Arduino IDE veya diğer IDE’ler (PlatformIO uzantılı VS Code gibi) kullanılarak Arduino çekirdeği ile programlanabilir. Bunlar, özellikle Arduino kartını programlamak için kullanılan ve Arduino “programlama dili” ne aşina olanlar için güzel.

Arduino IDE kullanarak ESP32 veya ESP8266 ile başlamak ve ilk projenizi çalıştırmak çok kolaydır. Aşağıdaki kılavuzları takip edebilirsiniz:

Her iki kartı da Arduino IDE kullanarak programlayabilmenize rağmen, aynı kütüphaneler ve işlevlerle uyumlu olmayabilirler. Bazı kitaplıklar panolardan yalnızca biriyle uyumludur. Bu, çoğu zaman ESP8266 kodunuzun ESP32 ile uyumlu olmayacağı anlamına gelir. Ancak, genellikle birkaç değişiklik yapmanız gerekir.

Arduino IDE’yi kullanan ESP32 ve ESP8266 kartları için yararlı bulabileceğiniz özel bir ücretsiz eğitim ve proje listesini aşağıda paylaşıyorum.

Kaynak


0 yorum

Bir yanıt yazın

Avatar yer tutucu

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

This site uses Akismet to reduce spam. Learn how your comment data is processed.