Talaan ng mga Nilalaman:

Ang Hindi Kapani-paniwala STM32 L4 !: 12 Hakbang
Ang Hindi Kapani-paniwala STM32 L4 !: 12 Hakbang

Video: Ang Hindi Kapani-paniwala STM32 L4 !: 12 Hakbang

Video: Ang Hindi Kapani-paniwala STM32 L4 !: 12 Hakbang
Video: Учим цвета Разноцветные яйца на ферме Miroshka Tv 2024, Nobyembre
Anonim
Image
Image
STM32F746G DISCOVERY
STM32F746G DISCOVERY

Gusto kong simulan ang artikulong ito na nagpapaliwanag na ang titik na L (ng L4) ay nangangahulugang Mababa (o, karaniwang, Ultra Mababang Kapangyarihan). Sa gayon, gumugugol ito ng kaunting enerhiya at ipinapakita kung bakit ang STM32 na ito ay hindi kapani-paniwala! Gumagastos ito ng mga microamp at mayroong isang system sa loob na maaaring makilala ang gastos ng bawat bahagi ng maliit na tilad. Pinapayagan nito ang isang napakahusay na pamamahala ng enerhiya, at may mataas na pagganap.

Pinag-usapan ko na ang tungkol sa microcontroller na ito sa video, "Ang pinakamadaling paraan upang mag-program ng isang microcontroller!" Sa video, ipinakita ko kung paano i-program ang STM32 L4 na may MBED. Ngunit habang nagsasaliksik pa tungkol dito, natuklasan ko ang isang bagay na hindi isiwalat ng tagagawa STMicroelectronics. Ipinatupad nito ang Core Arduino sa maliit na tilad, na nagbibigay-daan sa programa sa pamamagitan ng Arduino IDE.

Sa imaheng ito, mayroon kaming dalawang bersyon ng L4. Ang STM32L432KC ay magkapareho sa Arduino Nano at ng STM32L476RG, na may katumbas na mga IO sa Arduino Uno. Kaya, habang nagtatrabaho kasama ang dalawang bersyon ng malakas na microcontroller na ito, ipapakita ko sa iyo kung paano i-install ang Arduino Core sa pamilya STM32. Gayundin, ipapaliwanag ko ang mga pangunahing katangian ng STM32 Kits.

Hakbang 1: Mga Plato Na May Core Arduino

Inilagay ko dito ang isang listahan tungkol sa pagkakaiba-iba. Gayunpaman, gagana kami sa STM32L432KC at sa STM32L476RG.

STM32F0

  • Nucleo F030R8
  • Nucleo F091RC
  • 32F0308DISCOVERY

STM32F1

  • BluePill F103C8 (Pangunahing suporta, walang USB)
  • MapleMini F103CB (Pangunahing suporta, walang 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

STM32F746G-TUKLASIN

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

Hakbang 2: STM32F746G DISCOVERY

Upang ilarawan lamang, ipinapakita ko ang mga detalye ng isang STM32F746G DISCOVERY, na isinasaalang-alang ko isang hayop. Inorder ko na ang chip na ito, at inaasahan kong pag-usapan ito sa lalong madaling panahon.

Mga Katangian:

STM32F746NGH6 microcontroller na nagtatampok ng 1 Mbytes ng Flash memory at 340 Kbytes ng RAM sa isang BGA216 na pakete

  • Sa-board na ST-LINK / V2-1 na sumusuporta sa mga kakayahan sa muling pagpapabilang sa USB
  • Pinagana ang Mbed (mbed.org)
  • Mga pagpapaandar ng USB: virtual COM port, mass storage, at debug port
  • 4.3-pulgada 480x272 na kulay LCD-TFT na may capacitive touch screen
  • Konektor ng camera
  • SAI audio codec
  • Pumila at pumila sa linya ng audio
  • Mga output ng speaker ng stereo
  • Dalawang mikropono ng ST MEMS
  • Konektor ng input ng SPDIF RCA
  • Dalawang pushbutton (gumagamit at i-reset)
  • 128-Mbit Quad-SPI Flash memory
  • 128-Mbit SDRAM (maa-access ang 64 Mbits)
  • Konektor para sa microSD card
  • Konektor ng anak na babae ng RF-EEPROM
  • USB OTG HS na may mga konektor ng Micro-AB
  • USB OTG FS na may mga konektor ng Micro-AB
  • Sumusunod ang konektor ng Ethernet sa IEEE-802.3-2002
  • Limang mga pagpipilian sa supply ng kuryente:

- ST LINK / V2-1

- Konektor ng USB FS

- Konektor ng USB HS

- VIN mula sa Arduino konektor

- Panlabas na 5 V mula sa konektor

Mga output ng output ng power supply na panlabas:

- 3.3 V o 5 V

Mga konektor ng Arduino Uno V3

Hakbang 3: Arduino Dahil X STM NUCLEO-L476RG

Arduino Dahil X STM NUCLEO-L476RG
Arduino Dahil X STM NUCLEO-L476RG

Narito ang isang paghahambing sa Arduino Dahil, na isang ARM Cortex-M3. Ginamit ko ang modelong ito sa mga video: Nema 23 Stepper Motor na may Driver TB6600 na may Arduino Dahil, at SpeedTest: Arduinos - ESP32 / 8266s - STM32, kasama ang STM NUCLEO-L476RG, na kung saan ay isang ARM Cortex-M4 Ultra Low Power, at nasa ang imahe sa kanang bahagi.

Dapat Arduino:

Microcontroller: AT91SAM3X8E

Operating Boltahe: 3.3V

Input Boltahe (inirerekumenda): 7-12V

Input Boltahe (mga limitasyon): 6-16V

Mga Digital I / O Pins: 54 (kung saan 12 ang nagbibigay ng output ng PWM)

Mga Analog Input Pins: 12

Mga Anput Output Pins: 2 (DAC)

Kabuuang Kasalukuyang Output ng DC sa lahat ng mga linya ng I / O: 130 mA

Kasalukuyang DC para sa 3.3V Pin: 800 mA

Kasalukuyang DC para sa 5V Pin: 800 mA

Memory ng Flash: 512 KB lahat magagamit para sa mga aplikasyon ng gumagamit

SRAM: 96 KB (dalawang bangko: 64KB at 32KB)

Bilis ng Orasan: 84 MHz

Haba: 101.52 mm

Lapad: 53.3 mm

Timbang: 36 g

STM NUCLEO-L476RG:

STM32L476RGT6 sa LQFP64 na pakete

ARM®32-bit Cortex®-M4 CPU

Adaptive real-time na accelerator

(ART Accelerator ™) na nagpapahintulot sa 0-wait na pagpapatupad ng estado mula sa memorya ng Flash

80 MHz max na dalas ng CPU

VDD mula 1.71 V hanggang 3.6 V

1 MB Flash

128 KB SRAM

SPI (3)

I2C (3)

USART (3)

UART (2)

LPUART (1)

GPIO (51) na may panlabas na kakayahang magambala

Capacitive sensing na may 12 channel

12-bit ADC (3) na may 16 na channel

12-bit DAC na may 2 mga channel

FPU o Floating Point Unit

* I-highlight ko dito ang magkahiwalay na FPU ng STM NUCLEO-L476RG, na nangangahulugang ang maliit na tilad ay gumagawa ng mga kalkulasyon na trigonometric na may kamangha-manghang bilis. Hindi ito katulad ng Arduino Due, na nangangailangan ng isang genetic processor upang magawa iyon.

Hakbang 4: Dhrystone

Dhrystone
Dhrystone
Dhrystone
Dhrystone

Ang Dhrystone ay isang gawa ng tao benchmark program na binuo noong 1984 ni Reinhold P. Weicker, na inilaan upang maging kinatawan ng (integer) system program. Ang Dhrystone ay naging isang kinatawan ng pangkalahatang pagganap ng processor (CPU). Ang pangalang "Dhrystone" ay isang pun sa ibang benchmark algorithm na tinatawag na Whetstone. Ito ay isang hakbang na kinuha mula sa ilang mga generic na operasyon.

Narito ang program na ito upang mag-ipon ng isang bagay sa loob ng mga microcontroller na ito sa Arduino. At ang resulta ng dalawang pagsubok na ginawa ko, ang isa kay Dhrystone at isa pa mula sa video ng SpeedTest, ay ang mga sumusunod:

Takdang Arduino: US $ 37.00

Dhrystone Benchmark, Bersyon 2.1 (Wika: C)

Nagsisimula ang pagpapatupad, 300, 000 ay tumatakbo sa Dhrystone

Nagtatapos ang execuion

Ang mga microsecond para sa isang run sa Dhrystone: 10.70

Dhrystones bawat Segundo: 93, 431.43

Rating ng VAX MIPS = 53.18 DMIPS

Pagpapatakbo ng pagsubok na si Fernandok

Kabuuang oras: 2, 458 ms

  • Walang FPU
  • Dhrystone software sa Arduino

www.saanlima.com/download/dhry21a.zip

STM NUCLEO-L476RG: US $ 23.00

Dhrystone Benchmark, Bersyon 2.1 (Wika: C)

Nagsisimula ang pagpapatupad, 300, 000 ay tumatakbo sa Dhrystone

Natapos ang pagpapatupad

Ang mga microsecond para sa isang run sa Dhrystone: 9.63

Dhrystones bawat Segundo: 103, 794.59

Rating ng VAX MIPS = 59.07 DMIPS

Pagpapatakbo ng pagsubok na si Fernandok

Kabuuang Oras: 869 ms 2.8x FASTER

  • PI hanggang sa 40Mbit / s, USART 10Mbit / s
  • 2x DMA (14 na mga channel)
  • Hanggang sa 80 MHz / 100 DMIPS na may ART Accelerator

Hakbang 5: STM32L432KC X Arduino Nano

STM32L432KC X Arduino Nano
STM32L432KC X Arduino Nano

Ang kaliwang board ay ang STM32L432KC, kung saan inilagay ng STMicroelectronics ang magkatulad na Arduino Nano pinout sa larawan sa kanan.

Hakbang 6: STM32L432KC

STM32L432KC
STM32L432KC

Ultra-low-power na Arm® Cortex®-M4 32-bit

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

Hanggang sa 26 IO mas mabilis, mas mapagparaya sa 5V

  • Ang RTC na may HW na kalendaryo, mga alarma, at pagkakalibrate
  • Hanggang sa 3 mga capacitive detection channel
  • 11x Timers: 1x16-bit advanced na kontrol sa engine

1x 32-bit at 2x 16-bit pangkalahatang layunin, 2x 16-bit basic, 2x low-power 16-bit timer (magagamit sa Stop mode), 2x watchdogs, SysTick timer

Memorya:

- Hanggang sa 256 KB Flash, proteksyon sa pagbabasa ng pagmamay-ari ng code

- 64 KB SRAM kasama ang 16 KB na may hardware parity check

- Quad SPI memory interface

Mayamang mga analog peripheral (independiyenteng supply)

- 1x 12-bit ADC 5 Msps, hanggang sa 16 na bit na may labis na pagsingit sa hardware, 200 μA / Msps

- 2 mga channel ng 12-bit na output ng DAC, mababang paggamit ng kuryente

- 1x pagpapatakbo na amplifier na may built-in na PGA

- 2x kumpara sa mga ultra-mababang kapangyarihan na interface

- 1x UPS (serial audio interface)

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

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

- 1x LPUART (Ihinto ang 2 paggising)

- 2x SPI (at 1x SPI Quad)

- MAAARI (2.0B aktibo)

- Single wire protocol master SWPMI I / F

- IRTIM (infrared interface)

  • 14-channel DMA controller
  • Random Number Generator

Hakbang 7: I-install ang Core Arduino para sa STM32L4 Card

I-install ang Core Arduino para sa STM32L4 Card
I-install ang Core Arduino para sa STM32L4 Card
  1. I-install ang programa ng ST-Link na nagtatala
  2. Json Address
  3. Mga Lupon: Tagapamahala ng Card
  4. Mga Aklatan: Tagapamahala ng Library

Hakbang 8: I-install ang ST-Link - Program Na Itinatala

I-install ang ST-Link - Program Na Nagtatala
I-install ang ST-Link - Program Na Nagtatala

I-download ang file sa https://www.st.com/en/development-tools/stsw-link0…. Magrehistro lamang, mag-download, at i-install ang aparato.

Hakbang 9: Address Json

Address Json
Address Json

Sa mga pag-aari, isama ang sumusunod na address:

github.com/stm32duino/BoardManagerFiles/ra…

Hakbang 10: Mga Lupon: Tagapamahala ng Lupon

Mga Lupon: Tagapamahala ng Lupon
Mga Lupon: Tagapamahala ng Lupon

Sa Arduino Board Manager, i-install ang STM32 Core, na halos 40MB.

Hakbang 11: Mga Aklatan: Tagapamahala ng Library

Mga Aklatan: Tagapamahala ng Library
Mga Aklatan: Tagapamahala ng Library

Panghuli, i-install ang mga aklatan.

Personal kong nagustuhan ang pangkat na STM32duino.com, na mayroong maraming mga halimbawa, na ang ilan ay na-install ko. Nag-download din ako ng isang FreeRTOS, na labis kong nagustuhan. Natagpuan ko ito nang mabilis at maaasahan. Nag-install din ako (ngunit hindi pa nasubukan) LRWAN. Malapit kong sabihin sa iyo kung ito ay mabuti o hindi.

Hakbang 12: Mag-download ng PDF

PDF

Inirerekumendang: