İçindekiler:

ESP32: Dahili Ayrıntılar ve Pinout: 11 Adım
ESP32: Dahili Ayrıntılar ve Pinout: 11 Adım

Video: ESP32: Dahili Ayrıntılar ve Pinout: 11 Adım

Video: ESP32: Dahili Ayrıntılar ve Pinout: 11 Adım
Video: Servo Motor with Potentiometer and LCD with Arduino 2024, Kasım
Anonim
Image
Image

Bu yazımızda ESP32'nin dahili detaylarından ve pinlemesinden bahsedeceğiz. Datasheet'e bakarak pinleri nasıl doğru bir şekilde tanımlayacağınızı, pinlerden hangisinin OUTPUT / INPUT olarak çalıştığını nasıl belirleyeceğinizi, ESP32'nin bize sunduğu sensörler ve çevre birimleri hakkında genel bir bakışa nasıl sahip olacağınızı göstereceğim. bot. Bu nedenle, diğer bilgilerin yanı sıra ESP32 referansları hakkında mesaj ve yorumlarda aldığım birkaç soruyu aşağıdaki video ile cevaplayabileceğime inanıyorum.

Adım 1: NodeMCU ESP-WROOM-32

ESP-WROOM-32
ESP-WROOM-32

Burada PINOUT'a sahibiz.

Programladığınız zaman için iyi bir referans görevi gören WROOM-32. Genel Amaçlı Giriş/Çıkış (GPIO'lar), yani programlanabilir veri giriş ve çıkış bağlantı noktalarına, örneğin hala bir AD dönüştürücü veya GPIO4 gibi bir Dokunmatik pin olabilen, dikkat etmek önemlidir. Bu aynı zamanda giriş ve çıkış pinlerinin de PWM olabileceği Arduino ile olur.

2. Adım: ESP-WROOM-32

Yukarıdaki resimde ESP32'nin kendisine sahibiz. Üreticiye göre farklı özelliklere sahip birkaç tip uç vardır.

Adım 3: Ancak, ESP32'm için Kullanmam İçin Doğru Pinout Nedir?

Ancak, ESP32'm için Kullanmam İçin Doğru Pinout Nedir?
Ancak, ESP32'm için Kullanmam İçin Doğru Pinout Nedir?
Ancak, ESP32'm için Kullanmam İçin Doğru Pinout Nedir?
Ancak, ESP32'm için Kullanmam İçin Doğru Pinout Nedir?
Ancak, ESP32'm için Kullanmam İçin Doğru Pinout Nedir?
Ancak, ESP32'm için Kullanmam İçin Doğru Pinout Nedir?
Ancak, ESP32'm için Kullanmam İçin Doğru Pinout Nedir?
Ancak, ESP32'm için Kullanmam İçin Doğru Pinout Nedir?

ESP32 zor değil. O kadar kolay ki, çevrenizde didaktik bir kaygı olmadığını söyleyebiliriz. Ancak didaktik olmamız gerekiyor, evet. Assembler'da programlamak istiyorsanız, sorun değil. Ancak, mühendislik süresi pahalıdır. Dolayısıyla, bir teknoloji tedarikçisi olan her şey size çalışmasını anlamak için zaman alan bir araç verirse, bu sizin için kolayca bir sorun haline gelebilir, çünkü tüm bunlar mühendislik süresini artıracak ve ürün giderek daha pahalı hale gelecektir. Bu, özellikle günümüzün yoğun dünyasında zaman önemli olduğundan, günlerimizi kolaylaştırabilecek kolay şeyleri tercih etmemi açıklıyor.

ESP32'ye dönersek, bir veri sayfasında, yukarıdaki gibi, vurgularda doğru pin tanımlamasına sahibiz. Çoğu zaman, çip üzerindeki etiket, pinin gerçek numarasıyla eşleşmez, çünkü üç durumumuz vardır: GPIO, seri numarası ve ayrıca kartın kodu.

Aşağıdaki örnekte gösterildiği gibi, ESP'de bir LED bağlantımız ve doğru konfigürasyon modumuz var:

Etiketin TX2 olduğuna dikkat edin, ancak önceki resimde vurgulandığı gibi doğru tanımlamayı izlemeliyiz. Bu nedenle, pinin doğru tanımlaması 17 olacaktır. Resim, kodun ne kadar yakın kalması gerektiğini gösterir.

Adım 4: GİRİŞ / ÇIKIŞ

GİRİŞ ÇIKIŞ
GİRİŞ ÇIKIŞ

Pinler üzerinde INPUT ve OUTPUT testleri yaparken aşağıdaki sonuçları elde ettik:

INPUT, yalnızca GPIO0'da çalışmadı.

ÇIKIŞ sadece sırasıyla VDET1 ve VDET2 olan GPIO34 ve GPIO35 pinlerinde çalışmadı.

* VDET pinleri, RTC'nin güç alanına aittir. Bu, ADC pinleri olarak kullanılabilecekleri ve ULP yardımcı işlemcisinin bunları okuyabileceği anlamına gelir. Sadece giriş olabilirler ve asla çıkmazlar.

Adım 5: Blok Şeması

Blok Şeması
Blok Şeması

Bu şema, ESP32'nin çift çekirdeğe, WiFi'yi kontrol eden bir çip alanına ve Bluetooth'u kontrol eden başka bir alana sahip olduğunu göstermektedir. Ayrıca, bir anten kullanarak 15 km'ye kadar bağlantıya izin veren uzun mesafeli bir ağ olan LoRa'ya bağlantı sağlayan şifreleme için donanım hızlandırmasına da sahiptir. Ayrıca saat üretecini, gerçek zamanlı saati ve diğerlerinin yanı sıra örneğin PWM, ADC, DAC, UART, SDIO, SPI'yi içeren diğer noktaları da gözlemleriz. Tüm bunlar, cihazı oldukça eksiksiz ve işlevsel hale getirir.

Adım 6: Çevre Birimleri ve Sensörler

Çevre Birimleri ve Sensörler
Çevre Birimleri ve Sensörler

ESP32, aşağıdakiler gibi çeşitli işlevlere atanabilen 34 GPIO'ya sahiptir:

Yalnızca dijital;

Analog özellikli (dijital olarak yapılandırılabilir);

Kapasitif dokunmatik özellikli (dijital olarak yapılandırılabilir);

Ve diğerleri.

Çoğu dijital GPIO'nun dahili pull-up veya pull-down olarak yapılandırılabileceğine veya yüksek empedans için yapılandırılabileceğine dikkat etmek önemlidir. Giriş olarak ayarlandığında, değer kayıttan okunabilir.

7. Adım: GPIO

Analogdan Dijitale Dönüştürücü (ADC)

Esp32, 12 bit ADC'leri entegre eder ve 18 kanalda (analog etkin pinler) ölçümleri destekler. ESP32'deki ULP yardımcı işlemcisi, düşük güç tüketimine izin veren uyku modunda çalışırken voltajları ölçmek için de tasarlanmıştır. CPU, bir eşik ayarı ve/veya diğer tetikleyiciler aracılığıyla uyandırılabilir.

Dijital-Analog Dönüştürücü (DAC)

İki dijital sinyali iki analog voltaj çıkışına dönüştürmek için iki 8 bit DAC kanalı kullanılabilir. Bu ikili DAC'ler, giriş voltajı referansı olarak güç kaynağını destekler ve diğer devreleri çalıştırabilir. Çift kanallar bağımsız dönüşümleri destekler.

Adım 8: Sensörler

Sensörler
Sensörler
Sensörler
Sensörler

Dokunma sensörü

ESP32, bir GPIO'ya parmakla veya başka nesnelerle dokunurken veya yaklaşırken indüklenen varyasyonları algılayan 10 kapasitif algılama GPIO'suna sahiptir.

ESP32'de ayrıca bir Sıcaklık Sensörü ve bir Dahili Salon Sensörü bulunur, ancak bunlarla çalışmak için kayıtların ayarlarını değiştirmeniz gerekir. Daha fazla ayrıntı için bağlantı aracılığıyla teknik kılavuza bakın:

www.espressif.com/sites/default/files/documentation/esp32_technical_reference_manual_en.pdf

Adım 9: Bekçi köpeği

ESP32'nin üç gözetim zamanlayıcısı vardır: biri iki zamanlayıcı modülünün her birinde (Birincil Gözetleme Zamanlayıcısı veya MWDT olarak adlandırılır) ve diğeri RTC modülünde (RTC Gözetleme Zamanlayıcısı veya RWDT olarak adlandırılır).

Adım 10: Bluetooth

Bluetooth
Bluetooth
Bluetooth
Bluetooth

Bluetooth Arayüzü v4.2 BR / EDR ve Bluetooth LE (düşük enerji)

ESP32, temel bant protokollerini ve modülasyon / demodülasyon, paket işleme, bit akışı işleme, frekans atlama vb.

Bağlantı denetleyicisi üç ana durumda çalışır: bekleme, bağlantı ve koklama. Birden çok bağlantıya ve sorgulama, sayfa ve güvenli basit eşleştirme gibi diğer işlemlere izin verir ve böylece Piconet ve Scatternet'e izin verir.

Adım 11: Önyükleme

Bot
Bot
Bot
Bot

Gömülü USB / Seri içeren birçok geliştirme kartında esptool.py, kartı otomatik olarak önyükleme moduna sıfırlayabilir.

ESP32, sıfırlama sırasında GPIO0 düşük tutulduğunda seri önyükleyiciye girecektir. Aksi takdirde programı flash olarak çalıştıracaktır.

GPIO0 dahili bir çekme direncine sahiptir, bu nedenle bağlantısızsa yüksek olacaktır.

Birçok kart, basıldığında GPIO0'u aşağı yönlendiren "Flash" (veya bazı Espressif geliştirme kartlarında "BOOT") etiketli bir düğme kullanır.

GPIO2 ayrıca bağlantısız / yüzer halde bırakılmalıdır.

Yukarıdaki resimde yaptığım bir testi görebilirsiniz. Açıldığında ne olduğunu görmek için osiloskopu ESP'nin tüm pinlerine koydum. Bir pin aldığımda, sağ tarafta vurgulanan alanda gösterildiği gibi 750 mikrosaniyelik salınımlar ürettiğini keşfettim. Bu konuda ne yapabiliriz? Örneğin, bir transistörlü bir devre, bir kapı genişletici ile gecikme vermek gibi birkaç seçeneğimiz var. GPIO08'in tersine çevrildiğine dikkat çekiyorum. Salınım aşağı değil yukarı çıkar.

Diğer bir detay ise, bazı pinlerimizin High'da, bazılarının ise Low'da başlamasıdır. Bu nedenle, bu PINOUT, özellikle triyak, röle, kontaktör veya bir miktar güç gibi tetiklemek için bir yük ile çalışırken ESP32'nin ne zaman açıldığına bir referanstır.

Önerilen: