Isi kandungan:

STM32 L4 yang Luar Biasa !: 12 Langkah
STM32 L4 yang Luar Biasa !: 12 Langkah

Video: STM32 L4 yang Luar Biasa !: 12 Langkah

Video: STM32 L4 yang Luar Biasa !: 12 Langkah
Video: Temukan Pengalaman Luar Biasa dengan Polytron SCN 237 L4 2024, November
Anonim
Image
Image
PENEMUAN STM32F746G
PENEMUAN STM32F746G

Saya ingin memulakan artikel ini yang menjelaskan bahawa huruf L ini (dari L4) bermaksud Rendah (atau, pada dasarnya, Kuasa Ultra Rendah). Oleh itu, ia menghabiskan sedikit tenaga dan menunjukkan mengapa STM32 ini luar biasa! Ia menghabiskan microamps dan mempunyai sistem di dalamnya yang dapat mengenal pasti perbelanjaan setiap bahagian cip. Ini membolehkan pengurusan tenaga yang sangat cekap, dan dengan prestasi tinggi.

Saya sudah membincangkan mikrokontroler ini dalam video, "Cara termudah untuk memprogram mikrokontroler!" Dalam video tersebut, saya menunjukkan cara memprogram STM32 L4 dengan MBED. Tetapi semasa meneliti lebih lanjut mengenainya, saya menemui sesuatu yang tidak diungkapkan oleh pengeluar STMicroelectronics. Ia menerapkan Core Arduino dalam cip, yang memungkinkan pengaturcaraan melalui Arduino IDE.

Dalam gambar ini, kami mempunyai dua versi L4. STM32L432KC sama dengan Arduino Nano dan STM32L476RG, yang mempunyai IO setara dengan Arduino Uno. Oleh itu, semasa bekerja dengan dua versi mikrokontroler hebat ini, saya akan menunjukkan kepada anda cara memasang Arduino Core dalam keluarga STM32. Juga, saya akan menerangkan ciri utama Kit STM32.

Langkah 1: Plat Dengan Core Arduino

Saya meletakkan di sini senarai mengenai kepelbagaian. Walau bagaimanapun, kami akan bekerjasama dengan STM32L432KC dan STM32L476RG.

STM32F0

  • Nucleo F030R8
  • Nucleo F091RC
  • 32F0308 PENEMUAN

STM32F1

  • BluePill F103C8 (Sokongan asas, tanpa USB)
  • MapleMini F103CB (Sokongan asas, tanpa USB)
  • Nucleo F103RB
  • STM32VLDISCOVERY

STM32F2

Nucleo F207ZG

STM32F3

  • Nucleo F302R8
  • Nucleo F303K8
  • Nucleo F303RE

STM32F4

  • Nucleo F401RE
  • Nucleo F411RE
  • Nucleo F429ZI
  • Nucleo F446RE
  • STM32F407G-DISC1

STM32F7

PENCEMARAN STM32F746G

STM32L0

  • Nucleo L031K6
  • Nucleo L053R8
  • B-L072Z-LRWAN1

STM32L1

Nucleo L152RE

STM32L4

  • Nucleo L432KC
  • Nucleo L476RG
  • NUCLEO-L496ZG-P
  • NUCLEO-L496ZG-P
  • B-L475E-IOT01A

Langkah 2: PENEMUAN STM32F746G

Sebagai gambaran sahaja, saya menunjukkan perincian STM32F746G DISCOVERY, yang saya anggap sebagai binatang. Saya sudah memesan cip ini, dan saya harap dapat membincangkannya tidak lama lagi.

Ciri-ciri:

Mikrokontroler STM32F746NGH6 yang menampilkan memori Flash 1 Mbytes dan RAM 340 Kbyt dalam pakej BGA216

  • ST-LINK / V2-1 on-board menyokong keupayaan penghitungan semula USB
  • Didayakan Mbed (mbed.org)
  • Fungsi USB: port COM maya, penyimpanan massa, dan port debug
  • LCD-TFT 4,3 inci 480x272 warna dengan skrin sentuh kapasitif
  • Penyambung kamera
  • Codec audio SAI
  • Talian audio masuk dan garisan keluar
  • Keluaran pembesar suara stereo
  • Dua mikrofon ST MEMS
  • Penyambung input SPDIF RCA
  • Dua butang tekan (pengguna dan tetapkan semula)
  • Memori kilat 128-Mbit Quad-SPI
  • 128-Mbit SDRAM (64 Mbits boleh diakses)
  • Penyambung untuk kad microSD
  • Penyambung papan anak perempuan RF-EEPROM
  • USB OTG HS dengan penyambung Micro-AB
  • USB OTG FS dengan penyambung Mikro-AB
  • Penyambung Ethernet mematuhi IEEE-802.3-2002
  • Lima pilihan bekalan kuasa:

- ST LINK / V2-1

- Penyambung USB FS

- Penyambung USB HS

- VIN dari penyambung Arduino

- Luaran 5 V dari penyambung

Aplikasi output luaran bekalan elektrik:

- 3.3 V atau 5 V

Penyambung Arduino Uno V3

Langkah 3: Arduino Due X STM NUCLEO-L476RG

Arduino Due X STM NUCLEO-L476RG
Arduino Due X STM NUCLEO-L476RG

Berikut adalah perbandingan dengan Arduino Due, yang merupakan ARM Cortex-M3. Saya telah menggunakan model ini dalam video: Nema 23 Stepper Motor dengan Driver TB6600 dengan Arduino Due, dan SpeedTest: Arduinos - ESP32 / 8266s - STM32, dengan STM NUCLEO-L476RG, yang merupakan ARM Cortex-M4 Ultra Low Power, dan berada di gambar di sebelah kanan.

Arduino Berakhir:

Pengawal mikro: AT91SAM3X8E

Voltan Operasi: 3.3V

Voltan Input (disyorkan): 7-12V

Voltan Input (had): 6-16V

Pin I / O Digital: 54 (di antaranya 12 memberikan output PWM)

Pin Input Analog: 12

Pin Output Analog: 2 (DAC)

Jumlah arus keluaran DC pada semua talian I / O: 130 mA

Arus DC untuk Pin 3.3V: 800 mA

Arus DC untuk Pin 5V: 800 mA

Memori Kilat: 512 KB semua tersedia untuk aplikasi pengguna

SRAM: 96 KB (dua bank: 64KB dan 32KB)

Kelajuan Jam: 84 MHz

Panjang: 101.52 mm

Lebar: 53.3 mm

Berat: 36 g

STM NUCLEO-L476RG:

STM32L476RGT6 dalam pakej LQFP64

CPU ARM®32-bit Cortex®-M4

Pemecut masa nyata adaptif

(ART Accelerator ™) yang membolehkan pelaksanaan keadaan 0-tunggu dari memori Flash

Frekuensi CPU maksimum 80 MHz

VDD dari 1.71 V hingga 3.6 V

Flash 1 MB

128 KB SRAM

SPI (3)

I2C (3)

USART (3)

UART (2)

LPUART (1)

GPIO (51) dengan keupayaan gangguan luaran

Penginderaan kapasitif dengan 12 saluran

12-bit ADC (3) dengan 16 saluran

12-bit DAC dengan 2 saluran

FPU atau Unit Titik Terapung

* Saya nyatakan di sini FPU yang terpisah dari STM NUCLEO-L476RG, yang bermaksud bahawa cip tersebut membuat pengiraan trigonometri dengan kelajuan yang luar biasa. Ini tidak seperti Arduino Due, yang memerlukan pemproses genetik untuk melakukannya.

Langkah 4: Dhrystone

Batu Dhrystone
Batu Dhrystone
Batu Dhrystone
Batu Dhrystone

Dhrystone adalah program penanda aras komputer sintetik yang dikembangkan pada tahun 1984 oleh Reinhold P. Weicker, yang bertujuan untuk mewakili pengaturcaraan sistem (integer). Dhrystone menjadi wakil prestasi pemproses keseluruhan (CPU). Nama "Dhrystone" adalah tanda pada algoritma penanda aras yang berbeza yang disebut Whetstone. Ini adalah ukuran yang diambil dari beberapa operasi generik.

Program ini ada di sini untuk menyusun sesuatu di dalam mikrokontroler di Arduino. Hasil daripada dua ujian yang saya lakukan, satu dengan Dhrystone dan satu lagi dari video SpeedTest, adalah seperti berikut:

Hutang Arduino: US $ 37.00

Penanda Aras Dhrystone, Versi 2.1 (Bahasa: C)

Pelaksanaan bermula, 300, 000 berjalan melalui Dhrystone

Eksekusi berakhir

Mikrodetik untuk satu jangka masa melalui Dhrystone: 10.70

Batu Dhrys sesaat: 93, 431.43

Peringkat VAX MIPS = 53.18 DMIPS

Menjalankan ujian Fernandok

Jumlah masa: 2, 458 ms

  • Tidak mempunyai FPU
  • Perisian Dhrystone di Arduino

www.saanlima.com/download/dhry21a.zip

STM NUCLEO-L476RG: US $ 23.00

Penanda Aras Dhrystone, Versi 2.1 (Bahasa: C)

Pelaksanaan bermula, 300, 000 berjalan melalui Dhrystone

Pelaksanaan berakhir

Mikrodetik untuk satu jangka masa melalui Dhrystone: 9.63

Batu Dhrys sesaat: 103, 794.59

Peringkat VAX MIPS = 59.07 DMIPS

Menjalankan ujian Fernandok

Jumlah Masa: 869 ms 2.8x LEBIH CEPAT

  • PI hingga 40Mbit / s, USART 10Mbit / s
  • 2x DMA (14 saluran)
  • Hingga 80 MHz / 100 DMIPS dengan ART Accelerator

Langkah 5: STM32L432KC X Arduino Nano

STM32L432KC X Arduino Nano
STM32L432KC X Arduino Nano

Papan kiri adalah STM32L432KC, di mana STMicroelectronics meletakkan pinout Arduino Nano yang serupa dalam gambar di sebelah kanan.

Langkah 6: STM32L432KC

STM32L432KC
STM32L432KC

Arm® Cortex®-M4 32-bit berkuasa rendah

MCU + FPU, 100DMIPS, Flash hingga 256KB, SRAM 64KB, USB FS, analog, audio

Hingga 26 IO lebih pantas, lebih toleran hingga 5V

  • RTC dengan kalendar HW, penggera, dan penentukuran
  • Hingga 3 saluran pengesanan kapasitif
  • Pemasa 11x: Kawalan enjin canggih 1x16-bit

1x 32-bit dan 2x 16-bit tujuan umum, 2x 16-bit asas, 2x kuasa rendah 16-bit (tersedia dalam mod Berhenti), 2x pengawas, SysTick pemasa

Ingatan:

- Flash hingga 256 KB, perlindungan membaca kod proprietari

- SRAM 64 KB termasuk 16 KB dengan pemeriksaan pariti perkakasan

- Antara muka memori Quad SPI

Periferal analog kaya (bekalan bebas)

- 1x 12-bit ADC 5 Msps, sehingga 16 bit dengan pensampelan perkakasan, 200 μA / Msps

- 2 saluran output DAC 12-bit, penggunaan kuasa rendah

- Penguat operasi 1x dengan PGA terbina dalam

- 2x berbanding antara muka kuasa ultra rendah

- 1x UPS (antara muka audio bersiri)

- 2x I2C FM + (1 Mbit / s), SMBus / PMBus

- 3x USART (ISO 7816, LIN, IrDA, modem)

- 1x LPUART (Berhenti 2 bangun)

- 2x SPI (dan 1x SPI Quad)

- BOLEH (2.0B aktif)

- Master protokol wayar tunggal SWPMI I / F

- IRTIM (antara muka inframerah)

  • Pengawal DMA 14 saluran
  • Penjana Nombor Rawak

Langkah 7: Pasang Core Arduino untuk Kad STM32L4

Pasang Core Arduino untuk Kad STM32L4
Pasang Core Arduino untuk Kad STM32L4
  1. Pasang program ST-Link yang merakam
  2. Alamat Json
  3. Papan: Pengurus Kad
  4. Perpustakaan: Pengurus Perpustakaan

Langkah 8: Pasang ST-Link - Program yang Merakam

Pasang ST-Link - Program Yang Merakam
Pasang ST-Link - Program Yang Merakam

Muat turun fail di https://www.st.com/en/development-tools/stsw-link0…. Cukup daftar, muat turun dan pasang peranti.

Langkah 9: Alamat Json

Alamat Json
Alamat Json

Pada hartanah, sertakan alamat berikut:

github.com/stm32duino/BoardManagerFiles/ra…

Langkah 10: Papan: Pengurus Lembaga

Papan: Pengurus Lembaga
Papan: Pengurus Lembaga

Dalam Pengurus Papan Arduino, pasang STM32 Core, kira-kira 40MB.

Langkah 11: Perpustakaan: Pengurus Perpustakaan

Perpustakaan: Pengurus Perpustakaan
Perpustakaan: Pengurus Perpustakaan

Akhirnya, pasangkan perpustakaan.

Saya secara peribadi menyukai kumpulan STM32duino.com, yang mempunyai beberapa contoh, beberapa yang saya pasangkan. Saya juga memuat turun FreeRTOS, yang sangat saya gemari. Saya dapati dengan pantas dan boleh dipercayai. Saya juga memasang (tetapi belum menguji) LRWAN. Saya akan memberitahu anda sama ada ia baik atau tidak.

Langkah 12: Muat turun PDF

PDF

Disyorkan: