Სარჩევი:

წარმოუდგენელი STM32 L4 !: 12 ნაბიჯი
წარმოუდგენელი STM32 L4 !: 12 ნაბიჯი

ვიდეო: წარმოუდგენელი STM32 L4 !: 12 ნაბიჯი

ვიდეო: წარმოუდგენელი STM32 L4 !: 12 ნაბიჯი
ვიდეო: The Internet of Things by James Whittaker of Microsoft 2024, ივლისი
Anonim
Image
Image
STM32F746G აღმოჩენა
STM32F746G აღმოჩენა

მინდა დავიწყო ეს სტატია იმის ახსნით, რომ ეს ასო L (L4– ისგან) ნიშნავს დაბალს (ან, ძირითადად, ულტრა დაბალ ენერგიას). ამრიგად, ის ხარჯავს მცირე ენერგიას და აჩვენებს, რატომ არის ეს STM32 წარმოუდგენელი! ის ხარჯავს მიკროამპებს და აქვს სისტემა შიგნით, რომელსაც შეუძლია განსაზღვროს თითოეული ჩიპის ნაწილის ხარჯები. ეს საშუალებას იძლევა ენერგიის ძალიან ეფექტური მართვა და მაღალი შესრულება.

მე უკვე ვისაუბრე ამ მიკროკონტროლერის შესახებ ვიდეოში, "მიკროკონტროლერის დაპროგრამების ყველაზე მარტივი გზა!" ვიდეოში მე ვაჩვენე როგორ დავპროგრამო STM32 L4 MBED– ით. მაგრამ უფრო მეტი კვლევისას აღმოვაჩინე ის, რასაც მწარმოებელი STMicroelectronics არ ამხელს. მან დანერგა Core Arduino ჩიპში, რაც პროგრამირების საშუალებას აძლევს Arduino IDE– ს საშუალებით.

ამ სურათზე ჩვენ გვაქვს L4- ის ორი ვერსია. STM32L432KC იდენტურია Arduino Nano– ს და STM32L476RG– ს, რომლებსაც აქვთ Arduino Uno– ს ექვივალენტი IO. ამრიგად, ამ მძლავრი მიკროკონტროლის ორ ვერსიასთან მუშაობისას, მე გაჩვენებთ თუ როგორ უნდა დააინსტალიროთ Arduino Core STM32 ოჯახში. ასევე, მე ავხსნი STM32 ნაკრების ძირითად მახასიათებლებს.

ნაბიჯი 1: ფირფიტები ძირითადი არდუინოსთან ერთად

აქ დავდე ჩამონათვალი მრავალფეროვნების შესახებ. თუმცა, ჩვენ ვაპირებთ მუშაობას STM32L432KC და STM32L476RG.

STM32F0

  • ნუკლეო F030R8
  • Nucleo F091RC
  • 32F0308 აღმოჩენა

STM32F1

  • BluePill F103C8 (ძირითადი მხარდაჭერა, USB- ის გარეშე)
  • MapleMini F103CB (ძირითადი მხარდაჭერა, USB- ის გარეშე)
  • ნუკლეო F103RB
  • STM32VLDISCOVERY

STM32F2

Nucleo F207ZG

STM32F3

  • ნუკლეო F302R8
  • ნუკლეო F303K8
  • ნუკლეო F303RE

STM32F4

  • Nucleo F401RE
  • Nucleo F411RE
  • ნუკლეო F429ZI
  • Nucleo F446RE
  • STM32F407G-DISC1

STM32F7

STM32F746G-DISCOVERY

STM32L0

  • ნუკლეო L031K6
  • ნუკლეო L053R8
  • B-L072Z-LRWAN1

STM32L1

ნუკლეო L152RE

STM32L4

  • ნუკლეო L432KC
  • ნუკლეო L476RG
  • NUCLEO-L496ZG-P
  • NUCLEO-L496ZG-P
  • B-L475E-IOT01A

ნაბიჯი 2: STM32F746G აღმოჩენა

საილუსტრაციოდ, მე ვაჩვენებ 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-Mbit Quad-SPI ფლეშ მეხსიერება
  • 128-Mbit SDRAM (ხელმისაწვდომია 64 Mbits)
  • კონექტორი 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 არდუინოს კონექტორიდან

- გარე 5 V კონექტორიდან

ელექტროენერგიის მიწოდება გარე პროგრამებისთვის:

- 3.3 V ან 5 V

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, which is a ARM Cortex -M4 Ultra Low Power, and is in სურათი მარჯვენა მხარეს.

Arduino გამო:

მიკროკონტროლი: AT91SAM3X8E

სამუშაო ძაბვა: 3.3V

შეყვანის ძაბვა (რეკომენდირებულია): 7-12V

შეყვანის ძაბვა (ლიმიტები): 6-16V

ციფრული I / O ქინძისთავები: 54 (აქედან 12 უზრუნველყოფს PWM გამომავალს)

ანალოგური შეყვანის ქინძისთავები: 12

ანალოგური გამომავალი ქინძისთავები: 2 (DAC)

სულ DC გამომავალი დენი ყველა I / O ხაზზე: 130 mA

DC მიმდინარე 3.3V პინისთვის: 800 mA

DC დენი 5V პინისთვის: 800 mA

ფლეშ მეხსიერება: 512 KB ყველა ხელმისაწვდომი მომხმარებლის პროგრამებისთვის

SRAM: 96 KB (ორი ბანკი: 64KB და 32KB)

საათის სიჩქარე: 84 MHz

სიგრძე: 101.52 მმ

სიგანე: 53.3 მმ

წონა: 36 გ

STM NUCLEO-L476RG:

STM32L476RGT6 LQFP64 პაკეტში

ARM®32 ბიტიანი Cortex®-M4 პროცესორი

რეალურ დროში ადაპტირებადი ამაჩქარებელი

(ART ამაჩქარებელი allowing), რომელიც იძლევა 0-ლოდიანი მდგომარეობის შესრულებას ფლეშ მეხსიერებიდან

პროცესორის მაქსიმალური სიხშირე 80 MHz

VDD 1.71 V– დან 3.6 V– მდე

1 მბ Flash

128 KB SRAM

SPI (3)

I2C (3)

USART (3)

UART (2)

LPUART (1)

GPIO (51) გარე შეწყვეტის შესაძლებლობით

ტევადობის აღქმა 12 არხით

12 ბიტიანი ADC (3) 16 არხით

12 ბიტიანი DAC 2 არხით

FPU ან მცურავი წერტილის ერთეული

* მე აქ გამოვყოფ STM NUCLEO-L476RG– ის ამ ცალკეულ FPU– ს, რაც ნიშნავს რომ ჩიპი საოცარი სისწრაფით აკეთებს ტრიგონომეტრიულ გამოთვლებს. ეს არდუინო დუსგან განსხვავებით, რომელსაც ამისათვის გენეტიკური პროცესორი სჭირდება.

ნაბიჯი 4: Dhrystone

დრისტონი
დრისტონი
დრისტონი
დრისტონი

Dhrystone არის სინთეზური კომპიუტერული საორიენტაციო პროგრამა, რომელიც შემუშავებულია 1984 წელს Reinhold P. Weicker– ის მიერ, რომელიც გამიზნულია იყოს (მთელი) სისტემის პროგრამირების წარმომადგენელი. Dhrystone გახდა პროცესორის მთლიანი მუშაობის (CPU) წარმომადგენელი. სახელი "Dhrystone" არის სათამაშო სიტყვა სხვა საორიენტაციო ალგორითმზე, სახელწოდებით Whetstone. ეს არის ზომები მიღებული ზოგიერთი ზოგადი ოპერაციიდან.

ეს პროგრამა არის აქ, რომ შეადგინოთ რაიმე ამ მიკროკონტროლერების შიგნით Arduino– ში. და ორი ტესტის შედეგი, რომელიც ჩავატარე, ერთი Dhrystone– ით და მეორე SpeedTest ვიდეოდან, ასეთია:

არდუინოს გადახდა: 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 MHz / 100 DMIPS ART ამაჩქარებლით

ნაბიჯი 5: STM32L432KC X Arduino Nano

STM32L432KC X არდუინო ნანო
STM32L432KC X არდუინო ნანო

მარცხენა დაფა არის STM32L432KC, რომელშიც STMicroelectronics ათავსებს იდენტურ Arduino Nano pinout– ს სურათზე მარჯვნივ.

ნაბიჯი 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-ბიტიანი ქრონომეტრი (ხელმისაწვდომია გაჩერების რეჟიმში), 2x მცველი, SysTick ქრონომეტრი

მეხსიერება:

- 256 კბ -მდე Flash, კოდის წაკითხვის საკუთრების დაცვა

- 64 KB SRAM ჩათვლით 16 KB ტექნიკური პარიტეტის შემოწმებით

- Quad SPI მეხსიერების ინტერფეისი

მდიდარი ანალოგური პერიფერიული მოწყობილობები (დამოუკიდებელი მიწოდება)

- 1x 12 ბიტიანი ADC 5 Msps, 16 ბიტამდე აპარატურის გადაღებით, 200 μA / Msps

- 12 არხი 12 ბიტიანი DAC გამომავალი, დაბალი ენერგომოხმარება

- 1x ოპერატიული გამაძლიერებელი ჩაშენებული PGA

- 2x ულტრა დაბალი სიმძლავრის ინტერფეისებთან შედარებით

- 1x UPS (სერიული აუდიო ინტერფეისი)

- 2x I2C FM + (1 Mbit / s), 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. ჯსონის მისამართი
  3. დაფები: ბარათის მენეჯერი
  4. ბიბლიოთეკები: ბიბლიოთეკის მენეჯერი

ნაბიჯი 8: დააინსტალირეთ ST -Link - პროგრამა, რომელიც იწერს

დააინსტალირეთ ST -Link - პროგრამა, რომელიც იწერს
დააინსტალირეთ ST -Link - პროგრამა, რომელიც იწერს

ჩამოტვირთეთ ფაილი https://www.st.com/en/development-tools/stsw-link0…. უბრალოდ დარეგისტრირდით, ჩამოტვირთეთ და დააინსტალირეთ მოწყობილობა.

ნაბიჯი 9: მიმართეთ ჯონსონს

მისამართი ჯსონი
მისამართი ჯსონი

თვისებებზე მიუთითეთ შემდეგი მისამართი:

github.com/stm32duino/BoardManagerFiles/ra…

ნაბიჯი 10: დაფები: საბჭოს მენეჯერი

დაფები: საბჭოს მენეჯერი
დაფები: საბჭოს მენეჯერი

Arduino დაფის მენეჯერში დააინსტალირეთ STM32 Core, რომელიც არის დაახლოებით 40 მბ.

ნაბიჯი 11: ბიბლიოთეკები: ბიბლიოთეკის მენეჯერი

ბიბლიოთეკები: ბიბლიოთეკის მენეჯერი
ბიბლიოთეკები: ბიბლიოთეკის მენეჯერი

დაბოლოს, დააინსტალირეთ ბიბლიოთეკები.

მე პირადად მომეწონა ჯგუფი STM32duino.com, რომელსაც აქვს რამდენიმე მაგალითი, რომელთაგან ზოგიერთი დავაყენე. ასევე გადმოვწერე FreeRTOS, რომელიც ძალიან მომეწონა. აღმოვაჩინე ის სწრაფი და საიმედო. მე ასევე დავაინსტალირე (მაგრამ ჯერ არ გამომიცდია) LRWAN. მალე გეტყვით კარგია თუ არა.

ნაბიჯი 12: ჩამოტვირთეთ PDF

PDF

გირჩევთ: