Агуулгын хүснэгт:

Гайхамшигтай STM32 L4 !: 12 алхам
Гайхамшигтай STM32 L4 !: 12 алхам

Видео: Гайхамшигтай STM32 L4 !: 12 алхам

Видео: Гайхамшигтай STM32 L4 !: 12 алхам
Видео: 6 10000 алхам 12 2024, Арваннэгдүгээр
Anonim
Image
Image
STM32F746G НЭЭЛТ
STM32F746G НЭЭЛТ

Энэхүү L үсэг нь L4 нь Бага (эсвэл үндсэндээ хэт бага хүч) гэсэн утгатай болохыг тайлбарлаж би энэ нийтлэлийг эхлүүлэхийг хүсч байна. Тиймээс энэ нь бага энерги зарцуулдаг бөгөөд энэ STM32 яагаад гайхалтай болохыг харуулж байна! Энэ нь микроамп зарцуулдаг бөгөөд дотор нь чипийн хэсэг бүрийн зардлыг тодорхойлох боломжтой систем байдаг. Энэ нь эрчим хүчийг маш үр ашигтай удирдах, өндөр гүйцэтгэлтэй байх боломжийг олгодог.

Би энэ микроконтроллерийн талаар "Микроконтроллер програмчлах хамгийн хялбар арга!" Видео бичлэг дээр аль хэдийн ярьсан. Видео би STM32 L4 -ийг MBED програмаар хэрхэн програмчлахыг харуулсан. Гэхдээ энэ талаар илүү их судалж байхдаа STMicroelectronics үйлдвэрлэгчийн дэлгэдэггүй зүйлийг олж мэдсэн. Энэ нь Core Arduino -ийг чипт оруулсан бөгөөд энэ нь Arduino IDE -ээр програмчлах боломжийг олгодог.

Энэ зураг дээр бид L4 -ийн хоёр хувилбартай байна. STM32L432KC нь Arduino Uno -той тэнцүү IO -тэй Arduino Nano болон STM32L476RG -тай ижил юм. Тиймээс, энэхүү хүчирхэг микроконтроллерийн хоёр хувилбартай ажиллахдаа STM32 гэр бүлд Arduino Core -ийг хэрхэн суулгахыг танд үзүүлэх болно. Түүнчлэн, би STM32 иж бүрдэлийн үндсэн шинж чанарыг тайлбарлах болно.

Алхам 1: Core Arduino -той хавтан

Би энд олон янз байдлын талаархи жагсаалтыг байрлуулсан. Гэсэн хэдий ч бид STM32L432KC ба STM32L476RG -тэй ажиллах болно.

STM32F0

  • Nucleo F030R8
  • Nucleo F091RC
  • 32F0308DISCOVERY

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-НЭЭЛТ

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 НЭЭЛТ

Зүгээр л тайлбарлахын тулд би араатан гэж үздэг STM32F746G DISCOVERY -ийн нарийн ширийн зүйлийг харуулж байна. Би энэ чипийг аль хэдийн захиалсан байгаа бөгөөд удахгүй энэ тухай ярих болно гэж найдаж байна.

Онцлог шинж чанар:

STM32F746NGH6 микроконтроллер нь BGA216 багцад 1 Мбайт флаш санах ой, 340 Кбайт RAM -тэй

  • USB дахин тоолох чадварыг дэмждэг ST-LINK / V2-1 самбар дээрх
  • Mbed идэвхжүүлсэн (mbed.org)
  • USB функцууд: виртуал COM порт, их хэмжээний хадгалалт, дибаг хийх порт
  • 4.3 инчийн 480x272 өнгөт LCD-TFT багтаамжтай мэдрэгчтэй дэлгэцтэй
  • Камер холбогч
  • SAI аудио кодек
  • Аудио оролт ба гаралтын үүр
  • Стерео чанга яригчийн гаралт
  • Хоёр ST MEMS микрофон
  • SPDIF RCA оролтын холбогч
  • Хоёр товчлуур (хэрэглэгч ба дахин тохируулах)
  • 128 Mbit Quad-SPI флаш санах ой
  • 128-Mbit SDRAM (64 Мбит-д хандах боломжтой)
  • MicroSD картын холбогч
  • RF-EEPROM охин хавтангийн холбогч
  • Micro-AB холбогчтой USB OTG HS
  • Micro-AB холбогчтой USB OTG FS
  • IEEE-802.3-2002-тэй нийцсэн Ethernet холбогч
  • Цахилгаан хангамжийн таван сонголт:

- ST LINK / V2-1

- USB FS холбогч

- USB HS холбогч

- Arduino холбогчоос VIN

- Холбогчоос гадаад 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

ARM Cortex-M3 болох Arduino Due-тай харьцуулалтыг энд оруулав. Би энэ загварыг видео хэлбэрээр ашигласан: Nema 23 Stepper Motor with Driver TB6600 with Arduino Due, and SpeedTest: Arduinos - ESP32 / 8266s - STM32, with STM NUCLEO -L476RG, which is an ARM Cortex -M4 Ultra Low Power, and in. баруун талд байгаа зураг.

Arduino улмаас:

Микроконтроллер: AT91SAM3X8E

Ажиллах хүчдэл: 3.3V

Оролтын хүчдэл (санал болгосон): 7-12V

Оролтын хүчдэл (хязгаар): 6-16V

Дижитал I / O зүү: 54 (үүнээс 12 нь ХОУХ -ны гаралтыг хангадаг)

Аналог оролтын зүү: 12

Аналог гаралтын тээглүүр: 2 (DAC)

Бүх оролт / гаралтын шугам дээрх нийт DC гаралтын гүйдэл: 130 мА

3.3V зүү бүхий тогтмол гүйдэл: 800 мА

5V зүү бүхий тогтмол гүйдэл: 800 мА

Флэш санах ой: 512 KB бүх хэрэглэгчийн програмд боломжтой

SRAM: 96 KB (хоёр банк: 64КБ ба 32КБ)

Цагийн хурд: 84 МГц

Урт: 101.52 мм

Өргөн: 53.3 мм

Жин: 36 гр

STM NUCLEO-L476RG:

LQFP64 багц дахь STM32L476RGT6

ARM®32 битийн Cortex®-M4 CPU

Бодит цагийн дасан зохицох хурдасгуур

(ART Accelerator ™) нь Flash санах ойгоос 0 хүлээлтийн төлөвийг гүйцэтгэх боломжийг олгодог

CPU -ийн хамгийн их давтамж 80 МГц

VDD 1.71 В -оос 3.6 В хүртэл

1 MB Flash

128 KB SRAM

SPI (3)

I2C (3)

USART (3)

UART (2)

LPUART (1)

GPIO (51) гадаад тасалдалтай

12 суваг бүхий багтаамжийн мэдрэгч

16 суваг бүхий 12 битийн ADC (3)

2 суваг бүхий 12 битийн DAC

FPU эсвэл хөвөгч цэгийн нэгж

* Би энд STM NUCLEO-L476RG-ийн тусдаа FPU-ийг онцлон тэмдэглэсэн нь чип нь тригонометрийн тооцооллыг гайхалтай хурдтайгаар хийдэг гэсэн үг юм. Энэ нь үүнийг хийхийн тулд генетик процессор хэрэгтэй Arduino Due -ээс ялгаатай юм.

Алхам 4: Dhrystone

Dhrystone
Dhrystone
Dhrystone
Dhrystone

Dhrystone бол 1984 онд Reinhold P. Weicker -ийн боловсруулсан синтетик компьютерийн жишиг програм бөгөөд энэ нь (бүхэл тоон) системийн програмчлалыг төлөөлөх зорилготой юм. Dhrystone нь процессорын ерөнхий гүйцэтгэл (CPU) -ийн төлөөлөгч болжээ. "Dhrystone" гэдэг нэр нь Whetstone хэмээх өөр жишиг алгоритмын нэг үг юм. Энэ бол зарим ерөнхий үйлдлээс авсан арга хэмжээ юм.

Энэ програм нь Arduino дээрх эдгээр микроконтроллеруудын дотор ямар нэг зүйлийг эмхэтгэхэд зориулагдсан болно. Миний хийсэн хоёр туршилтын үр дүн, нэг нь Dhrystone, нөгөө нь SpeedTest видео бичлэгээс авсан үр дүн дараах байдалтай байна.

Arduino төлөх хугацаа: 37.00 доллар

Dhrystone Benchmark, Хувилбар 2.1 (Хэл: C)

Гүйцэтгэх ажиллагаа эхэлж, 3000000 нь Дристонст дамждаг

Гүйцэтгэх ажиллагаа дуусна

Dhrystone -ээр дамжих нэг секундын микрекунд: 10.70

Dhrystones in Second: 93, 431.43

VAX MIPS үнэлгээ = 53.18 DMIPS

Фернандок гүйж байна

Нийт хугацаа: 2,458 ms

  • FPU байхгүй байна
  • Arduino дээрх Dhrystone програм хангамж

www.saanlima.com/download/dhry21a.zip

STM NUCLEO-L476RG: 23.00 доллар

Dhrystone Benchmark, Хувилбар 2.1 (Хэл: C)

Гүйцэтгэл эхэлж, 3000000 нь Дристонст дамждаг

Гүйцэтгэл дуусна

Dhrystone дамжин өнгөрөх нэг микросекунд: 9.63

Dhrystones in Second: 103, 794.59

VAX MIPS үнэлгээ = 59.07 DMIPS

Фернандок гүйж байна

Нийт хугацаа: 869 ms 2.8x FASTER

  • PI 40Mbit / s хүртэл, USART 10Mbit / s хүртэл
  • 2x DMA (14 суваг)
  • ART хурдасгагчтай 80 MHz / 100 DMIPS хүртэл

Алхам 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 -т илүү тэсвэртэй

  • HW хуанли, дохиолол, шалгалт тохируулгатай RTC
  • 3 хүртэл багтаамж илрүүлэх суваг
  • 11х таймер: 1х16 битийн дэвшилтэт хөдөлгүүрийн хяналт

1х 32 бит ба 2 бит 16 битийн ерөнхий зориулалттай, 2х 16 битийн үндсэн, 2 удаа бага чадалтай 16 битийн таймер (Зогсоох горимд байдаг), 2х харуулын нохой, SysTick таймер

Санах ой:

- 256 KB хүртэл Flash, өмчлөлийн код унших хамгаалалт

- 64 KB SRAM, үүнд тоног төхөөрөмжийн паритет шалгах 16 KB

- Дөрвөн SPI санах ойн интерфейс

Баян аналог нэмэлт төхөөрөмжүүд (бие даасан хангамж)

- 1х 12 битийн ADC 5 Msps, тоног төхөөрөмжийн хэт дээж авах 16 бит хүртэл, 200 мкА / Msps

- 12 битийн DAC гаралтын 2 суваг, бага эрчим хүчний хэрэглээ

- Баригдсан PGA-тай 1х үйлдлийн өсгөгч

- Хэт бага чадлын интерфэйстэй харьцуулахад 2 дахин их

- 1x UPS (цуваа аудио интерфэйс)

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

- 3x USART (ISO 7816, LIN, IrDA, модем)

- 1x LPUART (2 сэрэх)

- 2x SPI (ба 1x SPI Quad)

- CAN (2.0B идэвхтэй)

- Нэг утас протокол мастер SWPMI I / F

- IRTIM (хэт улаан туяаны интерфэйс)

  • 14 сувгийн DMA хянагч
  • Санамсаргүй тоо үүсгэгч

Алхам 7: STM32L4 картуудад Core Arduino суулгана уу

STM32L4 картуудад Core Arduino суулгана уу
STM32L4 картуудад Core Arduino суулгана уу
  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 Board Manager дээр 40MB орчим хэмжээтэй STM32 Core суулгаарай.

Алхам 11: Номын сан: Номын сангийн менежер

Номын сан: Номын сангийн менежер
Номын сан: Номын сангийн менежер

Эцэст нь номын санг суулгана уу.

Би хувьдаа STM32duino.com группд дуртай байсан бөгөөд хэд хэдэн жишээг агуулсан бөгөөд заримыг нь би суулгасан болно. Би бас FreeRTOS татаж авсан нь надад их таалагдсан. Би үүнийг хурдан бөгөөд найдвартай гэж үзсэн. Би бас LRWAN суулгасан (гэхдээ хараахан туршиж үзээгүй байна). Энэ нь сайн эсвэл сайн биш эсэхийг би удахгүй хэлэх болно.

Алхам 12: PDF татаж авах

PDF

Зөвлөмж болгож буй: