ST-logo

STMicroelectronics UM3469 X-CUBE-ISO1 Kuwedzera kweSoftware

STMicroelectronics-UM3469-X-CUBE-ISO1-Software-Expansion

Nhanganyaya

Iyo X-CUBE-ISO1 yekuwedzera software package yeSTM32Cube inomhanya paSTM32 uye inosanganisira firmware yeX-NUCLEO-ISO1A1. Iyo software inopa iri nyore kushandisa mhinduro yekuvandudza kweiyo yakakosha PLC mudziyo wakapihwa neX-NUCLEO. Kuwedzeredza kwakavakirwa paSTM32Cube software tekinoroji yekurerutsa kutakurika kune akasiyana STM32 microcontrollers.

Iyo software inouya nekushandisa iri kushanda paX-NUCLEO-ISO1A1 yekuwedzera bhodhi yakabatana neNUCLEO-G071RB yekuvandudza bhodhi (kana ingave NUCLEO-G0B1RE kana NUCLEO-G070RB). Kubva zvino zvichienda mberi, mugwaro chete NUCLEO-G071RB ichataurwa kuti zvive nyore.
Iyo X-NUCLEO-ISO1A1 bhodhi rakagadzirirwa kutsigira kurongedzerwa kwemabhodhi maviri ane akakodzera jumper marongero kuti awedzere kupinza uye kubuda.

Acronyms uye zvipfupiso

Tafura 1. Rondedzero yeacronyms

Acronym Tsanangudzo
PLC Programmable logic controller
API Application programming interface
PWM Pulse width modulation
GPIO General-chinangwa chekupinza/kubuda.
HAL Hardware abstraction layer
PC Komputa yako pachako
FW Firmware

Chii chinonzi STM32Cube?

STM32Cube ™ inomiririra chirongwa cheSTMicroelectronics kuita kuti hupenyu hwevagadziri huve nyore nekudzikisira basa rekusimudzira, nguva, uye mutengo. STM32Cube inovhara iyo STM32 portfolio.
STM32Cube version 1.x inosanganisira:

  • STM32CubeMX, graphical software yekumisikidza chishandiso chinobvumira chizvarwa cheC yekutanga kodhi uchishandisa graphical wizards.
  • Iyo yakazara yakamisikidzwa software chikuva chakananga kune yega yega nhevedzano (seiyo STM32CubeG0 yeiyo STM32G0 nhevedzano), iyo inosanganisira:
    • iyo STM32Cube HAL yakamisikidzwa abstraction-layer software, kuve nechokwadi chekuwedzera kutakurika pane iyo STM32 portfolio.
    • seti inowirirana yemidziyo yepakati seRTOS, USB, TCP/IP, uye mifananidzo
    • ese akamisikidzwa software utilities ane yakazara seti ye examples.

STM32Cube zvivakwa
Iyo STM32Cube firmware mhinduro yakavakirwa kutenderedza matatu akazvimirira mazinga ayo anogona nyore kutaurirana, sekutsanangurwa kwazvino mudhayagiramu pazasi.

STMicroelectronics-UM3469-X-CUBE-ISO1-Software-Expansion-1

X-CUBE-ISO1 software yekuwedzera yeSTM32Cube

Overview
Iyo firmware yeX-NUCLEO-ISO1A1, indasitiri yakasarudzika yekuisa / kubuda yekuwedzera bhodhi, yakagadziridzwa yakatenderedza STM32 nharaunda nemaraibhurari, inokwirisa iyo yepamusoro-inoshanda MCU yeSTM32 Nucleo mabhodhi ekutarisira mapindiro edhijitari, zvinobuda nediagnostics akabatanidzwa pamwe neane simba razvino muganho, uye PWM chiratidzo chizvarwa. Iyo inoratidzira yakazara bhodhi kumisikidzwa uye kutonga, kusanganisira masisitimu ekusarudzika uye mamwe mamiriro, macros ekugadzirisa pre-scaler kukosha, uye tsananguro dzeGPIO ports nemapini.

Inotsigira zvakasiyana-siyana sample application use makesi akadai sedhijitari yekupinda kune inobuda mirroring, UART kutaurirana kuburikidza neNucleo board, kuona kukanganisa, bvunzo kesi, uye PWM chizvarwa chinogona kushandiswa zvakananga uye chinogona kugadziridzwa nyore uye kuwedzerwa.

Iyo API inopa yakasimba seti yemabasa edhijitari yekupinda / kubuda kwekutonga, kuona kukanganisa, uye bhodhi mamiriro ekugadzirisa, ane zvigadziriso zvekugadzirisa zvekushandisa mabhodhi maviri panguva imwe chete mune dzakasiyana modes. Yakananga API mabasa anowanikwa ekutanga, kutanga, kumisa, uye kugadzirisa masaini ePWM ematanho ekubuda kwedhijitari.

Iyo bhodhi yekutsigira pasuru inosanganisira mabasa ekudzora nekutarisa mapini eGPIO akatarisana neIPS1025H-32 uye kuverenga mamiriro eGPIO pini akasangana neCLT03-2Q3 kuburikidza nedhijitari isolator.
Kugadzirisa uye kutanga kunobva paSTM32CubeMX, nekuvandudza uye kugadzirisa zvinotsigirwa neSTM32CubeIDE, IAR Systems, uye Keil® zvishandiso.

Architecture
Iyo firmware yeX-NUCLEO-ISO1A1 inogona kupatsanurwa kuita akati wandei akasiyana mabhuroki anoshanda, rimwe nerimwe rine mutoro weakasiyana mashandisirwo ehurongwa:

STMicroelectronics-UM3469-X-CUBE-ISO1-Software-Expansion-2

  • Bhodhi Configuration uye Kudzora:
    • The board_config.h file ine macros kuti igadzirise bhodhi kuti rishande mukusarudzika kana mamwe mamiriro, kana ese ari maviri. Inosanganisirawo tsananguro dze pre-scaler values ​​uye GPIO ports nemapini.
    • Ichi chivharo chinova nechokwadi chekuti bhodhi rakamisikidzwa nemazvo kune yaunoda mamiriro ekushanda uye kuti ese anodiwa magadzirirwo ehardware ari munzvimbo.
  • Mamiriro ekushandiswa kwekushandisa:
    • The st_iso_app.h uye st_iso_app.c files ine makesi ekushandisa ekushandisa akagadzirirwa kuyedza akasiyana mashandiro ebhodhi.
    • Aya makesi ekushandisa anosanganisira kupinza kwedhijitari kune inobuda girazi, bvunzo yekuona kukanganisa, uye PWM chiratidzo chechizvarwa.
    • Exampzvigadziriso zvinopihwa zvekushandisa mabhodhi maviri panguva imwe chete mune dzakasiyana modes, zvichiratidza kuchinjika uye kuchinjika kweiyo firmware.
  • API Mabasa:
    • The iso1a1.h uye iso1a1.c files inopa yakazara seti yeAPIs kutsigira akasiyana mashandiro.
    • Aya maAPIs anosanganisira mabasa edhijitari yekupinda / kubuda kwekutonga, kuona kukanganisa, uye bhodhi mamiriro ekugadzirisa.
    • Iwo maAPI akagadzirirwa kuve akapusa uye anonzwisisika, zvichiita kuti zvive nyore kune vashandisi kudyidzana nebhodhi uye kuita mabasa anodiwa.
  • PWM Signal Control:
    • The pwm_api.h uye pwm_api.c files ine chaiwo API mabasa ane chekuita nePWM chiratidzo chekugadzira.
    • Aya mabasa anobvumira kutanga, kugadzirisa, kutanga, uye kumisa masaini ePWM emagetsi ekubuda kwedhijitari.
    • Iyo PWM mashandiro haisi yekusarudzika sarudzo. Kugadziriswa kwebhodhi kwakagadziridzwa kuti izvi zvigone. Tarisa kuChikamu 3.5: APIs kuti uwane rumwe ruzivo.
  • Board Support Package:
    • Iyo bhodhi rutsigiro pasuru inosanganisira files yekudzora nekutarisa mapini eGPIO akatarisana neIPS1025H-32 uye kuverenga mamiriro eGPIO pini akatarisana neCLT03-2Q3.
    • The ips1025h_32.h uye ips1025h_32.c files inopa mabasa ekuseta, kujekesa, uye kuona zvikanganiso pamapini eGPIO akabatanidzwa ne IPS1025H-32.
    • The clt03_2q3.h and clt03_2q3.c files inopa mabasa ekuverenga mamiriro eGPIO mapini akatarisana neCLT03-2Q3.

Iyo yekuratidzira firmware inoshandisa akati wandei akapusa ekushandisa kesi kuratidza kugona kweiyo system. Aya makesi ekushandisa uye mushandisi APIs anoitwa nenzira yakarongeka kuti ive nechokwadi chekushanda kwakanaka uye mhedzisiro chaiyo. Iyo dhizaini yakagadzirirwa kuve nyore kuwedzera, ichibvumira vashandisi kuwedzera maficha matsva uye kushandisa makesi sezvinodiwa. Default gadziriso inopihwa yekumhanyisa bhodhi rimwe nedhijitari maindasitiri IOs. Iyo jumper setting inodiwawo kuti ive in default mode sezvinotsanangurwa muTable 2. Digital input Digital out mirroring (DIDO) ndiyo inoshandiswa firmware application usecase.

Folder chimiro

STMicroelectronics-UM3469-X-CUBE-ISO1-Software-Expansion-3

Aya maforodha anotevera anosanganisirwa musoftware package:

  • Zvinyorwa zvine HTML yakaunganidzwa file inogadzirwa kubva kune kodhi kodhi, inotsanangura zvikamu zvesoftware uye maAPI.
  • Vatyairi vane:
    • iyo STM32Cube HAL folda, iri mune ma subfolders STM32G0xx_HAL_Driver. Izvi files hadzina kutsanangurwa pano sezvo dzisiri dzakananga kune X-CUBE-ISO1 software asi dzinouya zvakananga kubva kuSTM32Cube chimiro.
    • iyo CMSIS folda ine Cortex® microcontroller software interface standard files kubva kuArm. Izvi files ndeyemutengesi-akazvimiririra hardware abstraction layer yeCortex®-M processor series. Iyi folda inouyawo isina kuchinjwa kubva ku STM32Cube framework.
    • BSP folda ine macode ezvikamu IPS1025H-32 uye CLT03-2Q3 uye APIs ane hukama neX-NUCLEO-ISO1A1.
  • Chishandiso chine mushandisi folda ine main.c file, nyaya yekushandisa yekushandisa file, st_iso_app.c and the board_config.h file, yakapihwa NUCLEO-G071RB chikuva.

BSP folda
Iyo X-CUBE-ISO1 software inoshandisa maviri akasiyana chikamu files, ari mukati meBSP/Zvikamu:

IPS1025
The ips1025h_32.h uye ips1025h_32.c files inopa yakazara mutyairi kuita kweiyo GPIO pini yakatarisana neIPS1025H-32, kusanganisira yakakwana kushanda kwekudzora mapini ese uye kuona zvikanganiso. Izvi files ita mabasa ekutanga chishandiso, kuseta uye kujekesa mamiriro echiteshi, kuona kukanganisa, uye kubata PWM mashandiro. Mutyairi anotsigira akawanda madivayiri uye machaneli, ane azere kugona kune ese ari maviri chiteshi kana seboka.

CLT03
The clt03_2q3.h and clt03_2q3.c files shandisa mutyairi akazara-yepini yeGPIO yakatarisana neCLT03-2Q3, iine masimba akazara ekuverenga ese pini nyika. Mutyairi anopa mabasa ekutanga chishandiso, kuverenga chimiro chega chega, uye kuwana ruzivo rwemamiriro ezviteshi zvese panguva imwe chete. Iyo inotsigira akawanda magadzirirwo emidziyo uye inochengetedza mamiriro emukati kune inoshanda chiteshi manejimendi.

Iyo X-CUBE-ISO1 software APIs yakakamurwa kuita maviri makuru sosi files, ari mukati meiyo ISO1A1 subfolder:

ISO1A1
Iyo ISO1A1 files inotenderedza yakazara seti yeAPI mabasa akagadzirirwa bhodhi kumisikidzwa, chikamu chekudyidzana, uye kukanganisa kutonga. Aya mabasa anofambisa kuverenga nekunyora mashandiro, kuona kukanganisa uye kugadzirisa, uye anosanganisira akasiyana-siyana ekubatsira ekutsigira ekutanga API mabasa. Mukuwedzera, iyo files inopa kushanda kwekutonga kwe LED, GPIO kutanga, kukanganisa kubata, uye UART kutaurirana.

Purogiramu inonzi PWM
Iyo PWM API inopa mabasa ekutanga, kugadzirisa, kutanga, uye kumisa masaini ePWM. Iyo inobvumira kuseta iyo PWM frequency uye yebasa kutenderera kune yakatarwa timer pini, kuve nechokwadi chekutonga chaiko pamusoro pePWM mashandiro.

Application folder
Iyo Application folda ine main files inodiwa kune iyo firmware, kusanganisira misoro uye sosi files. Pazasi pane tsananguro yakadzama ye files mune iyi folda:

  • board_config.h: Configuration macros yebhodhi.
  • main.c: Chirongwa chikuru (code ye example iyo yakavakirwa paraibhurari ye ISO1A1).
  • st_iso_app.c: Zvishandiso zvekushandisa zvekuyedza bhodhi uye kugadzirisa.
  • stm32g0xx_hal_msp.c: HAL maitirwo ekutanga.
  • stm32g0xx_it.c: Dimbura mubati.
  • syscalls.c: System call implements.
  • sysmem.c: System memory management.
  • system_stm32g0xx.c: Kutanga kwehurongwa.

Software inodiwa zviwanikwa
Iyo Nucleo mudziyo inodzora uye inotaurirana neiyo X-NUCLEO-ISO1A1 bhodhi kuburikidza neGPIOs. Izvi zvinoda kushandiswa kwemaGPIO akati wandei ekupinza, kubuda, uye kuona kukanganisa kwemaindasitiri IO zvishandiso zviri muX-NUCLEO-ISO1A1 board. Tarisa kune Hardware mushandisi bhuku UM3483 kune rumwe ruzivo uye jumper magadzirirwo.

Kugadziriswa kwebhodhi (board_config.h)
The board_config.h file inotsanangura zviwanikwa zvinoshandiswa uye macros ekugadzirisa kugadzirisa software zvinoenderana nebhodhi dhizaini. Inobata mapuranga maviri (akadai sekurongedzerwa kwemapuranga maviri).
Iyo software DEFAULT kumisikidzwa inopindirana neiyo X-NUCLEO-ISO1A1 yekuwedzera bhodhi ine majumper ayo munzvimbo dzakasarudzika. Kugadzirisa software yeX-NUCLEO-ISO1A1 mukumisikidza kwayo, sunungura BOARD_ID_DEFAULT macro mubhodhi_config.h file.

Iyo software ALTERNATE kumisikidzwa inoiswa nekuregedza iyo BOARD_ID_ALTERNATE macro mubhodhi_config.h file uye kushandura jumper nzvimbo pabhodhi.
Kuti ushandise mabhodhi maviri panguva imwe chete mukumisikidza, bvisa zvese BOARD_ID_DEFAULT uye BOARD_ID_ALTERNATE macros uye simbisa kuti rimwe bhodhi rinosvetuka riri munzvimbo yakasarudzika uye imwe iri mune imwe nzvimbo. Ziva kuti kuve nemabhodhi ese ari maviri mukumisikidzwa kwakafanana (zvese ari maviri mukusarudzika kana ese ari maviri neimwe nzira) hakukurudzirwe uye zvinogona kukonzera maitiro asingadiwe.
Paunenge uchimhanyisa bhodhi rimwe chete, ita shuwa kuti software yakagadziridzwa imwe chete yekumisikidzwa uye iyo macro inoenderana nekumwe gadziriso inotsanangurwa.

STMicroelectronics-UM3469-X-CUBE-ISO1-Software-Expansion-4

Pre-scalers
Isu tinokwanisa kumisikidza pre-scaler values ​​muboard_config.h kuti tiwane akasiyana ma frequency renji eiyo PWM inobuda nekuisa akakodzera macros. Kuti ushandise pre-scalar kukosha, uncomment iyo inoenderana macro uye taura vamwe. Nekumisikidza, DEFAULT_PRESCALAR inoshandiswa.

  • PRESCALER_1
  • PRESCALER_2
  • DEFAULT_PRESCALER

Iwo prescaler values ​​anoshandiswa chete kana nguva dziri kushandiswa, uye zvisingadiwe kune chero yakakosha I/O mashandiro. Hukoshi hweiyo pre-scalar macros uye iwo anowirirana frequency renji anogona kutariswa mune kodhi zvinyorwa kana mune iyo kodhi pachayo.

Kurova kwemoyo LED
Isu tinokwanisa kugadzirisa iyo yakasvibira mushandisi LED, D7 kuti ibwaire mune inorova fashoni seyedzo yekubatanidza kwakakodzera kubhodhi reNUCLEO-G071RB. Iyo macro, HEARTBEAT_LED kana isina kutaurwa, inobwaira iyo yegirini LED paX-NUCLEO-ISO1A1 kana yakabatana neNUCLEO. Inoramba iripo kwesekondi 1 uye yakadzimwa kwemasekonzi maviri, nenguva inotariswa nevanoti nguva. Kana ikasashandiswa kana chero basa rinosanganisira ma LED anodaidzwa, iyo macro inofanirwa kuve isina kutaurwa.

Kupinza uye kubuda GPIO kumisikidzwa
Imwe neimwe X-NUCLEO-ISO1A1 bhodhi ine maviri ekuisa madoko uye maviri anobuda madoko. Kugona kwebhodhi kunogona kukwidziridzwa nekuturika mabhodhi maviri eX-NUCLEO-ISO1A1 pamusoro peumwe neumwe, zvichigonesa kushandiswa kwemadhijitari ekupinza madhijitari uye mana edhijitari anobuda madoko. Iyo software yakapihwa inosanganisira yakazara APIs inofambisa kuverenga, kuseta, uye kujekesa madoko. Pamusoro pezvo, maAPIs anobvumira kumisikidzwa panguva imwe chete, kuverenga, kana kucheneswa kwese zviteshi. Ruzivo rwakadzama nezve API mabasa anowanikwa mune kodhi zvinyorwa pamwe neiyo API chikamu chegwaro iri.

STMicroelectronics-UM3469-X-CUBE-ISO1-Software-Expansion-5

Pano prefix DI inoratidza dhijitari yekupinza chiteshi uye DO inoratidza dhijitari inobuda. Kune imwezve gadziriso, software inoshandisa zvakafanana mazita makongiresi ine _alt suffix yakasungirirwa.
Tafura inotevera inotsanangura iyo GPIO macros inotsanangurwa musoftware inoenderana neakasiyana maIO ports:

Tafura 2. MaGPIO akagoverwa Default uye mamwe magadzirirwo esoftware

Zita Function Default configuration Alternate configuration
INPUT PIN Input pini 1 GPIOC, IA0_IN_1_PIN GPIOD, IA0_IN_1_PIN
Input pini 2 GPIOD, IA1_IN_2_PIN GPIOC, IA1_IN_1_PIN
OUTPUT PIN Output pini 1 GPIOC, QA0_CNTRL_1_PIN GPIOD, QA0_CNTRL_1_PIN
Output pini 2 GPIOC, QA1_CNTRL_2_PIN GPIOC, QA1_CNTRL_2_PIN
FAULT PIN Fault pin 1 GPIOC, FLT1_QA0_2_OT_PIN GPIOD, FLT1_QA0_1_OT_PIN
Fault pin 2 GPIOC, FLT2_QA0_2_OL_PIN GPIOD, FLT2_QA0_1_OL_PIN
Fault pin 3 GPIOC, FLT1_QA1_2_OT_PIN GPIOC, FLT1_QA1_1_OT_PIN
Fault pin 4 GPIOC, FLT2_QA1_1_OL_PIN GPIOD, FLT2_QA1_2_OL_PIN
CONFIGURATION MACRO BOARD_ID_DEFAULT BOARD_ID_ALTERNATE

Nguva uye PWM
Nguva dzinogona kushandiswa muX-CUBE-ISO1 firmware kugadzira masaini ePWM emapini chaiwo. Nekumisikidza, nguva hadzina kutangwa kunze kweTIM3. Iwo anoenderana nguva anofanirwa kutangwa asati agadzira masaini ePWM uye anoteedzana anobuda madoko anofanira kutangwa muPWM modhi.
Kune yakajairwa GPIO yekupinda / yekubuda mashandiro, hapana chikonzero chekugadzirisa chero nguva kana chinobuda chiteshi, sezvo ichichengetwa nekusarudzika. Nekudaro, kana kana mapini ekubuda akaiswa muPWM modhi, isu tinofanirwa kuigadzirisa muGPIO modhi kuti ishandiswe seGPIO pini.

Cherechedza: Kana mapini ekubuda ari kushandiswa kuchizvarwa chePWM, iyo GPIO inobuda yakavharwa, zvese zvinoshanda hazvigone kuitwa panguva imwe chete. Kugonesazve GPIO mushure mekushandiswa kwePWM, munhu anogona kufonera API basa ST_ISO_BoardConfigureDefault () kana ST_ISO_InitGPIO () kugadzirisa ese madoko seGPIO kamwechete kana ST_ISO_Init_GPIO () neimwe GPIO port uye pini.

Sezvambotaurwa pamusoro, iyo software inoshandisawo imwe timer nekukasira, TIM3, iyo inoshandiswa kune mushandisi LED nguva, wachi, uye UART kuitisa nguva. Yakagadzirirwa kwenguva ye1 sekondi nekukasira.
Tafura inotevera inotsanangura nguva dziripo dzepini yega yega mune yedu kodhi:

Tafura 3. Nguva dziripo dzepini imwe neimwe

Pin name Software inomiririra Timer Timer chiteshi Alternate function
QA0_CTRL_1_PIN QA_0 TIM2 TIM_CHANNEL_4 GPIO_AF2_TIM2
QA1_CTRL_2_PIN QA_1 TIM1 TIM_CHANNEL_3 GPIO_AF2_TIM1
QA0_CTRL_2_PIN QA_0_ALT TIM1 TIM_CHANNEL_4 GPIO_AF2_TIM1
QA1_CTRL_1_PIN QA_1_ALT TIM17 TIM_CHANNEL_1 GPIO_AF2_TIM17

Zvimwe zvinoshandiswa zve firmware
Iyo firmware inosanganisira mamwe maturusi ekuwedzera mashandiro eiyo X-NUCLEO-ISO1A1 evaluation board. Zvimwe zvacho zvinotsanangurwa pasi apa.

UART
Iyo UART yekukurukurirana ficha inobvumira chaiyo-nguva yekutarisa uye kugadzirisa mamiriro ebhodhi kuburikidza nePC zvinoshandiswa seTeraTerm, PuTTY uye mamwe maapplication akafanana. Iyo software inogonesa iyo UART data kutapurirana kuburikidza neUART iripo muNUCLEO-G071RB board. Iyo `ST_ISO_UART` basa rinotumira yakadzama yemamiriro ebhodhi ruzivo pamusoro peUART, kusanganisira system uptime, firmware kumisikidza, uye kukanganisa mamiriro. Iyi data inogona kuva viewed uchishandisa chero serial port application, yakadai seTeraTerm. Iko `ST_ISO_APP_DIDOandUART` basa rinobatanidza mashandisirwo edhijitari/zvinobuda neUART kutaurirana, kuendesa mamiriro ezvese nzira dzekupinza nekubuda panguva dzakatarwa. Pazasi pane zvigadziriso zvekugadzirisa uye seample yekuti iyo data inoratidzika sei muTeraTerm. Zita rechiteshi rinogona kusiyana zvichienderana nehurongwa uye serial port iri kushandiswa.

STMicroelectronics-UM3469-X-CUBE-ISO1-Software-Expansion-6

STMicroelectronics-UM3469-X-CUBE-ISO1-Software-Expansion-7

IO pin mode kugadzirisa
Iyo IO pin mode configuration utility inobvumira vashandisi kuseta yekupinza uye inobuda ports yebhodhi vachishandisa ST_ISO_BoardConfigure() basa. Iri basa rinotsigira kugadzirisa maviri anobuda madoko (QA0, QA1) uye maviri ekuisa madoko (IA0, IA1) kune imwe Input/Output modhi, PWM yekubuda modhi, kana Kuvhiringidza maitiro ekuisa. Nekugadzirisa maparamendi uye kudaidza basa iri, vashandisi vanogona nyore kugadzirisa iyo bhodhi's IO kumisikidzwa kuti isangane nezvinodiwa chaizvo.

MuInput/Output modhi, chishandiso chinotangisa mapini eGPIO ezvese-chinangwa madhijitari mashandiro. Mune PWM yekubuda modhi, inomisikidza iyo nguva yekunyatso PWM chiratidzo chekutonga. Kana iri muInterrupt input mode, chishandiso chinogadzirisa mapini kuti abate zvinokanganisa, zvichibvumira inopindura inofambiswa nechiitiko chirongwa.

Kukanganisa kubata
Pakubata masaini eFAULT, software inogonesa mitsara inopindirana, ichibvumira inopindura inotyairwa nechiitiko chirongwa. A customized handler anogona kubatanidzwa nekuvhiringidza uku kuburikidza ne
HAL_GPIO_EXTI_Rising_Callback basa rinotsanangurwa muAPI. Iyo software inosanganisira maficha ekutanga mapini eGPIO mukuvhiringidza modhi kuburikidza neST_ISO_BoardConfigure basa uye kugadzirisa chaiwo zviito muEXTI IRQ vanobata. Izvi zvinobvumira vashandisi kugadzirisa kuti bhodhi rinopindura sei kune zviitiko zvekunze, kuve nechokwadi kuti inogona kunyatso gadzirisa mamiriro akasiyana ezvikanganiso uye zvinokonzeresa.

APIs
Iyo X-CUBE-ISO1 software API inopa yakazara seti yemabasa ekudzora nekutarisa X-NUCLEO-ISO1A1 bhodhi, kusanganisira PWM chiratidzo chizvarwa uye GPIO mashandiro. Iyo API yakagadzirirwa kuve nyore kushandisa uye kusanganisa mune akasiyana maapplication, ichipa kuchinjika uye kutonga pamusoro pekushanda kwebhodhi.

Iyo X-CUBE-ISO1 software API inotsanangurwa muBSP/ISO1A1 folda. Mabasa ayo anotungamirwa ne ST_ISO. Iyo API inoonekwa kumashandisirwo kuburikidza neiso1a1.c uye pwm_api.c files musanganiswa weanogara, data zvimiro, uye mabasa.
Sample firmware application inoshandisa aya maAPI kuratidza mamwe ezvinobvira kushandiswa kweaya mabasa.

Iyo X-CUBE-ISO1 software package inopa maviri seti emaAPI:

  • Purogiramu inonzi ISO1A1
  • Purogiramu inonzi PWM

Purogiramu inonzi ISO1A1
Iyo ISO1A1 API inotsanangurwa muiso1a1.h uye iso1a1.c files. Inopa mabasa ekugadzirisa nekudzora ISO1A1 bhodhi, kusanganisira GPIO yekupinda / kubuda mabasa uye kuona kukanganisa.

Mabasa akakosha

  • ST_ISO_BoardConfigureDefault: Inogadzirisa IO ports yebhodhi ine default GPIO gadziriro.
  • ST_ISO_BoardConfigure: Inogadzirisa maitiro ekuisa uye kubuda zviteshi zvebhodhi.
  • ST_ISO_BoardInit: Inotanga bhodhi hardware.
  • ST_ISO_BoardMapInit: Inotangisa bhodhi mashandiro anoenderana neiyo chiteshi inobata kumisikidzwa.
  • ST_ISO_GetFWVersion: Inodzosa iyo yazvino firmware vhezheni.
  • ST_ISO_GetChannelHandle: Inotora mubato wechiteshi chezita rakatsanangurwa chiteshi.
  • ST_ISO_InitGPIO: Inotangisa iyo yakatsanangurwa GPIO pin ine yakapihwa module ID.
  • ST_ISO_InitInterrupt: Inotangisa pini yakatsanangurwa yeGPIO sekuvhiringidza neiyo module ID yakapihwa.
  • ST_ISO_EnableFaultInterrupt: Inotanga kukanganisa GPIO mapini mukukanganisa mode.
  • ST_ISO_SetChannelStatus: Inoisa mamiriro eiyo chiteshi chakataurwa.
  • ST_ISO_SetOne_DO: Inoseta imwe dhijitari yekubuda chiteshi.
  • ST_ISO_ClearOne_DO: Inodzima dhijitari imwe yekubuda chiteshi.
  • ST_ISO_WriteAllChannels: Inonyora data kune ese madhijitari anobuda machaneli.
  • ST_ISO_GetOne_DI: Inowana chimiro chedhijitari yekupinza chiteshi.
  • ST_ISO_ReadAllChannel: Inoverenga mamiriro ematanho ese ekuisa.
  • ST_ISO_ReadAllOutputChannel: Inoverenga mamiriro ematanho ese ekubuda.
  • ST_ISO_ReadFaultStatus: Inoverenga mamiriro ekukanganisa kubva kune ese ane mhosva yekuona ports.
  • ST_ISO_ReadFaultStatusPolling: Inoedza kuona kukanganisa kwemabhodhi mune yekuvhota mode.
  • ST_ISO_DisableOutputChannel: Inodzima kuburitsa kweiyo chiteshi.
  • ST_ISO_UpdateBoardStatusInfo: Inovandudza ruzivo rwebhodhi.
  • ST_ISO_UpdateFaultStatus: Inogadziridza mamiriro ekukanganisa kune chaiyo chiteshi.
  • ST_ISO_BlinkLed: Inobwaira iyo yakatsanangurwa LED nekunonoka kwakapihwa uye kudzokorora kuverenga.
  • ST_ISO_UART: Inotumira ruzivo rwemamiriro ebhodhi pamusoro peUART.
  • ST_ISO_SwitchInit: Inotanga zvikamu zvekuchinja.
  • ST_ISO_SwitchDeInit: De-inotanga chiitiko chekuchinja.
  • ST_ISO_DigitalInputInit: Inotangisa zvikamu zvekupinza zvedhijitari.
  • ST_ISO_DigitalInputDeInit: De-kutanga iyo yedhijitari yekuisa muenzaniso.

Purogiramu inonzi PWM
Iyo PWM API inotsanangurwa mu pwm_api.h uye pwm_api.c files. Inopa anotevera mabasa ekutanga uye kutonga masaini ePWM kune chaiwo mapini.

  • ST_ISO_Init_PWM_Signal: Inotangisa nguva uye pini chaiyo yechiratidzo chePWM.
  • ST_ISO_Set_PWM_Frequency: Inoisa iyo PWM frequency yepini chaiyo.
  • ST_ISO_Set_PWM_Duty_Cycle: Inoisa iyo PWM yebasa kutenderera kune chaiyo pini.
  • ST_ISO_Start_PWM_Signal: Inotanga chiratidzo chePWM pane chaiyo pini.
  • ST_ISO_Stop_PWM_Signal: Inomisa chiratidzo chePWM pane chaiyo pini.

Kutanga chiratidzo chePWM pane imwe chiteshi, tanga wafonera iyo ST_ISO_Init_PWM_Signal basa, wozoisa yaunoda frequency uye basa kutenderera nekufonera iyo ST_ISO_Set_PWM_Frequency uye.
ST_ISO_Set_PWM_Duty_Cycle inoshanda zvakateerana uye ipapo unogona kutanga iyo PWM chiratidzo nekufonera iyo ST_ISO_Start_PWM_Signal basa uye mira nekufonera ST_ISO_Stop_PWM_Signal.

Basa racho rinoda kushevedzwa nezita repini rinoenderana uye nguva dziripo, tsanangudzo dzayo dzakapiwa mutafura 3. Nzira dzakasiyana-siyana dzinobuda dzinogona kugadzirirwa nemhando dzakasiyana-siyana uye maitiro emabasa; kushandura frequency kana duty cycle haina kukanganisa imwe, inoramba yakafanana.
Ruzivo rwakadzama rwehunyanzvi nezve maAPIs anowanikwa kumushandisi anogona kuwanikwa mune yakaunganidzwa HTML file iri mukati me "Documentation" folda yesoftware package uko mabasa ese uye paramita zvinotsanangurwa zvizere.

Tsanangudzo yekushandisa
Iyo yekuratidzira application inoshandisa akati wandei akapusa ekushandisa makesi. Iyo st_iso_app uye board_config files inoita basa rakakosha mukumisikidza nekushandisa bhodhi nemabasa ayo ekushandisa. Usati washandisa mabasa aya ita shuwa kuti bhodhi uye kurongeka kwesoftware kuri kuenderana.

Maitiro ekushandisa (st_iso_app.h uye st_iso_app.c)
Mabasa ekushandisa anotangwa ne ST_ISO_APP; ndiwo mabasa epamusoro-soro anoonekwa kumushandisi anodaidza API mabasa ekuita kwawo. Mabasa ekushandisa anogona kudanwa mune main.c file nokuda kwekushanda kwavo.

  • Shandisa Case Sarudzo: Mushandisi anogona kusunungura yaunoda kushandisa kesi macro mu st_iso_app.c file. Basa reST_ISO_APP_SelectUseCaseMacro(), rinodaidzwa kuti main.c, rinotanga kushandiswa kwenyaya, uye basa ST_ISO_APP_SelectedFunction() rinorishandisa mune chikuru.c. Iyi nzira inobvumira kugadziridzwa kuri nyore kwemaitiro ekushanda nekungo shandura macro tsananguro, kuve nechokwadi chekuti basa rakakodzera rinoitwa zvichibva pane yakasarudzwa yekushandisa kesi. Nekutadza, iyo kesi yekushandisa DIDO inosarudzwa, uye mushandisi haafanire kuita chero shanduko kune iyo kodhi kuti iite.
  • Digital Input kuDigital Output Mirroring (ST_ISO_APP_UsecaseDIDO): Iri basa rinoverenga mamiriro ezvese machanera ekuisa uye rinonyora mamiriro akafanana kune ese anobuda machanera. Inobatsira pakutarisisa mamepu edhijitari kune zvinobuda mudhijitari.
  • Digital Input kuDigital Output Mirroring ine UART (ST_ISO_APP_DIDOandUART): Basa iri rinoratidza mapindiro edhijitari kune zvinobuda mudhijitari, zvakafanana ne ST_ISO_APP_UsecaseDIDO basa. Pamusoro pezvo, inotumira chimiro chebhodhi kuburikidza neUART interface pane Nucleo mudziyo, ichibvumira chimiro kuve. viewed pane serial port uchishandisa maapplication akaita seTera Term.
  • Test Case Function (ST_ISO_APP_TestCase): Iri basa rinoita nhevedzano yebvunzo uye zviito zvinoenderana nebhodhi kumisikidzwa. Inotarisa mamiriro ekukanganisa, inoverenga mamiriro ematanho maviri ekupinza edhijitari, uye inoita zviito zvinoenderana nehunhu hwavo. Iri basa rinobatsira mukuongorora mashandiro nemashandiro ebhodhi nekukurumidza uye kuwana mhinduro yekuona kuburikidza neakasiyana ma LED mapatani. Ita shuwa HEARTBEAT_LED macro mubhodhi_config.h file inotsanangurwa kuti icherechedze chaiyo LED mapatani.
  • PWM Generation (ST_ISO_APP_PWM _OFFSET): Iri basa rinotanga chiratidzo chePWM pamatanho ese ekubuda nefrequency ye1 Hz uye kutenderera kwebasa 50%. Inotangisa iyo PWM chiratidzo, inoseta frequency uye yebasa kutenderera, uye inotanga iyo PWM siginecha yeiyo yakataurwa bhodhi ID. Iyo PWM siginecha inogadzirwa ine offset pakati pezviteshi zvese uye nekudaro ivo havasi muchikamu.
  • Fault Detection Test (ST_ISO_APP_FaultTest): Iri basa rinoongorora kutadza kuwanikwa nemotor inbuilt diagnostic pini ye smart kubuda module IPS1025. mune imwe nzira yekuvhota kana yekuvhiringidza. Inogadzirisa nzira yekuona kukanganisa, inotanga kuona kukanganisa, uye inogadziridza chimiro chekukanganisa chinobva pane yakasarudzwa. Iri basa rakakosha pakuona kuvimbika uye kuchengetedzeka kwebhodhi nekuona uye kubata zvikanganiso nemazvo. Kana iri mukuvhota, mamiriro ekukanganisa anovandudzwa sekondi yega yega nerubatsiro rwetimu uye inoratidzwa muchimiro defaultBoardFaultStatus kana alternateBoardFaultStatus. Kana iri mumodhi yekuvhiringidza, mamiriro ekukanganisa anovandudzwa chete kana kukanganisa kwaitika, uye zvinokonzeresa software kuti ibvise chiteshi chinobuda.
  • PWM Variation Test (ST_ISO_APP_PwmVariationTest): Iri basa rakagadzirirwa kuyedza kusiyanisa kwePWM (Pulse Width Modulation) masiginecha pamatanho akasiyana ekubuda anoenderana nekugadziriswa kwebhodhi. Inotangisa masaini ePWM kune ese ari maviri default uye alternate board masisitimu, achiisa frequency yavo ku100 Hz uye yekutanga basa kutenderera ku0%. Basa racho rinobva rasiyanisa kutenderera kwebasa kubva pa0% kusvika ku100% mukuwedzera kwe5%, uye kudzokera kubva pa100% kusvika ku0% mukuderedzwa kwe5%, nekunonoka kwe2-sekondi pakati penhanho imwe neimwe. Iyi shanduko inodzorwa inobvumira kutariswa uye kuongororwa kwePWM chiratidzo chemaitiro pachiteshi QA_0 neQA_1 yebhodhi rekutanga, uye QA_0_ALT neQA_1_ALT yerimwe bhodhi.

Nekutevedzera izvi zvigadziriso uye nekushandisa iyo yakapihwa maficha ekushandisa, unogona kunyatso kuseta uye kushandisa X-NUCLEO-ISO1A1 bhodhi kune akasiyana siyana ekushandisa ekuratidzira.

Sisitimu yekumisikidza gwara

Hardware tsananguro

STM32 Nucleo chikuva
STM32 Nucleo kuvandudza mabhodhi anopa inochipa uye inochinjika nzira yevashandisi yekuyedza mhinduro uye kuvaka prototypes nechero STM32 microcontroller mutsara.
Iyo Arduino® yekubatanidza tsigiro uye ST morpho zvinongedzo zvinoita kuti zvive nyore kuwedzera kushanda kweSTM32 Nucleo yakavhurika yekusimudzira chikuva ine akasiyana siyana ehunyanzvi ekuwedzera mabhodhi kusarudza kubva.

Iyo STM32 Nucleo board haidi maprobe akasiyana sezvo ichibatanidza iyo ST-LINK/V2-1 debugger/programmer.
Iyo STM32 Nucleo bhodhi inouya neiyo yakazara STM32 software HAL raibhurari pamwe neakasiyana akaputirwa software ex.amples.

STMicroelectronics-UM3469-X-CUBE-ISO1-Software-Expansion-8

Ruzivo nezve STM32 Nucleo board inowanikwa pa www.st.com/stm32nucleo

X-NUCLEO-ISO1A1 bhodhi rekuwedzera
Iyo X-NUCLEO-ISO1A1 ibhodhi rekuongorora ine yakasarudzika maindasitiri ekuisa / kubuda akagadzirirwa kuwedzera iyo STM32 Nucleo bhodhi uye kupa micro-PLC mashandiro. Maviri emabhodhi eX-NUCLEO-ISO1A1 anogona kuiswa pamwechete pamusoro peSTM32 Nucleo board ine sarudzo yakakodzera yekusvetuka pabhodhi rekuwedzera kudzivirira kukakavara muGPIO interfaces. Iyo UL1577 yakasimbiswa yedhijitari isolators STISO620 uye STISO621 inopa yekuzviparadzanisa pakati pepfungwa uye maitiro epadivi zvikamu. Maviri azvino akaganhurirwa epamusoro-parutivi ekuisa kubva kudivi rekuita anowanikwa kuburikidza neCLT03-2Q3. Iyo CLT03-2Q3 inopa dziviriro, kuparadzaniswa, uye kusasimba-simba chimiro chemamiriro eindasitiri, akagadzirirwa kusangana nezviyero zvakaita seIEC61000-4-2, IEC61000-4-4, uye IEC61000-4-5. Imwe yega yega-yepamusoro-side switch IPS1025H-32/HQ-32 inopa yakadzivirirwa kubuda kusvika ku5.6 A ine diagnostics uye smart kutyaira maficha. Izvi zvinogona kutyaira capacitive, resistive, kana inductive mitoro. Iyo X-NUCLEO-ISO1A1 inobvumira kuongororwa nekukurumidza kweiyo onboard ICs uchishandisa X-CUBE-ISO1 software package.

STMicroelectronics-UM3469-X-CUBE-ISO1-Software-Expansion-9

Hardware setup
Izvo zvinotevera zvikamu zvehardware zvinodiwa:

  1. Imwe STM32 Nucleo yekusimudzira chikuva (yakakurudzirwa kodhi yekuraira: NUCLEO-GO71RB)
  2. Imwe indasitiri yedhijitari inobuda yekuwedzera bhodhi (odha kodhi: X-NUCLEO-ISO1A1)
  3. Imwe USB mhando A kune Micro USB tambo yekubatanidza iyo STM32 Nucleo kuPC
  4. Simba rekunze remagetsi (24 V) uye waya dzakabatanidzwa kuti dzipe X-NUCLEO-ISO1A1 bhodhi rekuwedzera.

Software setup
Izvi zvinotevera zvikamu zvesoftware zvinodikanwa kumisikidza yakakodzera budiriro nharaunda yekugadzira zvikumbiro zveSTM32 Nucleo ine X-NUCLEO-ISO1A1 yekuwedzera bhodhi:

  • X-CUBE-ISO1: kuwedzera kweSTM32Cube yakatsaurirwa mukuvandudza kwekushandisa kunoda kushandiswa kwebhodhi X-NUCLEO-ISO1A1. Iyo X-CUBE-ISO1 firmware uye zvine hukama zvinyorwa zviripo pa www.st.com
  • Development toolchain uye Compiler: iyo STM32Cube yekuwedzera software inotsigira matatu anotevera nharaunda:
    • IAR Embedded Workbench yeARM® (IAR-EWARM) toolchain
    • ChaiyoView Microcontroller Development Kit (MDK-ARM-STM32) toolchain
    • STM32CubeIDE.

Board setup
Bhodhi rinofanirwa kugadzirwa neakakodzera jumper marongero sezvakatsanangurwa muHardware mushandisi bhuku (UM3483). Kutevedzera aya nhungamiro nekungwarira kwakakosha kuti uve nechokwadi chekushanda kwakaringana uye kudzivirira zvinogona kuitika.

Sisitimu yekumisikidza gwara
Ichi chikamu chinotsanangura nzira yekumisikidza zvikamu zvehardware zvakasiyana usati wagadzira nekuita application paSTM32 Nucleo, NUCLEO-G071RB board ine X-NUCLEO-ISO1A1 bhodhi rekuwedzera.

STMicroelectronics-UM3469-X-CUBE-ISO1-Software-Expansion-10

STMicroelectronics-UM3469-X-CUBE-ISO1-Software-Expansion-11

Setup yeX-CUBE-ISO1 yekuwedzera package
Iyo X-NUCLEO-ISO1A1 inofanirwa kugadziridzwa neiyo chaiyo jumper zvinzvimbo zvichienderana nekugadziriswa kwauri kuita bhodhi. Iwo mameseji ezvatinogona kuwedzera kutarisa mune Hardware manual.

  • Danho rechitatu. Bata iyo X-NUCLEO-ISO1A1 yekuwedzera bhodhi pamusoro peiyo STM32 Nucleo kuburikidza neiyo morphoconnectors.
    Kana uri kushandisa mapuranga maviri pamusoro peimwe, rongedza sepaMufananidzo 11.
  • Danho rechitatu. Batanidza STM32 Nucleo board kuPC ine USB tambo kuburikidza ne USB chinongedzo CN1 kuti ugone kusimba bhodhi.
  • Danho rechitatu. Simba X-NUCLEO-ISO1A1 bhodhi (s) yekuwedzera nekubatanidza J1 kune 24V DC magetsi. Kana ukashandisa mapuranga akaturikidzana, ita kuti mabhodhi ese ari maviri ane simba.
  • Danho rechitatu. Vhura yako yaunofarira toolchain (MDK-ARM kubva kuKeil, EWARM kubva kuIAR, kana STM32CubeIDE).
  • Danho rechitatu. Vhura purogiramu yepurogiramu uye ita shanduko dzinodiwa kubhodhi_config.h file maererano nekugadziriswa kwebhodhi (s) riri kushandiswa.
  • Danho rechitatu. Seta iyo yakakodzera yekushandisa kesi macro mu st_iso_app.c file kana kufonera iyo inodiwa kese yekushandisa uchishandisa ST_ISO_APP_SelectUseCase function in main.c file pamwe chete nerimwe basa rinodiwa.
  • Danho rechitatu. Vaka purojekiti kuunganidza zvese files uye kurodha kodhi yakaunganidzwa mundangariro yeSTM32 Nucleo board.
  • Danho rechitatu. Mhanya kodhi pane STM32 Nucleo board uye simbisa maitiro anotarisirwa.

Nhoroondo yekudzokorora
Tafura 4. Document revision history

Date Kudzokorora Kuchinja
14-Chivabvu-2025 1 Kusunungurwa kwekutanga.

CHIZIVISO CHINOKOSHA – VERENGA ZVAKANAKA

STMicroelectronics NV nevatsigiri vayo (“ST”) vanochengeta kodzero yekuita shanduko, kugadzirisa, kuvandudza, gadziridzo, uye kuvandudza kune ST zvigadzirwa uye/kana kugwaro iri chero nguva pasina chiziviso. Vatengi vanofanirwa kuwana ruzivo rwazvino rwakakodzera pane zvigadzirwa zveST vasati vaisa maodha. Zvigadzirwa zveST zvinotengeswa zvichiteerana ne ST zvirevo uye mamiriro ekutengesa aripo panguva yekuodha kubvuma.

Vatengi ndivo vane basa rekusarudza, kusarudza, uye kushandiswa kweST zvigadzirwa uye ST haitore mhosva yerubatsiro rwekushandisa kana dhizaini yezvigadzirwa zvevatengi.
Hapana rezinesi, kutaura kana kurehwa, kune chero kodzero yepfuma inopihwa neST muno.
Kutengeswazve kwezvigadzirwa zveST zvine zvipimo zvakasiyana neruzivo rwataurwa pano kuchabvisa chero waranti yakapihwa neST yechigadzirwa chakadaro.

ST uye ST logo zviratidzo zve ST. Kuti uwane rumwe ruzivo nezve ST trademarks, tarisa kune www.st.com/trademarks. Zvese zvimwe zvigadzirwa kana sevhisi mazita zvinhu zvevaridzi vazvo.
Ruzivo rwuri mugwaro rino rinotsiva uye kutsiva ruzivo rwakambopihwa mune chero shanduro dzekare dzegwaro iri.
© 2025 STMicroelectronics – Kodzero dzese dzakachengetwa

Zvinyorwa / Zvishandiso

STMicroelectronics UM3469 X-CUBE-ISO1 Kuwedzera kweSoftware [pdf] User Manual
X-NUCLEO-ISO1A1, NUCLEO-G071RB, UM3469 X-CUBE-ISO1 Kuwedzera Kwesoftware, UM3469, X-CUBE-ISO1 Kuwedzera Kwesoftware, Kuwedzera Kwesoftware.

References

Siya mhinduro

Yako email kero haizoburitswa. Nzvimbo dzinodiwa dzakamakwa *