ESP32 Arduino'dan Daha İyi mi?

Esp32 Arduino Dan Daha Iyi Mi



Hem Arduino hem de ESP32, buna göre girdi alıp çıktı üretebilen mikrodenetleyici tabanlı kartlardır. Bu kartların her ikisi de öğrenciler ve araştırmacılar arasında ünlüdür, çünkü bilgileri işlemek için CPU gibi ekstra bir donanıma ihtiyaç duymazlar, yalnızca cebinize sığabilecek ve görevleri kolayca gerçekleştirebilecek küçük bir tahtaya ihtiyaç duyarlar. Ancak herkesin aklına gelen bir soru, ESP32'nin Arduino'dan daha iyi olduğudur.

ESP32, Arduino'ya Karşı

ESP32, düşük güçte çalışabilen 32 bit mikrodenetleyici çipine sahip düşük maliyetli bir mikrodenetleyici kartıdır. ESP32 entegre Wi-Fi ve çift Bluetooth mevcuttur. Espressif sistemi tarafından oluşturulur. ESP32, aynı üretici tarafından oluşturulan ESP8266 kartlarının halefidir. ESP32 maliyetine, boyutuna ve güç tüketimine dayalı olarak, IoT tabanlı bir Kendin Yap projesi için en uygun olanıdır. ESP32 çipi içerir Tensilica Xtensa LX6 Çift çekirdekli ve 240MHz'in üzerinde saat frekansına sahip mikroişlemci.







Diğer tarafta mikrodenetleyici kelimesini duyduğumuzda aklımıza gelen ilk isim ise; Arduino Arduino, 8-bit Uno'dan 32-bit sıfıra kadar bir dizi farklı kartla birlikte mevcut geniş desteği nedeniyle mikrodenetleyici kartlarına çok uzun süredir liderlik ediyor. Arduino panoları dayanmaktadır ATmega AVR mikrodenetleyicileri . Arduino kartları, küçük boyutlu projeler için mükemmel uyum sağlayan nano'dan, 54 dijital giriş/çıkış pini sayesinde birden fazla cihazı idare edebilen Arduino mega'ya kadar başlar.



ESP32 Arduino'dan Daha İyi mi?

Evet , ESP32, Arduino'dan daha iyi ve daha güçlü bir mikrodenetleyici kartıdır. ESP32, dahili çift Wi-Fi ve Bluetooth desteğine sahiptir. Tam yığın internet bağlantısı için tam TCP/IP desteğine sahiptir. Wi-Fi modülü sayesinde, bir Wi-Fi istasyonunun yanı sıra bir erişim noktası görevi görebilir. 32 bit mikrodenetleyicisi ve 240 MHz'e kadar saat frekansı nedeniyle Arduino'dan çok ileridedir.



Aşağıdaki önemli noktalar, ESP32'nin neden Arduino'dan daha iyi olduğuna dair daha iyi bir bakış açısı sunar:





  • ESP32, 32 bit mikrodenetleyiciye sahiptir
  • Çift Wi-Fi ve Bluetooth desteği
  • Düşük voltaj seviyesinde çalışır (3.3V)
  • ESP32'de 18 ADC kanalı varken Arduino Uno'da sadece altı tane var
  • ESP32 48 GPIO piniyle gelirken Uno'da sadece 14 dijital giriş/çıkış pini ve 6 analog pin bulunur
  • ESP32 kartı Arduino Uno'dan daha ucuz

Arduino ve ESP32 arasındaki bir karşılaştırmayı okumak için tıklayın burada .

ESP32, Arduino Uno ve Arduino Mega Hız Karşılaştırması

Mikrodenetleyici kartı ESP32, Arduino Uno ve Mega'nın saat frekansları aşağıdadır.



Arduino Bir: 16MHz dahili saat

Arduino Mega: 16MHz dahili saat

ESP WROOM 32: 80MHz ila 240MHz arasında ayarlanabilir.

Hepimiz mikrodenetleyicilerin saat kaynaklarına güvendiğini biliyoruz. Daha güçlü bir saat, talimatları yürütmek için daha az zaman demektir. Yukarıdaki üç mikrodenetleyici kartının hızları arasındaki farkı görelim.

imzasız uzun Start_Time, Time_Taken ;
#define pini 5 /*pin 5 durumunu değiştirmek için tanımlandı*/
geçersiz kurmak ( ) {
Seri. başlamak ( 9600 ) ; /*Seri iletişim için tanımlanmış baud hızı*/
 pinModu ( pim, ÇIKIŞ ) ; /*pin 5 çıkış olarak tanımlandı*/
}
geçersiz döngü ( ) {
Başlangıç ​​saati = milis ( ) ; /*başlangıç ​​zamanı Millis sayacına eşittir*/
için ( int i = 0 ; i < 20000 ; i ++ ) { /*for döngüleri 20000 kez çalışır*/
dijitalWrite ( pim, YÜKSEK ) ; /*pin durumu YÜKSEK olarak değişir*/
dijitalWrite ( pim, DÜŞÜK ) ; /*pin durumu DÜŞÜK olarak değişir*/
}
Geçen süre = milis ( ) - Başlangıç ​​saati ; /*Alınan zamanı döndürmek için hesaplanan zaman farkı*/
Seri. Yazdır ( 'PIN 5'teki durumu değiştirmek için geçen süre: ' ) ;
Seri. Yazdır ( Geçen süre ) ; /*Alınan toplam süre yazdırılır*/
Seri. println ( 'Hanım' ) ;
}

İlk olarak, iki değişkeni başlattık Başlangıç ​​saati ve Geçen süre. Biri başlangıç ​​zamanını Millis'te depolarken, ikincisi mikrodenetleyici tarafından YÜKSEK ve DÜŞÜK olan iki durum arasında geçiş yapmak için geçen toplam süreyi saklayacaktır.

Kodun döngü kısmında bundan sonra 20.000 kez dönecek ve pin 5'i alternatif olarak YÜKSEK ve DÜŞÜK yapacak bir for döngüsü kullanılır. Daha sonra, durum YÜKSEK'ten DÜŞÜK'e değiştiğinde, mevcut Millis ile başlama zamanının farkını alırız. Burada, şimdiki Milliler ile önceki Milliler arasındaki zaman farkı, board'un durum değiştirmesi için geçen süreyi tanımlayacaktır.

ESP32 Çıkışı

ESP32, Uno ve Mega'dan daha yüksek saat frekansına sahip olduğundan, durumlar arasında çok hızlı geçiş yapacaktır. Burada çıktı, YÜKSEK durumdan DÜŞÜK duruma geçmenin 5 ms sürdüğünü gösterir.

Arduino Uno Çıkışı

Arduino Uno kartının harici bir 16MHz saati vardır, bu nedenle pin durumunu değiştirmek 172ms alacaktır.

Arduino Mega Çıkışı

Arduino Mega kartının durumlar arasında geçiş yapması 227ms sürecektir.

Yukarıdaki sonuçtan ESP32'nin Arduino Uno ve Mega'dan daha hızlı olduğu sonucuna vardık.

ESP32 ile Arduino Uno ve Arduino Mega'nın Kısa Karşılaştırması

İşte ESP32 kartlarının Arduino rakipleri Uno ve Mega ile kısa bir karşılaştırması.

özellikleri ESP32 arduino bir arduino mega
Dijital G/Ç Pinleri 36 14 54
I/O pini başına DC akımı 40mA 20mA 20mA
Analog Pinler 18'e kadar 6, 10-bit ADC 6, 10-bit ADC
İşlemci Xtensa Çift Çekirdekli 32-bit LX6 mikroişlemci ATmega328P ATmega2560
Flash Bellek 4 MB 32 KB 256 KB
SRAM 520 kB 2 KB 8 KB
EEPROM Hiçbiri 1 KB 4 KB
Saat hızı 80MHz ila 240Mhz 16 MHz 16 MHz
Voltaj seviyesi 3.3V 5V 5V
Kablosuz internet 802.11 b/g/n Hiçbiri Hiçbiri
Bluetooth v4.2 BR/EDR ve BLE Hiçbiri Hiçbiri
I2C Desteği Evet (2x) Evet Evet
SPI Desteği Evet (4x) Evet Evet
Donanım Seri Bağlantı Noktası 3 1 1
USB Bağlantısı Mikro USB USB-B USB-B

Çözüm

İlk mikrodenetleyici kartı satın alırken veya birden fazla kart üzerinde çalışırken herkesin aklına gelen bir soru, mikrodenetleyici kartlarından hangisinin en iyi olduğudur. Böylece, uygun fiyatı, düşük güç tüketimi ve WiFi ve Bluetooth destekli süper hızlı harici saati nedeniyle ESP32'nin Arduino kartından daha iyi olduğu sonucuna vardık. ESP32, Arduino kartlarına kıyasla daha fazla işlevsellik sağlar.