NodeMCU Nedir ve Teknik Özellikleri Nelerdir?

Bu yazımızda NodeMcu nedir ve teknik özelliklerinin ne olduğunu öğreneceğiz.NodeMCU, özellikle IoT tabanlı uygulamalar için hedeflenen açık kaynaklı bir Lua tabanlı ürün yazılımı ve geliştirme kartıdır. Espressif Systems’ın ESP8266 Wi-Fi SoC’sinde çalışan bellenimi ve ESP-12 modülüne dayalı donanımı içerir.

Klon NodeMCU v3 Lolin

NodeMCU V3 Teknik Özellikleri

MikrodenetleyiciESP-8266 32-bit
NodeMCU Boyutu58mm x 32mm
Çalışma Hızı80 MHz
USB TTL DönüştürücüCH340G
Usb BağlantıMikro USB
Çalışma Voltajı3.3V
Giriş Voltajı4.5V-10V
Flaş Bellek/SRAM4 MB / 64 KB
Giriş/Çıkış(I/O) Pin Sayısı11
Analog Pin Sayısı1
ADC Aralığı0-3.3V
UART/SPI/I2C Sayısı1 / 1 / 1
Dahili Wifi802.11 b/g/n
Çalışma Sıcaklık Aralığı(-40C) – (125C)
NodeMCU Teknik Özellikleri

NodeMCU Pin Diyagramı

NodeMCU V3 Pin Diyagramı
NodeMCU V3 Pin Diyagramı

Güç Pinleri: Dört adet güç pimi vardır. VIN pini ve üç adet 3.3V pin.

  • VIN, NodeMCU/ESP8266 ve çevre birimlerini doğrudan beslemek için kullanılabilir. VIN’de verilen güç, NodeMCU modülündeki yerleşik regülatör aracılığıyla düzenlenir – ayrıca VIN pinine düzenlenmiş 5V besleyebilirsiniz
  • 3.3V pinler, yerleşik voltaj regülatörünün çıkışıdır ve harici bileşenlere güç sağlamak için kullanılabilir.

GND: : NodeMCU/ESP8266’nın topraklama pinleridir

I2C Pinleri: I2C sensörlerini ve çevre birimlerini bağlamak için kullanılır. Hem I2C Master hem de I2C Slave desteklenir. I2C arayüz işlevselliği programlı olarak gerçekleştirilebilir ve saat frekansı maksimum 100 kHz’dir. I2C saat frekansının, bağımlı cihazın en yavaş saat frekansından daha yüksek olması gerektiğine dikkat edilmelidir.

GPIO Pinleri: NodeMCU/ESP8266, I2C, I2S, UART, PWM, IR Uzaktan Kumanda, LED Işık ve Buton gibi fonksiyonlara programlı olarak atanabilen 17 GPIO pinine sahiptir. Dijital olarak etkinleştirilmiş her GPIO, dahili Pull Up veya Pull Down için yapılandırılabilir veya yüksek empedansa ayarlanabilir. Giriş olarak yapılandırıldığında, CPU kesintileri oluşturmak için kenar tetikleyici veya seviye tetikleyici olarak da ayarlanabilir.

ADC Kanalı: NodeMCU, 10 bit hassas SAR ADC ile gömülüdür. İki işlev ADC kullanılarak gerçekleştirilebilir. VDD3P3 pininin güç kaynağı voltajının test edilmesi ve TOUT pininin giriş voltajının test edilmesi. Ancak aynı anda uygulanamazlar.

UART Pinleri: NodeMCU/ESP8266, asenkron iletişim (RS232 ve RS485) sağlayan ve 4,5 Mbps’ye kadar iletişim kurabilen 2 UART arayüzüne (UART0 ve UART1) sahiptir. UART0 (TXD0, RXD0, RST0 & CTS0 pinleri) iletişim için kullanılabilir. Ancak, UART1 (TXD1 pini) yalnızca veri iletim sinyaline sahiptir, bu nedenle genellikle günlük yazdırmak için kullanılır.

SPI Pinleri: NodeMCU/ESP8266, bağımlı ve ana modlarda iki SPI (SPI ve HSPI) içerir. Bu SPI’ler ayrıca aşağıdaki genel amaçlı SPI özelliklerini de destekler:

  • SPI format transferinin 4 zamanlama modu
  • 80 MHz’e kadar ve 80 MHz’lik bölünmüş işlemciler.
  • 64-Byte’a kadar FIFO

SDIO Pinleri: NodeMCU/ESP8266, SD kartlarına doğrudan arayüz sağlamak için kullanılan Güvenli Dijital Giriş/Çıkış Arayüzüne (SDIO) sahiptir. 4-bit 25 MHz SDIO v1.1 ve 4-bit 50 MHz SDIO v2.0 desteklenir.

PWM Pinleri: Kartta 4 kanal Darbe Genişlik Modülasyonu (PWM) vardır. PWM çıkışı programlı olarak uygulanabilir ve dijital motorları ve LED’leri sürmek için kullanılabilir. PWM frekans aralığı 1000 μs ile 10000 μs (100 Hz ve 1 kHz) arasında ayarlanabilir.

Kontrol Pinleri: NodeMCU/ESP8266’yı kontrol etmek için kullanılır. Bu pinler Chip Enable pini (EN), Reset pini (RST) ve WAKE pinini içerir.

  • EN: EN pini YÜKSEK çekildiğinde ESP8266 yongası etkinleştirilir. DÜŞÜK çekildiğinde çip minimum güçte çalışır.
  • RST: RST pini, ESP8266 çipini sıfırlamak için kullanılır.
  • WAKE: Uyandırma pimi, çipi derin uykudan uyandırmak için kullanılır.

NodeMCU İle Led Yakma

Gerekli Malzemeler:

  • 220 Ohm direnç
  • 1 adet led
  • NodeMCU
  • Breadbord

Aşağıdaki gibi devremizin elemanlarını birbirine bağlayalım.

NodeMCU Led Bağlantı Şeması

LED’in iki ayağından kısa olanını NodeMCU’nun GND’sine (220 Ohm’luk bir direnç aracılığıyla) ve uzun ayağını D7 pinine NodeMCU’muzu ve LED’imizi yukarıdaki gibi breadboard’a bağlayalım.

Led Kutupları
Led Kutupları

Direnç, bir devreden geçen akımı sınırlamak için kullanılan elektronik bir bileşendir. Bizim durumumuzda, LED’i yanma veya stresten korumak için kullanıyoruz.

Pin D7 (Dijital pin 7) Arduino IDE’deki Pin 13’e karşılık gelir. Bu yüzden aşağıdaki kodu Arduino IDE kod düzenleyicisine kopyalıyoruz:

void setup() {

  //13. pini led için çıkış olarak ayarlıyoruz
  pinMode(13, OUTPUT);
}

void loop() {

  //ledi yakıyoruz
  digitalWrite(13, HIGH);

  //1sn bekliyoruz
  delay(1000);

  //ledi söndürüyoruz
  digitalWrite(13, LOW);

  //1sn bekliyoruz
  delay(1000);
}

ve kodumuzu yüklüyoruz. Ardından ilk Blink(yanıp sönme) programımızın keyfini çıkarıyoruz.