Բովանդակություն:

Անհավանական STM32 L4 !: 12 քայլ
Անհավանական STM32 L4 !: 12 քայլ

Video: Անհավանական STM32 L4 !: 12 քայլ

Video: Անհավանական STM32 L4 !: 12 քայլ
Video: 10 անհավանական փաստ Անտարկտիդայի մասին, որոնք դժվար թե իմանաք 2024, Հուլիսի
Anonim
Image
Image
STM32F746G ԲԱISԱՀԱՅՏՈՄ
STM32F746G ԲԱISԱՀԱՅՏՈՄ

Ես ուզում եմ սկսել այս հոդվածը ՝ բացատրելով, որ այս L տառը (L4- ի) նշանակում է Lowածր (կամ, հիմնականում, ծայրահեղ ցածր հզորություն): Այսպիսով, այն քիչ էներգիա է ծախսում և ցույց է տալիս, թե ինչու է այս STM32- ը անհավանական: Այն ծախսում է միկրոամպեր և ներսում ունի համակարգ, որը կարող է որոշել չիպի յուրաքանչյուր մասի ծախսերը: Սա թույլ է տալիս էներգիայի շատ արդյունավետ կառավարում և բարձր կատարողականություն:

Ես արդեն խոսեցի այս միկրոկառավարիչի մասին տեսանյութում ՝ «Միկրոկոնտրոլերը ծրագրավորելու ամենահեշտ ձևը»: Տեսանյութում ես ցույց տվեցի, թե ինչպես ծրագրավորել STM32 L4- ը MBED- ով: Բայց դրա մասին ավելի շատ ուսումնասիրելիս ես հայտնաբերեցի մի բան, որը STMicroelectronics արտադրողը չի բացահայտում: Այն իրագործեց Core Arduino- ն չիպի մեջ, որը հնարավորություն է տալիս ծրագրավորել Arduino IDE- ի միջոցով:

Այս պատկերում մենք ունենք L4- ի երկու տարբերակ: STM32L432KC- ն նույնական է Arduino Nano- ի և STM32L476RG- ի հետ, որոնք ունեն Arduino Uno- ին համարժեք IO: Այսպիսով, այս հզոր միկրոկառավարիչի երկու տարբերակների հետ աշխատելիս ես ձեզ ցույց կտամ, թե ինչպես տեղադրել Arduino Core- ը STM32 ընտանիքում: Բացի այդ, ես կբացատրեմ STM32 հավաքածուների հիմնական բնութագրերը:

Քայլ 1. Ափսեներ ՝ հիմնական Arduino- ով

Ես այստեղ տեղադրեցի բազմազանության մասին ցուցակ: Այնուամենայնիվ, մենք պատրաստվում ենք աշխատել STM32L432KC- ի և STM32L476RG- ի հետ:

STM32F0

  • Nucleo F030R8
  • Nucleo F091RC
  • 32F0308 ԲԱCOԱՀԱՅՏՈՄ

STM32F1

  • BluePill F103C8 (հիմնական աջակցություն, ոչ USB)
  • MapleMini F103CB (հիմնական աջակցություն, ոչ 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- ԲԱCOԱՀԱՅՏՈՄ

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

Քայլ 2. STM32F746G ԲԱCOԱՀԱՅՏՈՄ

Պարզապես լուսաբանելու համար ես ցույց եմ տալիս STM32F746G DISCOVERY- ի մանրամասները, որը ես գազան եմ համարում: Ես արդեն պատվիրել եմ այս չիպը, և հույս ունեմ, որ շուտով կխոսեմ դրա մասին:

Բնութագրերը.

STM32F746NGH6 միկրոկառավարիչ, որը պարունակում է 1 Մբայթ ֆլեշ հիշողություն և 340 Կբայթ օպերատիվ հիշողություն BGA216 փաթեթում

  • Ինքնաթիռի ST-LINK / V2-1 աջակցող USB վերահաշվարկի հնարավորությունները
  • Mbed- ով միացված (mbed.org)
  • USB գործառույթներ. Վիրտուալ COM պորտ, զանգվածային պահեստավորում և կարգաբերման նավահանգիստ
  • 4.3 դյույմանոց 480x272 գունավոր LCD-TFT հզորությամբ սենսորային էկրանով
  • Տեսախցիկի միակցիչ
  • SAI աուդիո կոդեկ
  • Աուդիո գիծ ներս և գծի ելք
  • Ստերեո բարձրախոսների ելքեր
  • Երկու ST MEMS խոսափող
  • SPDIF RCA մուտքային միակցիչ
  • Երկու կոճակ (օգտվող և վերականգնում)
  • 128 Մբիթ Quad-SPI Ֆլեշ հիշողություն
  • 128 Մբիթ SDRAM (հասանելի է 64 Մբիթ)
  • Միակցիչ microSD քարտի համար
  • RF-EEPROM դստեր միակցիչ
  • USB OTG HS Micro-AB միակցիչներով
  • USB OTG FS Micro-AB միակցիչներով
  • Ethernet միակցիչ, որը համապատասխանում է IEEE-802.3-2002-ին
  • Էներգամատակարարման հինգ տարբերակ.

- ST LINK / V2-1

- USB FS միակցիչ

- USB HS միակցիչ

- VIN Arduino միակցիչից

- Արտաքին 5 Վ միակցիչից

Արտաքին էներգիայի մատակարարման արտաքին ծրագրեր

- 3.3 Վ կամ 5 Վ

Arduino Uno V3 միակցիչներ

Քայլ 3. Arduino Due X STM NUCLEO-L476RG

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

Ահա համեմատություն Arduino Due- ի հետ, որը ARM Cortex-M3 է: Ես օգտագործել եմ այս մոդելը տեսանյութերում. Nema 23 Stepper Motor with Driver TB6600 with Arduino Due, and SpeedTest: Arduinos - ESP32 / 8266s - STM32, with STM NUCLEO -L476RG, որը ARM Cortex -M4 Ultra Low Power, and is in պատկերը աջ կողմում:

Arduino Շնորհիվ:

Միկրոկոնտրոլեր ՝ AT91SAM3X8E

Գործող լարումը `3.3 Վ

Մուտքային լարման (խորհուրդ է տրվում) `7-12V

Մուտքային լարման (սահմանափակումներ) `6-16 Վ

Թվային մուտքի / ելքի կապում. 54 (որից 12 -ը ապահովում են PWM ելք)

Անալոգային մուտքագրման կապում. 12

Անալոգային ելքային կապում `2 (DAC)

Ընդհանուր DC ելքային հոսանք բոլոր I / O գծերի վրա `130 մԱ

DC ընթացիկ 3.3V Pin- ի համար `800 mA

DC հոսանք 5V Pin- ի համար `800 mA

Ֆլեշ հիշողություն `512 ԿԲ, բոլորը հասանելի են օգտագործողի ծրագրերի համար

SRAM ՝ 96 ԿԲ (երկու բանկ ՝ 64 ԿԲ և 32 ԿԲ)

Clամացույցի արագություն `84 ՄՀց

Երկարություն ՝ 101,52 մմ

Լայնությունը `53,3 մմ

Քաշը `36 գ

STM NUCLEO-L476RG:

STM32L476RGT6 LQFP64 փաթեթում

ARM®32-բիթ Cortex®-M4 պրոցեսոր

Իրական ժամանակի հարմարվողական արագացուցիչ

(ART արագացուցիչ ™), որը թույլ է տալիս 0-սպասման կարգի կատարել Flash հիշողությունից

Պրոցեսորի առավելագույն հաճախականությունը 80 ՄՀց

VDD 1.71 Վ -ից մինչև 3.6 Վ

1 ՄԲ ֆլեշ

128 ԿԲ SRAM

SPI (3)

I2C (3)

USART (3)

UART (2)

LPUART (1)

GPIO (51) արտաքին ընդհատման հնարավորությամբ

Capacitive sensing 12 ալիքով

12-բիթանոց ADC (3) ՝ 16 ալիքով

12-բիթանոց DAC ՝ 2 ալիքով

FPU կամ լողացող կետի միավոր

* Այստեղ ես ընդգծում եմ STM NUCLEO-L476RG- ի այս առանձին FPU- ն, ինչը նշանակում է, որ չիպը զարմանալի արագությամբ կատարում է եռանկյունաչափական հաշվարկներ: Սա ի տարբերություն Arduino Due- ի, որին դա անելու համար անհրաժեշտ է գենետիկ պրոցեսոր:

Քայլ 4: Dhrystone

Դրիսթոն
Դրիսթոն
Դրիսթոն
Դրիսթոն

Dhrystone- ը սինթետիկ համակարգչային հենանիշային ծրագիր է, որը մշակվել է 1984 թվականին Reinhold P. Weicker- ի կողմից, որը նախատեսված է (ամբողջական) համակարգային ծրագրավորման ներկայացուցչի համար: Dhrystone- ը դարձավ պրոցեսորի ընդհանուր աշխատանքի (CPU) ներկայացուցիչ: «Dhrystone» անվանումը բառախաղ է Whetstone կոչվող տարբեր նշաձողային ալգորիթմի վրա: Սա որոշ ընդհանուր գործողություններից վերցված միջոց է:

Այս ծրագիրը այստեղ է ՝ Arduino- ի այս միկրոկոնտրոլերների ներսում ինչ -որ բան կազմելու համար: Եվ իմ կատարած երկու թեստերի արդյունքը ՝ մեկը Dhrystone- ով և մյուսը SpeedTest տեսանյութից, հետևյալն են.

Arduino Dueամկետը ՝ 37,00 ԱՄՆ դոլար

Dhrystone Benchmark, տարբերակ 2.1 (լեզու ՝ C)

Կատարումը սկսվում է, 300,000 անցնում Dhrystone- ով

Կատարումն ավարտվում է

Միկրո վայրկյան Dhrystone- ով մեկ վազքի համար `10.70

Dhrystones մեկ վայրկյանում `93, 431.43

VAX MIPS վարկանիշ = 53.18 DMIPS

Վազքի փորձարկում Ֆերնանդոկ

Ընդհանուր ժամանակը ՝ 2, 458 ms

  • Չունի FPU
  • Dhrystone ծրագրակազմ Arduino- ում

www.saanlima.com/download/dhry21a.zip

STM NUCLEO-L476RG ՝ 23,00 ԱՄՆ դոլար

Dhrystone Benchmark, տարբերակ 2.1 (լեզու ՝ C)

Կատարումը սկսվում է, 300,000 անցնում Dhrystone- ով

Կատարումն ավարտվում է

Միկրո վայրկյան Dhrystone- ով մեկ վազքի համար `9.63

Dhrystones մեկ վայրկյանում `103, 794.59

VAX MIPS վարկանիշ = 59.07 DMIPS

Վազքի թեստ Ֆերնանդոկ

Ընդհանուր ժամանակը ՝ 869 ms 2.8x ավելի արագ

  • PI մինչև 40 Մբիթ / վրկ, USART 10 Մբիթ / վրկ
  • 2x DMA (14 ալիք)
  • Մինչև 80 ՄՀց / 100 DMIPS ART արագացուցիչով

Քայլ 5. STM32L432KC X Arduino Nano

STM32L432KC X Arduino Nano
STM32L432KC X Arduino Nano

Ձախ տախտակը STM32L432KC- ն է, որի մեջ STMicroelectronics- ը տեղադրել է Arduino Nano- ի նույնական պինուտը նկարի աջ կողմում:

Քայլ 6: STM32L432KC

STM32L432KC
STM32L432KC

®այրահեղ ցածր էներգիայի Arm® Cortex®-M4 32-բիթանոց

MCU + FPU, 100DMIPS, մինչև 256KB Flash, 64KB SRAM, USB FS, անալոգային, աուդիո

Մինչև 26 IO ավելի արագ, ավելի հանդուրժող 5V- ի նկատմամբ

  • RTC HW օրացույցով, ահազանգերով և չափագրմամբ
  • Մինչև 3 capacitive հայտնաբերման ալիք
  • 11x ժամաչափ. 1x16-բիթանոց շարժիչի առաջադեմ կառավարում

1x 32-բիթ և 2x 16-բիթ ընդհանուր նշանակություն, 2x 16-բիթ հիմնական, 2x ցածր էներգիայի 16-բիթ ժմչփ (հասանելի է Stop ռեժիմում), 2x պահակախումբ, SysTick ժմչփ

Հիշողություն:

- Մինչև 256 ԿԲ Flash, գույքի ծածկագրերի ընթերցման պաշտպանություն

- 64 ԿԲ SRAM ներառյալ 16 ԿԲ ՝ ապարատային հավասարության ստուգմամբ

- Quad SPI հիշողության ինտերֆեյս

Հարուստ անալոգային ծայրամասային սարքավորումներ (անկախ մատակարարում)

- 1x 12-բիթանոց ADC 5 Msps, մինչև 16 բիթ `ապարատային գերբեռնվածությամբ, 200 μA / Msps

- 12-բիթանոց DAC ելքի 2 ալիք, էներգիայի ցածր սպառում

- 1x գործառնական ուժեղացուցիչ `ներկառուցված PGA- ով

- 2x ՝ համեմատած չափազանց ցածր էներգիայի ինտերֆեյսների հետ

- 1x UPS (սերիական աուդիո ինտերֆեյս)

- 2x I2C FM + (1 Մբիթ / վ), SMBus / PMBus

- 3x USART (ISO 7816, LIN, IrDA, մոդեմ)

- 1x LPUART (կանգ առեք 2 արթնացեք)

- 2x SPI (և 1x SPI քառյակ)

- CAN (2.0B ակտիվ)

- Մեկ մետաղալարով արձանագրության վարպետ SWPMI I / F

- IRTIM (ինֆրակարմիր ինտերֆեյս)

  • 14-ալիքային DMA վերահսկիչ
  • Պատահական թվերի գեներատոր

Քայլ 7: Տեղադրեք Core Arduino- ն STM32L4 քարտերի համար

Տեղադրեք Core Arduino- ն STM32L4 քարտերի համար
Տեղադրեք Core Arduino- ն STM32L4 քարտերի համար
  1. Տեղադրեք ST-Link ծրագիրը, որը գրանցում է
  2. Sonսոնի հասցեն
  3. Տախտակներ. Քարտերի կառավարիչ
  4. Գրադարաններ. Գրադարանի կառավարիչ

Քայլ 8: Տեղադրեք ST -Link- ը, որը գրանցում է ծրագիրը

Տեղադրեք ST -Link - ծրագիր, որը գրանցում է
Տեղադրեք ST -Link - ծրագիր, որը գրանցում է

Ներբեռնեք ֆայլը https://www.st.com/hy/development-tools/stsw-link0…. Պարզապես գրանցեք, ներբեռնեք և տեղադրեք սարքը:

Քայլ 9. Հասցե Json

Հասցե sonսոն
Հասցե sonսոն

Հատկությունների վերաբերյալ նշեք հետևյալ հասցեն.

github.com/stm32duino/BoardManagerFiles/ra…

Քայլ 10. Խորհուրդներ. Խորհրդի ղեկավար

Խորհուրդներ `խորհրդի ղեկավար
Խորհուրդներ `խորհրդի ղեկավար

Arduino Board Manager- ում տեղադրեք STM32 Core- ը, որը մոտ 40 ՄԲ է:

Քայլ 11: Գրադարաններ. Գրադարանի կառավարիչ

Գրադարաններ. Գրադարանի կառավարիչ
Գրադարաններ. Գրադարանի կառավարիչ

Վերջապես, տեղադրեք գրադարանները:

Ինձ անձամբ դուր եկավ STM32duino.com խումբը, որն ունի մի քանի օրինակ, որոնցից մի քանիսը տեղադրեցի: Ներբեռնեցի նաև FreeRTOS, որը ինձ շատ դուր եկավ: Ես գտա այն արագ և հուսալի: Ես նաև տեղադրեցի (բայց դեռ չեմ փորձարկել) LRWAN: Շուտով կասեմ ՝ լավ է, թե ոչ:

Քայլ 12: Ներբեռնեք PDF

PDF

Խորհուրդ ենք տալիս: