Sadržaj:

Nevjerovatni STM32 L4!: 12 koraka
Nevjerovatni STM32 L4!: 12 koraka

Video: Nevjerovatni STM32 L4!: 12 koraka

Video: Nevjerovatni STM32 L4!: 12 koraka
Video: 12 Самых Невероятных Артефактов, Которым Нет Объяснения 2024, Novembar
Anonim
Image
Image
STM32F746G OTKRIĆE
STM32F746G OTKRIĆE

Želim započeti ovaj članak objašnjavajući da ovo slovo L (od L4) znači nisku (ili, u osnovi, ultra nisku snagu). Dakle, troši malo energije i pokazuje zašto je ovaj STM32 nevjerojatan! Potroši mikropojačala i unutra ima sistem koji može identificirati troškove svakog dijela čipa. Ovo omogućava vrlo efikasno upravljanje energijom i sa visokim performansama.

Već sam govorio o ovom mikrokontroleru u videu, "Najjednostavniji način programiranja mikrokontrolera!" U videu sam pokazao kako programirati STM32 L4 sa MBED -om. No, istražujući više o tome, otkrio sam nešto što proizvođač STMicroelectronics ne otkriva. Implementirao je Core Arduino u čip, što omogućava programiranje kroz Arduino IDE.

Na ovoj slici imamo dvije verzije L4. STM32L432KC identičan je Arduino Nano i STM32L476RG, koji imaju ekvivalentne IO u odnosu na Arduino Uno. Dakle, dok radim s dvije verzije ovog moćnog mikrokontrolera, pokazat ću vam kako instalirati Arduino Core u porodicu STM32. Također ću objasniti glavne karakteristike kompleta STM32.

Korak 1: Ploče s jezgrom Arduino

Ovdje sam stavio popis raznolikosti. Međutim, mi ćemo raditi sa STM32L432KC i STM32L476RG.

STM32F0

  • Nucleo F030R8
  • Nucleo F091RC
  • 32F0308DISCOVERY

STM32F1

  • BluePill F103C8 (Osnovna podrška, bez USB -a)
  • MapleMini F103CB (Osnovna podrška, bez USB -a)
  • 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

STM32F746G-OTKRIĆE

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

Korak 2: STM32F746G OTKRIVANJE

Samo za ilustraciju, pokazujem detalje STM32F746G OTKRIVENJA, koje smatram zvijeri. Već sam naručio ovaj čip i nadam se da ću uskoro pričati o tome.

Karakteristike:

STM32F746NGH6 mikrokontroler sa 1 Mbajta Flash memorije i 340 Kbajta RAM -a u BGA216 paketu

  • Ugrađeni ST-LINK / V2-1 podržava USB ponovno nabrajanje
  • Omogućen Mbed (mbed.org)
  • USB funkcije: virtualni COM port, masovna memorija i port za otklanjanje grešaka
  • 4,3-inčni LCD-TFT u boji 480x272 u boji sa kapacitivnim ekranom osetljivim na dodir
  • Konektor za kameru
  • SAI audio kodek
  • Ulaz za audio i linijski izlaz
  • Izlazi za stereo zvučnike
  • Dva ST MEMS mikrofona
  • SPDIF RCA ulazni konektor
  • Dva tastera (korisnički i resetovanje)
  • 128-Mbit Quad-SPI Flash memorija
  • SDRAM od 128 Mbit (dostupno 64 Mbita)
  • Konektor za microSD karticu
  • Konektor za matičnu ploču RF-EEPROM
  • USB OTG HS sa priključcima Micro-AB
  • USB OTG FS sa Micro-AB konektorima
  • Ethernet konektor u skladu sa IEEE-802.3-2002
  • Pet opcija napajanja:

- ST LINK / V2-1

- USB FS konektor

- USB HS konektor

- VIN iz Arduino konektora

- Eksterni 5 V iz konektora

Izlaz napajanja za vanjske aplikacije:

- 3,3 V ili 5 V

Arduino Uno V3 konektori

Korak 3: Arduino Due X STM NUCLEO-L476RG

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

Evo usporedbe s Arduinom Dueom, koji je ARM Cortex-M3. Koristio sam ovaj model u video zapisima: Nema 23 koračni motor sa upravljačkim programom TB6600 sa Arduino Dueom i SpeedTest: Arduinos - ESP32 / 8266s - STM32, sa STM NUCLEO -L476RG, koji je ARM Cortex -M4 ultra niske snage, a nalazi se u slika sa desne strane.

Arduino Due:

Mikrokontroler: AT91SAM3X8E

Radni napon: 3.3V

Ulazni napon (preporučeno): 7-12V

Ulazni napon (ograničenja): 6-16V

Digitalni I / O pinovi: 54 (od kojih 12 pruža PWM izlaz)

Igle za analogni ulaz: 12

Analogni izlazi: 2 (DAC)

Ukupna DC izlazna struja na svim I / O vodovima: 130 mA

DC struja za 3.3V pin: 800 mA

DC struja za pin 5V: 800 mA

Flash memorija: 512 KB sve dostupno za korisničke aplikacije

SRAM: 96 KB (dvije banke: 64KB i 32KB)

Takt: 84 MHz

Dužina: 101,52 mm

Širina: 53,3 mm

Težina: 36 g

STM NUCLEO-L476RG:

STM32L476RGT6 u paketu LQFP64

ARM®32-bitni Cortex®-M4 CPU

Prilagodljivi akcelerator u stvarnom vremenu

(ART Accelerator ™) omogućava izvršavanje stanja čekanja od 0 čekanja iz Flash memorije

Maksimalna frekvencija procesora 80 MHz

VDD od 1,71 V do 3,6 V

1 MB Flash

128 KB SRAM

SPI (3)

I2C (3)

USART (3)

UART (2)

LPUART (1)

GPIO (51) s mogućnošću vanjskog prekida

Kapacitivno otkrivanje sa 12 kanala

12-bitni ADC (3) sa 16 kanala

12-bitni DAC sa 2 kanala

FPU ili jedinica s pomičnim zarezom

* Ovdje ističem ove zasebne FPU jedinice STM NUCLEO-L476RG, što znači da čip vrši trigonometrijske proračune nevjerojatnom brzinom. Ovo nije za razliku od Arduino Due, koji za to treba genetski procesor.

Korak 4: Dhrystone

Dhrystone
Dhrystone
Dhrystone
Dhrystone

Dhrystone je sintetički kompjuterski referentni program koji je 1984. godine razvio Reinhold P. Weicker, a namijenjen je reprezentaciji (cjelobrojnog) sistemskog programiranja. Dhrystone je postao predstavnik ukupnih performansi procesora (CPU). Naziv "Dhrystone" je igra riječi na drugom referentnom algoritmu koji se zove Whetstone. Ovo je mjera preuzeta iz nekih generičkih operacija.

Ovaj program je ovdje da sastavi nešto unutar ovih mikrokontrolera u Arduinu. A rezultat dva testa koje sam uradio, jednog sa Dhrystone -om i drugog iz videa SpeedTest -a, su sljedeći:

Arduino Due: 37,00 US $

Dhrystone Benchmark, verzija 2.1 (jezik: C)

Izvođenje počinje, 300 000 prolazi kroz Dhrystone

Izvršenje se završava

Mikrosekunde za jednu vožnju kroz Dhrystone: 10.70

Dhrystones u sekundi: 93, 431.43

VAX MIPS ocjena = 53,18 DMIPS

Trčanje Fernandok

Ukupno vrijeme: 2, 458 ms

  • Nema FPU
  • Dhrystone softver na Arduinu

www.saanlima.com/download/dhry21a.zip

STM NUCLEO-L476RG: 23,00 US $

Dhrystone Benchmark, verzija 2.1 (jezik: C)

Izvođenje počinje, 300 000 prolazi kroz Dhrystone

Izvršenje se završava

Mikrosekunde za jednu vožnju kroz Dhrystone: 9,63

Dhrystones u sekundi: 103, 794.59

VAX MIPS ocjena = 59,07 DMIPS

Trčanje Fernandok

Ukupno vrijeme: 869 ms 2.8x BRŽE

  • PI do 40Mbit / s, USART 10Mbit / s
  • 2x DMA (14 kanala)
  • Do 80 MHz / 100 DMIPS sa ART akceleratorom

Korak 5: STM32L432KC X Arduino Nano

STM32L432KC X Arduino Nano
STM32L432KC X Arduino Nano

Lijeva ploča je STM32L432KC, u koju je STMicroelectronics postavila identičan ispis Arduino Nano na slici s desne strane.

Korak 6: STM32L432KC

STM32L432KC
STM32L432KC

Arm® Cortex®-M4 32-bitne iznimno male snage

MCU + FPU, 100DMIPS, do 256KB Flash, 64KB SRAM, USB FS, analogni, audio

Do 26 IO brži, tolerantniji na 5V

  • RTC sa kalendarom HW, alarmima i kalibracijom
  • Do 3 kapacitivna kanala detekcije
  • 11x Tajmeri: 1x16-bitna napredna kontrola motora

1x 32-bitni i 2x 16-bitni opći namjeni, 2x 16-bitni osnovni, 2x 16-bitni tajmeri male snage (dostupni u Stop modu), 2x nadzorni psi, SysTick tajmer

Memorija:

- Do 256 KB Flash, zaštićena zaštita od čitanja koda

- 64 KB SRAM -a, uključujući 16 KB sa provjerom pariteta hardvera

- Quad SPI memorijsko sučelje

Bogata analogna periferija (neovisno napajanje)

- 1x 12-bitni ADC 5 Msps, do 16 bita sa hardverskim prekomernim uzorkovanjem, 200 μA / Msps

- 2 kanala 12-bitnog DAC izlaza, niska potrošnja energije

- 1x operativno pojačalo sa ugrađenim PGA-om

- 2x u usporedbi sa sučeljima ultra niske snage

- 1x UPS (serijski audio interfejs)

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

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

- 1x LPUART (Stop 2 buđenje)

- 2x SPI (i 1x SPI Quad)

- CAN (2.0B aktivno)

- Jednožični master protokol SWPMI I / F

- IRTIM (infracrveno sučelje)

  • 14-kanalni DMA kontroler
  • Generator slučajnih brojeva

Korak 7: Instalirajte Core Arduino za kartice STM32L4

Instalirajte Core Arduino za kartice STM32L4
Instalirajte Core Arduino za kartice STM32L4
  1. Instalirajte program ST-Link koji snima
  2. Json adresa
  3. Odbori: Card Manager
  4. Biblioteke: Upravitelj biblioteke

Korak 8: Instalirajte ST -Link - program koji snima

Instalirajte ST -Link - program koji snima
Instalirajte ST -Link - program koji snima

Preuzmite datoteku na https://www.st.com/en/development-tools/stsw-link0…. Samo registrirajte, preuzmite i instalirajte uređaj.

Korak 9: Adresa Json

Adresa Json
Adresa Json

O nekretninama uključite sljedeću adresu:

github.com/stm32duino/BoardManagerFiles/ra…

Korak 10: Odbori: Upravitelj odbora

Odbori: Upravni odbor
Odbori: Upravni odbor

U Arduino Board Manageru instalirajte STM32 Core, koje iznosi oko 40 MB.

Korak 11: Biblioteke: Upravitelj biblioteke

Biblioteke: Upravitelj biblioteke
Biblioteke: Upravitelj biblioteke

Na kraju, instalirajte biblioteke.

Meni se osobno svidjela grupa STM32duino.com, koja ima nekoliko primjera, od kojih sam neke instalirao. Takođe sam preuzeo FreeRTOS koji mi se jako dopao. Otkrio sam da je brz i pouzdan. Takođe sam instalirao (ali još nisam testirao) LRWAN. Uskoro ću vam reći je li dobro ili nije.

Korak 12: Preuzmite PDF

PDF

Preporučuje se: