STMicroelectronics-LOGO'

Firmware demonstrativ pentru placa de descoperire STMicroelectronics STM32CubeU0

STMicroelectronics-STM32CubeU0-Discovery-Board-Demonstrație-Firmware-PRO

Specificații

  • Nume produs: STM32CubeU0 STM32U083C-DK firmware demonstrativ
  • Producător: STMicroelectronics
  • Compatibilitate: Dispozitivele STM32U0xx
  • Sprijin: STM32Cube HAL BSP și componente utilitare

Introducere

STM32Cube este o inițiativă originală STMicroelectronics de îmbunătățire semnificativă a productivității designerilor prin reducerea efortului, timpului și costurilor de dezvoltare. STM32Cube acoperă întregul portofoliu STM32.

STM32Cube include:

  • Un set de instrumente de dezvoltare software ușor de utilizat pentru a acoperi dezvoltarea proiectelor de la concepție până la realizare, printre care se numără:
    • STM32CubeMX, un instrument de configurare software grafic care permite generarea automată a codului de inițializare C folosind vrăjitori grafici
    • STM32CubeIDE, un instrument de dezvoltare all-in-one cu configurație periferică, generare de cod, compilare de cod și caracteristici de depanare
    • STM32CubeCLT, un set de instrumente de dezvoltare cu linie de comandă all-in-one cu compilare de cod, programare pe placă și caracteristici de depanare
    • STM32CubeProgrammer (STM32CubeProg), un instrument de programare disponibil în versiuni grafice și de linie de comandă
    • STM32CubeMonitor (STM32CubeMonitor, STM32CubeMonPwr, STM32CubeMonRF, STM32CubeMonUCPD) instrumente de monitorizare puternice pentru a ajusta comportamentul și performanța aplicațiilor STM32 în timp real
  • Pachete MCU și MPU STM32Cube, platforme cuprinzătoare de software încorporat specifice fiecărei serii de microcontrolere și microprocesoare (cum ar fi STM32CubeU0 pentru seria STM32U0), care includ:
    • Stratul de abstractizare hardware (HAL) STM32Cube, asigurând portabilitate maximizată în portofoliul STM32
    • API-urile STM32Cube low-layer asigură cea mai bună performanță și amprentă cu un grad ridicat de control al utilizatorului asupra hardware-ului
    • Un set consistent de componente middleware, cum ar fi Microsoft® Azure® RTOS, dispozitiv USB, TouchSensing și OpenBootloader
    • Toate utilitățile software încorporate cu seturi complete de periferice și aplicative de examples
  • Pachetele de extindere STM32Cube, care conțin componente software încorporate care completează funcționalitățile pachetelor MCU și MPU STM32Cube cu:
    • Extensii middleware și straturi aplicative
    • Exampfișiere care rulează pe anumite plăci de dezvoltare STMicroelectronics

Firmware-ul demonstrativ al plăcii Discovery STM32CubeU0 este construit pe aproape întreaga capacitate STM32 pentru a oferi o gamă largă de utilizare bazată pe STM32Cube HAL BSP și pe componentele utilitare.
Firmware-ul demonstrativ al plăcii STM32CubeU0 Discovery acceptă dispozitivele STM32U0xx și rulează pe placa Discovery STM32U083C-DK.

În STM32CubeU0, atât API-urile HAL, cât și LL sunt pregătite pentru producție, dezvoltate în conformitate cu ghidurile MISRA C®:2012 și eliminarea posibilelor erori de rulare cu instrumentul de analiză statică Synopsys® Coverity®. Rapoartele sunt disponibile la cerere.

Figura 1. Arhitectura pachetului MCU STM32CubeU0

STMicroelectronics-STM32CubeU0-Discovery-Board-Demonstration-Firmware-FIG-1

Informații generale

Firmware-ul demonstrativ STM32CubeU0 rulează pe placa Discovery STM32U083C-DK cu microcontrolerul STM32U083MC bazat pe nucleul Arm® Cortex®‑M0+.
Arm este o marcă înregistrată a Arm Limited (sau a filialelor sale) în SUA și / sau în alte părți.

Începeți cu demonstrația

Cerințe hardware
Cerințele hardware pentru rularea aplicației demonstrative sunt următoarele:

  • Placa Discovery STM32U083C-DK. Consultați Figura 2 și manualul utilizatorului Kitul Discovery cu STM32U083MC MCU (UM3292) pentru descrierea plăcii Discovery.
  • Un cablu USB Type-C® pentru alimentarea plăcii STM32 Discovery de la conectorul ST-LINK USB Type-C® (CN1).

Placa Discovery STM32U083C-DK vă ajută să descoperiți funcțiile cu consum redus și capabilitățile audio/grafice ale seriei STM32U0. Oferă tot ce au nevoie utilizatorii începători și experimentați pentru a începe rapid și pentru a dezvolta aplicații cu ușurință.
Bazat pe un MCU STM32U083MC, placa Discovery STM32U083C-DK dispune de o interfață de instrument de depanare ST-LINK/V2 încorporată, un panou de măsurare a curentului Idd, LCD segmentat, LED-uri, un joystick și doi conectori USB Type-C®.

Configurare hardware pentru a rula firmware-ul demonstrativ

Tabelul 1. Configurație jumper

STMicroelectronics-STM32CubeU0-Discovery-Board-Demonstration-Firmware-FIG-2

Poziția 1 corespunde laturii jumperului cu un marcaj cu puncte.
Consultați manualul de utilizare Kitul Discovery cu STM32U083MC MCU (UM3292) pentru o descriere completă a setărilor jumperului.

Figura 2. Placă de descoperire STM32U083C-DK

STMicroelectronics-STM32CubeU0-Discovery-Board-Demonstration-Firmware-FIG-3

Pachetul de firmware demonstrativ

Depozitul demonstrativ
Firmware-ul demonstrativ STM32CubeU0 pentru placa Discovery STM32U083C-DK este furnizat în pachetul de firmware STM32CubeU0, așa cum se arată în Figura 3.

STMicroelectronics-STM32CubeU0-Discovery-Board-Demonstration-Firmware-FIG-4

Sursele demonstrative se află în folderul de proiecte al pachetului STM32Cube pentru fiecare placă suportată. Sursele sunt împărțite în două grupe descrise după cum urmează:

  • Main_App: Conține sursa de nivel superior files pentru aplicația principală și modulele de aplicație. De asemenea, conține toate componentele middleware și configurația HAL files.
  • Demo: Conține principalul files și setările proiectului (un folder per lanț de instrumente care conține setările proiectului și linkerul files).

S-a terminat arhitectura demonstrativăview
Firmware-ul demonstrativ STM32CubeU0 pentru placa Discovery STM32U083C-DK constă dintr-un nucleu central bazat pe un set de servicii firmware și hardware oferite de middleware-ul STM32Cube, driverele plăcii de evaluare și un set de module montate pe nucleu și construite într-un sistem modular. arhitectură. Fiecare modul poate fi reutilizat separat într-o aplicație autonomă. Un API specific, care oferă acces la toate resursele comune și facilitează adăugarea de module noi, așa cum se arată în Figura 4, gestionează setul complet de module.

Figura 4. Arhitectura demonstrativă de pesteview

STMicroelectronics-STM32CubeU0-Discovery-Board-Demonstration-Firmware-FIG-5

STM32U083C-DKPlăcă de descoperire BSP
Driverele de placă sunt disponibile în stm32u083c_discovery_XXX.c și stm32u083c_discovery_XXX.h files (consultați Figura 5), ​​implementând capabilitățile plăcii și mecanismul de legătură cu magistrala pentru placă
componente, cum ar fi LED-uri, butoane, sunet, LCD și senzor de atingere.

Figura 5. Structura Discovery BSP

STMicroelectronics-STM32CubeU0-Discovery-Board-Demonstration-Firmware-FIG-6

Driverele BSP dedicate controlează componentele prezente pe placa Discovery STM32U083C-DK. Acestea sunt:

  • Autobuzul în stm32u083c_discovery_bus.c și stm32u083c_discovery_bus.h
  • Mediul senzorului de temperatură în stm32u083c_discovery_audio.c și stm32u083c_discovery_audio.c
  • Sticla LCD din stm32u083c_discovery_glass_lcd.c și stm32u083c_discovery_glass_lcd .h

Descrierea funcțională demonstrativă

Pesteview
După pornirea plăcii STM32U083C-DK Discovery, pe ecranul LCD apare mesajul de bun venit „STM32U083C-DISCOVERY DEMO” și este afișat primul meniu principal al aplicației.

Meniul principal
Figura 6 prezintă arborele de aplicații din meniul principal cu posibilități de navigare:

Figura 6. Meniul de sus demonstrație

STMicroelectronics-STM32CubeU0-Discovery-Board-Demonstration-Firmware-FIG-7

Meniul de navigare
Utilizați direcțiile joystick-ului SUS, JOS, DREAPTA și STÂNGA pentru a naviga între meniul principal și submeniu
articole. Pentru a intra într-un submeniu și a lansa funcția Exec, apăsați butonul SEL. Butonul SEL se referă la acțiunea de a apăsa vertical partea superioară a joystick-ului, spre deosebire de apăsarea tastelor SUS, JOS, DREAPTA și STÂNGA
orizontal. Funcțiile de bază ale butoanelor joystick-ului sunt definite după cum urmează:

Tabelul 2. Funcțiile tastei joystick-ului

STMicroelectronics-STM32CubeU0-Discovery-Board-Demonstration-Firmware-FIG-8

Module și API-uri

Demonstrație de calitate a aerului

  • Modulul senzor MIKROE-2953 măsoară calitatea aerului. Utilizează un senzor MICROE (CCS2) bazat pe I811C, care poate fi conectat cu ușurință la placă prin CN12 și CN13.
  • Utilizatorii pot parcurge măsurătorile CO2 și TVOC pe ecranul LCD din sticlă. Aplicația afișează mesaje precum NORMAL/POLUATION/HIGH POLLUTION pentru a indica nivelurile de poluare pe baza valorilor de prag.
  • Pentru a comuta la alt modul demonstrativ, apăsați tasta joystick-ului STANGA timp de cinci secunde.
  • Dacă senzorul de calitate a aerului nu este conectat, aplicația/demonstrația de calitate a aerului nu este afișată.

Figura 7. Afișaj demonstrativ pentru calitatea aerului

STMicroelectronics-STM32CubeU0-Discovery-Board-Demonstration-Firmware-FIG-9

Demonstrație senzor de temperatură

  • Modulul senzorului de temperatură măsoară temperatura.
  • Acest lucru se realizează prin utilizarea unui senzor de temperatură bazat pe I2C integrat în placa Discovery STM32U083C-DK.
  • Aplicația afișează continuu măsurătorile de temperatură pe ecranul din sticlă LCD.
  • Utilizatorii pot comuta între formatele Celsius și Fahrenheit folosind tastele SUS/JOS ale joystick-ului
  • Pentru a comuta la un alt modul demonstrativ, apăsați tasta joystick-ului STANGA timp de cinci secunde.

Figura 8. Afișaj demonstrativ al senzorului de temperatură

STMicroelectronics-STM32CubeU0-Discovery-Board-Demonstration-Firmware-FIG-10

Demonstrație senzor tactil

  • Modulul de detectare la atingere permite detectarea unui contact pe butonul TSC1 al senzorului tactil după o fază de putere redusă, folosind dispozitivul de comparare integrat pentru a reduce consumul de energie.
  • În această serie specifică STM32U0xx, unii dintre pinii I/O sensibili la atingere sunt interconectați cu modulul comparator, oferind opțiunea de a schimba volumul de detectare.tagnivelul.
  • Prin schimbarea acestui voltagE nivel, contactul fizic poate fi detectat mai devreme, în funcție de valoarea intrării comparatorului.
  • Aceasta înseamnă că cu cât nivelul este mai scăzut, cu atât este mai puțin timp pentru a-l atinge și, prin urmare, cu atât ciclul de achiziție este mai scurt.
  • Cu alte cuvinte, detectezi contactul fizic mai repede.
  • Intrarea comparatorului este conectată la grupul I/O butonul TS1. Intrarea este conectată la nivelul VREF disponibil (1/4 Vref, 1/2 Vref, 3/4 Vref și Vref).
  • În această aplicație, intrarea este conectată la TSC_G6_IO1 (COMP_INPUT_PLUS_IO4) și intrarea la VREFINT. Cu intrări la nivelul VREF, pragul pentru detectarea atingerii este setat pentru placa Discovery de către funcția tsl_user_SetThresholds().
  • Funcția tsl_user_SetThresholds() setează pragul în funcție de valoarea de intrare a comparatorului. Anumite limitări pot apărea dacă nivelul de intrare este prea scăzut. Dacă este prea scăzut, middleware-ul cu detecție la atingere are o rază mai mică și, prin urmare, măsurarea s-ar putea apropia de nivelul de zgomot.
  • Utilizatorul trebuie să fie precaut la acest stage.
  • Software-ul modulului de detectare a atingerii este format din mai multe stages:
  • În primul rând, modulul principal inițializează dispozitivul tactil, comparatorul, RTC și middleware-ul senzorial prin intermediul
  • MX_TSC_Init(), MX_COMP2_Init(), MX_RTC_Init() și, respectiv, MX_TOUCHSENSING_Init(). Apoi, modulul de detectare a atingerii/trezire la atingere parcurge mesajul „RUN MODE” de două ori, apoi inițiază calibrarea TSC, care durează aproximativ cinci secunde.

În cele din urmă, după pornire, RTC trezește MCU la fiecare 250 ms, într-o buclă, în timp ce modulul de detectare prin atingere/trezire prin atingere gestionează detectarea și nedetecția în acest fel:

  • Dacă nu este detectat niciun contact: modulul afișează mesajul „INTRODARE MODUL STOP2”, apoi comută în modul oprire 2 de putere redusă. Rămâne în modul de consum redus până când RTC se trezește pentru a determina dacă a fost detectat sau nu un contact. Dacă nu este detectat niciun contact, modulul revine la modul de oprire la consum redus 2.
  • Dacă este detectat un contact: modulul afișează mesajul „WAKEUP TOUCH DETECTED” timp de cinci secunde. Revine la modul de oprire la consum redus 2 până când se trezește RTC.

LED-urile TM32U083C-DK pot fi utilizate pentru a monitoriza starea detectării atingerii:

  • LED4 este aprins când este detectată o atingere.
  • LED4 este stins când STM32U083C-DK intră în modul de oprire 2 la consum redus.

Pentru a comuta la un alt modul demonstrativ, utilizatorul poate apăsa tasta joystick-ului din stânga timp de cinci secunde.

Figura 9. Afișaj demonstrativ al senzorului tactil

STMicroelectronics-STM32CubeU0-Discovery-Board-Demonstration-Firmware-FIG-11

demonstrație ULP

  • Utilizatorii pot comuta între modurile ULP folosind tastele UP/DOWN ale joystick-ului. Butonul RIGHT sau SEL al joystick-ului este folosit pentru a selecta modul ULP.
  • Odată ce modul ULP a fost selectat, sistemul rămâne în modul ULP pentru aproximativ 33 de secunde când iese din modul ULP.
  • Dacă utilizatorii doresc să iasă din modul de oprire înainte de aproximativ 33 de secunde, pot folosi butonul „SEL” de joystick. După selectarea modului ULP, butonul joystick „SEL” este comutat în modul buton.
  • Când intrați în modul ULP, sticla LCD arată consumul de energie tipic (fără măsurare încorporată).
  • Modurile ULP acceptate sunt modurile Standby, Sleep LP Sleep, Stop1 și Stop2.

Figura 10. Afișaj demonstrativ ULP

STMicroelectronics-STM32CubeU0-Discovery-Board-Demonstration-Firmware-FIG-12

Setări firmware demonstrative

Controlul ceasului
Următoarele configurații ale ceasului sunt utilizate în firmware-ul demonstrativ:

  • SYSCLK: 48 MHz (PLL) de la MSI 4 MHz (RUN voltage gama 1) Următoarele oscilatoare și PLL-uri sunt utilizate în firmware-ul demonstrativ:
  • MSI (4 MHz) ca ceas sursă PLL
  • LSE (32.768 kHz) ca sursă de ceas RTC

Periferice
Perifericele utilizate în firmware-ul demonstrativ sunt enumerate în Tabelul 3.

Tabelul 3. Lista de periferice

STMicroelectronics-STM32CubeU0-Discovery-Board-Demonstration-Firmware-FIG-13

Întreruperi/pin de trezire
Întreruperile utilizate în firmware-ul demonstrativ sunt enumerate în Tabelul 4.

STMicroelectronics-STM32CubeU0-Discovery-Board-Demonstration-Firmware-FIG-14

Aplicație de programare firmware

  • În primul rând, instalați driverul ST-LINK/V2 disponibil pe www.st.com.
  • Există două moduri de programare a plăcii Discovery STM32U083C-DK.

Folosind un binar file
Încărcați binarul STM32CubeU0_Demo_STM32U083C-DK_VX.YZhex folosind instrumentul de programare în sistem preferat.

Folosind proiecte preconfigurate
Alegeți unul dintre lanțurile de scule acceptate și urmați pașii de mai jos:

  • Deschideți folderul aplicației: Proiecte\STM32U083C-DK\Demonstrații.
  • Alegeți proiectul IDE dorit (EWARM pentru IAR Systems®, MDK-ARM pentru Keil® sau STM32CubeIDE).
  • Faceți dublu clic pe proiect file (de example Project.eww pentru EWARM).
  • Reconstruiește totul files: Accesați Proiect și selectați Rebuild all.
  • Încărcați imaginea proiectului: Accesați Proiect și selectați Depanare.
  • Rulați programul: Accesați Depanare și selectați Go

Istoricul reviziilor

Tabelul 5. Istoricul revizuirilor documentului

STMicroelectronics-STM32CubeU0-Discovery-Board-Demonstration-Firmware-FIG-15

NOTIFICARE IMPORTANT – CITIȚI CU ATENTIE

  • STMicroelectronics NV și filialele sale („ST”) își rezervă dreptul de a face modificări, corecții, îmbunătățiri, modificări și îmbunătățiri produselor ST și/sau acestui document în orice moment, fără notificare. Cumpărătorii trebuie să obțină cele mai recente informații relevante despre produsele ST înainte de a plasa comenzi. Produsele ST sunt vândute în conformitate cu termenii și condițiile de vânzare ale ST în vigoare la momentul confirmării comenzii.
  • Cumpărătorii sunt singurii responsabili pentru alegerea, selecția și utilizarea produselor ST, iar ST nu își asumă nicio responsabilitate pentru asistența la aplicare sau proiectarea produselor cumpărătorilor.
  • Nicio licență, expresă sau implicită, pentru niciun drept de proprietate intelectuală nu este acordată de către ST prin prezenta.
  • Revânzarea produselor ST cu prevederi diferite de informațiile prezentate aici va anula orice garanție acordată de ST pentru un astfel de produs.
  • ST și sigla ST sunt mărci comerciale ale ST. Pentru informații suplimentare despre mărcile comerciale ST, consultați www.st.com/trademarks. Toate celelalte nume de produse sau servicii sunt proprietatea proprietarilor respectivi.
  • Informațiile din acest document înlocuiesc și înlocuiesc informațiile furnizate anterior în orice versiuni anterioare ale acestui document.
    © 2024 STMicroelectronics – Toate drepturile rezervate

FAQ

  • Î: Care este scopul firmware-ului demonstrativ al plăcii Discovery STM32CubeU0?
    • R: Firmware-ul prezintă capacitățile plăcii STM32U083C-DK Discovery folosind diverse componente și utilități furnizate de STM32Cube.
  • Î: Unde pot găsi mai multe informații despre pachetul de firmware STM32CubeU0?
    • R: Pentru mai multe detalii, contactați biroul local de vânzări STMicroelectronics sau vizitați www.st.com.

Documente/Resurse

Firmware demonstrativ pentru placa de descoperire STMicroelectronics STM32CubeU0 [pdfManual de utilizare
STM32CubeU0, STM32CubeU0 Firmware demonstrativ pentru placa de descoperire, Firmware demonstrativ pentru placa de descoperire, Firmware demonstrativ pentru placă, Firmware demonstrativ

Referințe

Lasă un comentariu

Adresa ta de e-mail nu va fi publicată. Câmpurile obligatorii sunt marcate *