İçindekiler:
- Adım 1: Çekirdek Arduino ile Plakalar
- 2. Adım: STM32F746G KEŞFİ
- Adım 3: Arduino Due X STM NUCLEO-L476RG
- Adım 4: Kurutaş
- Adım 5: STM32L432KC X Arduino Nano
- Adım 6: STM32L432KC
- Adım 7: STM32L4 Kartları için Core Arduino'yu Kurun
- Adım 8: ST-Link'i Kurun - Kayıt Yapan Program
- 9. Adım: Json'a Adres Verin
- Adım 10: Kurullar: Yönetim Kurulu Yöneticisi
- Adım 11: Kitaplıklar: Kitaplık Yöneticisi
- Adım 12: PDF'yi İndirin
Video: İnanılmaz STM32 L4!: 12 Adım
2024 Yazar: John Day | [email protected]. Son düzenleme: 2024-01-30 13:20
Bu makaleye, bu L harfinin (L4'ün) Düşük (veya temel olarak Ultra Düşük Güç) anlamına geldiğini açıklayarak başlamak istiyorum. Böylece çok az enerji harcar ve bu STM32'nin neden inanılmaz olduğunu gösterir! Mikroamper harcar ve içinde her çip parçasının maliyetini belirleyebilen bir sisteme sahiptir. Bu, çok verimli bir enerji yönetimine ve yüksek performansa izin verir.
Videoda bu mikrodenetleyiciden bahsetmiştim, “Mikrodenetleyici programlamanın en kolay yolu!” Videoda STM32 L4'ün MBED ile nasıl programlandığını gösterdim. Ancak bu konuda daha fazla araştırma yaparken, STMicroelectronics üreticisinin açıklamadığı bir şey keşfettim. Arduino IDE üzerinden programlamayı sağlayan çipte Core Arduino'yu uyguladı.
Bu resimde, L4'ün iki versiyonuna sahibiz. STM32L432KC, Arduino Uno'ya eşdeğer IO'lara sahip Arduino Nano ve STM32L476RG ile aynıdır. Bu yüzden, bu güçlü mikrodenetleyicinin iki versiyonu ile çalışırken, size Arduino Core'u STM32 ailesinde nasıl kuracağınızı göstereceğim. Ayrıca STM32 Kitlerinin temel özelliklerini de anlatacağım.
Adım 1: Çekirdek Arduino ile Plakalar
Buraya çeşitlilik hakkında bir liste koydum. Ancak STM32L432KC ve STM32L476RG ile çalışacağız.
STM32F0
- çekirdek F030R8
- çekirdek F091RC
- 32F0308KEŞİF
STM32F1
- BluePill F103C8 (Temel destek, USB yok)
- MapleMini F103CB (Temel destek, USB yok)
- çekirdek F103RB
- STM32VLKEŞİF
STM32F2
çekirdek F207ZG
STM32F3
- çekirdek F302R8
- Nükleer F303K8
- Nükleer F303RE
STM32F4
- çekirdek F401RE
- çekirdek F411RE
- çekirdek F429ZI
- çekirdek F446RE
- STM32F407G-DISC1
STM32F7
STM32F746G-KEŞFİ
STM32L0
- Çekirdek L031K6
- Çekirdek L053R8
- B-L072Z-LRWAN1
STM32L1
çekirdek L152RE
STM32L4
- çekirdek L432KC
- çekirdek L476RG
- NÜKLEO-L496ZG-P
- NÜKLEO-L496ZG-P
- B-L475E-IOT01A
2. Adım: STM32F746G KEŞFİ
Sadece örneklemek için, canavar olduğunu düşündüğüm bir STM32F746G KEŞİF'in ayrıntılarını gösteriyorum. Bu çipi zaten sipariş ettim ve yakında bunun hakkında konuşmayı umuyorum.
Özellikler:
BGA216 paketinde 1 Mbyte Flash belleğe ve 340 Kbyte RAM'e sahip STM32F746NGH6 mikrodenetleyici
- USB yeniden numaralandırma özelliklerini destekleyen yerleşik ST-LINK / V2-1
- Mbed özellikli (mbed.org)
- USB işlevleri: sanal COM bağlantı noktası, yığın depolama ve hata ayıklama bağlantı noktası
- Kapasitif dokunmatik ekranlı 4,3 inç 480x272 renkli LCD-TFT
- Kamera konektörü
- SAI ses codec'i
- Ses giriş ve çıkış jakı
- Stereo hoparlör çıkışları
- İki adet ST MEMS mikrofon
- SPDIF RCA giriş konektörü
- İki buton (kullanıcı ve sıfırlama)
- 128 Mbit Dörtlü SPI Flash bellek
- 128 Mbit SDRAM (64 Mbit erişilebilir)
- microSD kart için konektör
- RF-EEPROM ek kart konektörü
- Micro-AB konektörlü USB OTG HS
- Mikro-AB konektörlü USB OTG FS
- IEEE-802.3-2002 ile uyumlu Ethernet konektörü
- Beş güç kaynağı seçeneği:
- ST BAĞLANTISI / V2-1
- USB FS konektörü
- USB HS konektörü
- Arduino konektöründen VIN
- Konektörden harici 5 V
Güç kaynağı çıkışı harici uygulamalar:
- 3,3 V veya 5 V
Arduino Uno V3 konektörleri
Adım 3: Arduino Due X STM NUCLEO-L476RG
İşte bir ARM Cortex-M3 olan Arduino Due ile bir karşılaştırma. Bu modeli videolarda kullanmıştım: Nema 23 Step Motor with Driver TB6600 ile Arduino Due ve SpeedTest: Arduinos - ESP32 / 8266s - STM32, ARM Cortex-M4 Ultra Low Power olan STM NUCLEO-L476RG ile sağ taraftaki resim.
Arduino Ödeneği:
Mikrodenetleyici: AT91SAM3X8E
Çalışma Gerilimi: 3.3V
Giriş Voltajı (önerilen): 7-12V
Giriş Voltajı (sınırlar): 6-16V
Dijital I/O Pinleri: 54 (12 tanesi PWM çıkışı sağlar)
Analog Giriş Pinleri: 12
Analog Çıkış Pinleri: 2 (DAC)
Tüm G/Ç hatlarında Toplam DC Çıkış Akımı: 130 mA
3.3V Pin için DC Akımı: 800 mA
5V Pin için DC Akımı: 800 mA
Flash Bellek: 512 KB tümü kullanıcı uygulamaları için kullanılabilir
SRAM: 96 KB (iki banka: 64KB ve 32KB)
Saat Hızı: 84 MHz
Uzunluk: 101,52 mm
Genişlik: 53,3 mm
Ağırlık: 36 gr
STM NÜKLEO-L476RG:
LQFP64 paketinde STM32L476RGT6
ARM®32-bit Cortex®-M4 CPU
Uyarlanabilir gerçek zamanlı hızlandırıcı
(ART Accelerator ™) Flash bellekten 0-bekleme durumu yürütülmesine izin verir
80 MHz maksimum CPU frekansı
1,71 V ila 3,6 V arası VDD
1 MB Flaş
128 KB SRAM
SPI (3)
I2C (3)
USART (3)
UART (2)
LPUART (1)
Harici kesme özelliğine sahip GPIO (51)
12 kanallı kapasitif algılama
16 kanallı 12 bit ADC (3)
2 kanallı 12 bit DAC
FPU veya Kayan Nokta Birimi
* Burada STM NUCLEO-L476RG'nin bu ayrı FPU'sunu vurguluyorum, yani çip inanılmaz bir hızla trigonometrik hesaplamalar yapıyor. Bu, bunu yapmak için genetik bir işlemciye ihtiyaç duyan Arduino Due'dan farklıdır.
Adım 4: Kurutaş
Dhrystone, 1984 yılında Reinhold P. Weicker tarafından geliştirilen ve (tamsayılı) sistem programlamayı temsil etmesi amaçlanan sentetik bir bilgisayar kıyaslama programıdır. Dhrystone, genel işlemci performansının (CPU) temsilcisi oldu. "Dhrystone" adı, Whetstone adlı farklı bir kıyaslama algoritmasında bir kelime oyunudur. Bu, bazı genel işlemlerden alınan bir önlemdir.
Bu program, Arduino'daki bu mikrodenetleyicilerin içinde bir şeyler derlemek için burada. Ve biri Dhrystone ile diğeri SpeedTest videosundan yaptığım iki testin sonucu şu şekilde:
Arduino Ödeneği: 37,00 ABD Doları
Dhrystone Benchmark, Sürüm 2.1 (Dil: C)
Yürütme başlar, Dhrystone üzerinden 300.000 çalışır
infaz biter
Dhrystone'dan bir geçiş için mikrosaniye: 10.70
Saniyedeki Dhrystones: 93, 431,43
VAX MIPS derecesi = 53.18 DMIPS
Koşu testi Fernandok
Toplam süre: 2,458 ms
- FPU'su yok
- Arduino üzerinde Dhrystone yazılımı
www.saanlima.com/download/dhry21a.zip
STM NUCLEO-L476RG: 23,00 ABD Doları
Dhrystone Benchmark, Sürüm 2.1 (Dil: C)
Yürütme başlar, Dhrystone üzerinden 300.000 çalışır
Yürütme biter
Dhrystone'dan bir geçiş için mikrosaniye: 9.63
Saniyedeki Dhrystones: 103, 794.59
VAX MIPS derecesi = 59.07 DMIPS
Koşu testi Fernandok
Toplam Süre: 869 ms 2.8x DAHA HIZLI
- 40Mbit/s'ye kadar PI, USART 10Mbit/s
- 2x DMA (14 kanal)
- ART Hızlandırıcı ile 80 MHz / 100 DMIPS'ye kadar
Adım 5: STM32L432KC X Arduino Nano
Soldaki kart, STMicroelectronics'in sağdaki resimde aynı Arduino Nano pin çıkışını yerleştirdiği STM32L432KC'dir.
Adım 6: STM32L432KC
Ultra düşük güçlü Arm® Cortex®-M4 32-bit
MCU + FPU, 100DMIPS, 256KB'ye kadar Flash, 64KB SRAM, USB FS, analog, ses
26 IO'ya kadar daha hızlı, 5V'a daha toleranslı
- Donanım takvimi, alarmlar ve kalibrasyon ile RTC
- 3 kapasitif algılama kanalına kadar
- 11x Zamanlayıcılar: 1x16-bit gelişmiş motor kontrolü
1x 32-bit ve 2x 16-bit genel amaçlı, 2x 16-bit temel, 2x düşük güçlü 16-bit zamanlayıcı (Stop modunda mevcuttur), 2x watchdog, SysTick zamanlayıcı
Hafıza:
- 256 KB'ye kadar Flash, tescilli kod okuma koruması
- Donanım eşlik kontrolü ile 16 KB dahil 64 KB SRAM
- Dörtlü SPI bellek arayüzü
Zengin analog çevre birimleri (bağımsız besleme)
- 1x 12-bit ADC 5 Msps, donanım aşırı örnekleme ile 16 bite kadar, 200 μA / Msps
- 2 kanal 12 bit DAC çıkışı, düşük güç tüketimi
- Dahili PGA'lı 1x operasyonel amplifikatör
- Ultra düşük güç arayüzlerine kıyasla 2 kat
- 1x UPS (seri ses arabirimi)
- 2x I2C FM + (1 Mbit/s), SMBus / PMBus
- 3 adet USART (ISO 7816, LIN, IrDA, modem)
- 1x LPUART (2 uyandırmayı durdur)
- 2x SPI (ve 1x SPI Dörtlü)
- CAN (2.0B aktif)
- Tek kablolu protokol ana SWPMI I / F
- IRIM (kızılötesi arayüz)
- 14 kanallı DMA denetleyicisi
- Rastgele numara üreticisi
Adım 7: STM32L4 Kartları için Core Arduino'yu Kurun
- kaydeden ST-Link programını kurun
- Json Adresi
- Kurullar: Kart Yöneticisi
- Kütüphaneler: Kütüphane Yöneticisi
Adım 8: ST-Link'i Kurun - Kayıt Yapan Program
Dosyayı https://www.st.com/en/development-tools/stsw-link0… adresinden indirin. Sadece cihazı kaydedin, indirin ve kurun.
9. Adım: Json'a Adres Verin
Özelliklerde aşağıdaki adresi ekleyin:
github.com/stm32duino/BoardManagerFiles/ra…
Adım 10: Kurullar: Yönetim Kurulu Yöneticisi
Arduino Board Manager'da yaklaşık 40MB olan STM32 Core'u kurun.
Adım 11: Kitaplıklar: Kitaplık Yöneticisi
Son olarak kütüphaneleri kurun.
Bazılarını benim yüklediğim birkaç örneği olan STM32duino.com grubunu şahsen beğendim. Ayrıca çok sevdiğim bir FreeRTOS indirdim. Hızlı ve güvenilir buldum. Ayrıca LRWAN'ı kurdum (ancak henüz test etmedim). İyi olup olmadığını yakında söyleyeceğim.
Adım 12: PDF'yi İndirin
Önerilen:
Esp8266 Tabanlı Boost Dönüştürücü, Geri Besleme Düzenleyicili İnanılmaz Blynk Kullanıcı Arayüzü ile: 6 Adım
Esp8266 Tabanlı Boost Dönüştürücü, Geri Besleme Düzenleyicili İnanılmaz Bir Blynk Kullanıcı Arayüzü ile: Bu projede size DC voltajlarını nasıl artırabileceğinizi verimli ve yaygın bir şekilde göstereceğim. Bir Nodemcu yardımıyla bir destek dönüştürücü oluşturmanın ne kadar kolay olabileceğini size göstereceğim. Hadi inşa edelim. Ayrıca bir ekran voltmetresi ve bir geri bildirim içerir
LED Şerit İnanılmaz Etkisi: 4 Adım
LED Şerit Şaşırtıcı Etkisi: Merhaba arkadaşım, LED şeridin iyi efektlerini istiyoruz. LED şerit dekoru odamızda ve efekt verdiğinde oda harika görünüyor. LED şeridiniz basit bir şekilde parlıyorsa, bu blog sizin için çok özel çünkü bu blogda nasıl yapabileceğimizi öğreneceksin
Hexabitz, Prototip İnşa Etmenin İnanılmaz Yeni Yolu: 6 Adım
Hexabitz, Prototip İnşa Etmenin İnanılmaz Yeni Yolu: Geçen hafta HackAday.io'da gezinirken bu projeyi “Hexabitz” olarak buldum, o kadar umut verici görünüyordu ki projenin sloganı şuydu: “Donanım prototiplemesi bu kadar zor olmak zorunda değil”. Temel olarak proje, Hexagon veya Pentagon sha'ya sahip modüllerden oluşuyor
3 İnanılmaz BEYİN / ZİHİN Kontrol Projesi Işıklar Arduino ve Neurosky ile LedStrip LED: 6 Adım (Resimlerle)
3 İnanılmaz BEYİN / ZİHİN Kontrol Projeleri Işıklar Arduino ve Neurosky ile LedStrip LED: Hiç sadece düşünerek ışıkları AÇMAK veya KAPATMAK istediniz mi? Yoksa bir RGB ledin rengine bakarak ne kadar stresli olduğunuzu bilmek ister misiniz? Şimdi bu Talimatları takip ederek yapabilirsiniz! Neye gittiğimiz hakkında bir fikir edinmek için
Espressif'ten İnanılmaz ESP32 Wrover: 8 Adım
Espressif'ten İnanılmaz ESP32 Wrover: Bugün sizlere, genellikle kullandığım ESP32'den (Wroom) farklı bir model olan ESP32 Wrover Kit'i tanıtacağım. Wrover, birçok özelliği olan ve oldukça çevresel bir geliştirme kartıdır. Size bir program örneği göstereceğim