Rozširujúca doska ST X-NUCLEO-53L1A2 -- Konfigurácie prerušení

UM2606
Návod na použitie

Začíname s IOTA Distributed Ledger
Rozšírenie technologického softvéru pre STM32Cube

Úvod

The X-CUBE-IOTA1 rozširujúci softvérový balík pre STM32 Cube beží na STM32 a obsahuje middleware, ktorý umožňuje funkcie IOTA Distributed Ledger Technology (DLT).
IOTA DLT je vrstva zúčtovania transakcií a prenosu dát pre internet vecí (IoT). IOTA umožňuje ľuďom a strojom prevádzať peniaze a/alebo údaje bez akýchkoľvek transakčných poplatkov v dôveryhodnom, decentralizovanom prostredí bez povolení. Táto technológia dokonca umožňuje mikroplatby bez potreby dôveryhodného sprostredkovateľa akéhokoľvek druhu. Rozšírenie je postavené na softvérovej technológii STM32Cube, ktorá uľahčuje prenosnosť medzi rôznymi mikrokontrolérmi STM32. Aktuálna verzia softvéru beží na B-L4S5I-IOT01A Discovery kit pre IoT uzol a pripája sa k internetu cez pripojené Wi-Fi rozhranie.

SÚVISIACE ODKAZY

Navštívte ekosystém STM32Cube web na stránke www.st.com, kde nájdete ďalšie informácie
https://www.iota.org/get-started/what-is-iota
https://docs.iota.org/docs/getting-started/1.1/introduction/overview
https://iota-beginners-guide.com
https://chrysalis.docs.iota.org
https://iota-beginners-guide.com/future-of-iota/iota-1-5-chrysalis
https://www.boazbarak.org/cs127/Projects/iota.pdf

Skratky a skratky

Tabuľka 1. Zoznam akronymov

Skratka Popis
DLT Technológia distribuovanej účtovnej knihy
IDE Integrované vývojové prostredie
IoT Internet vecí
PoW Doklad o práci

X-CUBE-IOTA1 softvérové ​​rozšírenie pre STM32Cube

Koniecview

The X-CUBE-IOTA1 softvérový balík sa rozširuje STM32 Cube funkčnosť s nasledujúcimi kľúčovými vlastnosťami:

  • Kompletný firmvér na vytváranie aplikácií IOTA DLT pre dosky založené na STM32
  • Middleware knižnice obsahujúce:
    – FreeRTOS
    - Správa Wi-Fi
    – šifrovanie, hashovanie, overovanie správ a digitálne podpisovanie (Cryptolib)
    – zabezpečenie na úrovni transportu (MbedTLS)
    – IOTA Client API na interakciu s Tangle
  • Kompletný ovládač na vytváranie aplikácií s prístupom k senzorom pohybu a prostredia
  • Exampsúbory, ktoré vám pomôžu pochopiť, ako vyvinúť klientsku aplikáciu IOTA DLT
  • Jednoduchá prenosnosť medzi rôznymi rodinami MCU vďaka STM32Cube
  • Bezplatné, užívateľsky prívetivé licenčné podmienky

Rozšírenie softvéru poskytuje middleware, ktorý umožňuje IOTA DLT na mikrokontroléri STM32. IOTA DLT je vrstva zúčtovania transakcií a prenosu dát pre internet vecí (IoT). IOTA umožňuje ľuďom a strojom prevádzať peniaze a/alebo údaje bez akýchkoľvek transakčných poplatkov v dôveryhodnom, decentralizovanom prostredí bez povolenia. Táto technológia dokonca umožňuje mikroplatby bez potreby dôveryhodného sprostredkovateľa akéhokoľvek druhu.

IOTA 1.0

Distributed Ledger Technologies (DLT) sú postavené na sieti uzlov, ktorá udržiava distribuovanú účtovnú knihu, čo je kryptograficky zabezpečená distribuovaná databáza na zaznamenávanie transakcií. Uzly vydávajú transakcie prostredníctvom konsenzuálneho protokolu.
IOTA je technológia distribuovanej účtovnej knihy špeciálne navrhnutá pre IoT.
Distribuovaná účtovná kniha IOTA sa nazýva spleť a je vytvorená transakciami vydanými uzlami v sieti IOTA.
Na zverejnenie transakcie v spleti musí uzol:

  1. overiť dve neschválené transakcie nazývané tipy
  2. vytvoriť a podpísať novú transakciu
  3. vykonať dostatočný dôkaz o práci
  4. vysielať novú transakciu do siete IOTA

Transakcia je pripojená k spleti spolu s dvoma referenciami, ktoré ukazujú na overené transakcie.
Táto štruktúra môže byť modelovaná ako orientovaný acyklický graf, kde vrcholy predstavujú jednotlivé transakcie a hrany predstavujú referencie medzi pármi transakcií.
Transakcia genézy je v koreni spleti a zahŕňa všetky dostupné tokeny IOTA, nazývané iotas.
IOTA 1.0 používa dosť nekonvenčný implementačný prístup založený na trinárnej reprezentácii: každý prvok v IOTA je opísaný pomocou trits = -1, 0, 1 namiesto bitov a trytes 3 trits namiesto bajtov. Tryte je reprezentovaný ako celé číslo od -13 do 13, zakódované pomocou písmen (AZ) a čísla 9.
IOTA 1.5 (Chrysalis) nahrádza rozloženie trinárnych transakcií binárnou štruktúrou.
Sieť IOTA zahŕňa uzly a klientov. Uzol je pripojený k rovesníkom v sieti a ukladá kópiu spleti. Klient je zariadenie so semenom, ktoré sa používa na vytváranie adries a podpisov.
Klient vytvára a podpisuje transakcie a odosiela ich do uzla, aby ich sieť mohla overiť a uložiť. Výberové transakcie musia obsahovať platný podpis. Keď sa transakcia považuje za platnú, uzol ju pridá do svojej účtovnej knihy, aktualizuje zostatky dotknutých adries a odošle transakciu svojim susedom.

IOTA 1.5 – Chrysalis

Cieľom IOTA Foundation je optimalizovať hlavnú sieť IOTA pred Coordicide a ponúknuť podnikové riešenie pre ekosystém IOTA. Dosahuje sa to prechodnou aktualizáciou s názvom Chrysalis. Hlavné vylepšenia predstavené Chrysalis sú:

  • Opätovne použiteľné adresy: prijatie podpisovej schémy Ed25519, ktorá nahrádza Winternitzovu schému jedného taktu (W-OTS), umožňuje používateľom bezpečne posielať tokeny z rovnakej adresy niekoľkokrát;
  • Už žiadne zväzky: IOTA 1.0 používa na vytváranie prevodov koncept zväzkov. Balíky sú množinou transakcií, ktoré sú navzájom prepojené ich koreňovou referenciou (kmeňom). S aktualizáciou IOTA 1.5 je stará konštrukcia zväzku odstránená a nahradená jednoduchšími atómovými transakciami. Vrchol Tangle je reprezentovaný správou, čo je druh kontajnera, ktorý môže mať ľubovoľné užitočné zaťaženie (tj užitočné zaťaženie tokenu alebo užitočné zaťaženie indexácie);
  • Model UTXO: pôvodne IOTA 1.0 používala model založený na účtoch na sledovanie jednotlivých tokenov IOTA: každá adresa IOTA obsahovala určitý počet tokenov a súhrnný počet tokenov zo všetkých adries IOTA sa rovnal celkovej ponuke. Namiesto toho IOTA 1.5 používa model nevyčerpaných transakcií alebo UTXO, založený na myšlienke sledovania nevyčerpaných množstiev tokenov prostredníctvom dátovej štruktúry nazývanej výstup;
  • Až 8 rodičov: s IOTA 1.0 ste vždy museli odkazovať na 2 rodičovské transakcie. S Chrysalis sa zavádza väčší počet referenčných rodičovských uzlov (až 8). Na dosiahnutie najlepších výsledkov sa odporúčajú aspoň 2 jedineční rodičia naraz.

SÚVISIACE ODKAZY
Ďalšie informácie o Chrysalis nájdete na tejto stránke dokumentácie

Doklad o práci

Protokol IOTA používa Proof-of-Work ako prostriedok na obmedzenie rýchlosti siete.
IOTA 1.0 používal Curl-P-81 trinárna hashovacia funkcia a vyžadovala hash so zodpovedajúcim počtom koncových nulových tritov na vydanie transakcie do Tangle.
S Chrysalis je možné vydávať binárne správy ľubovoľnej veľkosti. Tento RFC popisuje, ako prispôsobiť existujúci mechanizmus PoW novým požiadavkám. Jeho cieľom je čo najmenej narušiť súčasný mechanizmus PoW.

Architektúra

Toto rozšírenie STM32Cube umožňuje vývoj aplikácií pristupujúcich a využívajúcich middleware IOTA DLT.
Je založený na hardvérovej abstraktnej vrstve STM32CubeHAL pre mikrokontrolér STM32 a rozširuje STM32Cube o špecifický balík podpory dosky (BSP) pre rozširujúcu dosku mikrofónu a midlvérové ​​komponenty na spracovanie zvuku a USB komunikáciu s PC.
Softvérové ​​vrstvy používané aplikačným softvérom na prístup a používanie rozširovacej dosky mikrofónu sú:

  • Vrstva HAL STM32Cube: poskytuje generickú, viacinštanciu, sadu API na interakciu s hornými vrstvami (aplikácia, knižnice a zásobníky). Pozostáva z generických a rozširujúcich API založených na spoločnej architektúre, ktorá umožňuje iným vrstvám, ako je vrstva middleware, fungovať bez špecifických hardvérových konfigurácií mikrokontrolérových jednotiek (MCU). Táto štruktúra zlepšuje opätovnú použiteľnosť kódu knižnice a zaručuje jednoduchú prenosnosť zariadenia.
  • Vrstva Board Support Package (BSP): je sada rozhraní API, ktorá poskytuje programovacie rozhranie pre určité periférne zariadenia špecifické pre dosku (LED, používateľské tlačidlo atď.). Toto rozhranie tiež pomáha pri identifikácii konkrétnej verzie dosky a poskytuje podporu pre inicializáciu požadovaných periférií MCU a čítanie údajov.

Obrázok 1. Architektúra softvéru X-CUBE-IOTA1

Rozširujúci softvérový balík X-CUBE-IOTA1 -- Rozšírenie X-CUBE-IOTA1

Štruktúra priečinkov

Obrázok 2. Štruktúra priečinkov X-CUBE-IOTA1Rozširujúci softvérový balík X-CUBE-IOTA1 -- štruktúra priečinkov

V softvérovom balíku sú zahrnuté nasledujúce priečinky:

  • Dokumentácia: obsahuje skompilovaný HTML file generované zo zdrojového kódu a podrobnej dokumentácie softvérových komponentov a API
  • Ovládače: obsahuje ovládače HAL a ovládače špecifické pre dosky pre podporované dosky a hardvérové ​​platformy, vrátane ovládačov pre zabudované komponenty a vrstvu abstrakcie hardvéru nezávislú od dodávateľa CMSIS pre sériu procesorov ARM® Cortex®-M
  • Middleware: obsahuje knižnice obsahujúce FreeRTOS; Správa Wi-Fi; šifrovanie, hashovanie, overovanie správ a digitálne podpisovanie (Cryptolib); bezpečnosť na úrovni dopravy (MbedTLS); IOTA Client API na interakciu s Tangle
  • Projekty: obsahuje napramples, ktoré vám pomôžu pri vývoji klientskej aplikácie IOTA DLT pre podporovanú platformu založenú na STM32 (B-L4S5I-IOT01A), s tromi vývojovými prostrediami, IAR Embedded Workbench for ARM (EWARM), RealView Súprava na vývoj mikrokontrolérov (MDK-ARM) a STM32CubeIDE
API

Podrobné technické informácie s plnou funkciou používateľského API a popisom parametrov sú v skompilovanom HTML file v priečinku „Dokumentácia“.

Popis aplikácie IOTA-Client

Projekt files pre aplikáciu IOTA-Client nájdete v: $BASE_DIR\Projects\B-L4S5IIOT01A\Applications\IOTA-Client.
Projekty pripravené na zostavenie sú dostupné pre viacero IDE.
Používateľské rozhranie sa poskytuje cez sériový port a musí byť nakonfigurované s nasledujúcimi nastaveniami:

Obrázok 3. Tera Term – Nastavenie termináluRozširujúci softvérový balík X-CUBE-IOTA1 -- Nastavenie sériového portu

Obrázok 4. Tera Term – Nastavenie sériového portuRozširujúci softvérový balík X-CUBE-IOTA1 -- Nastavenie terminálu

Ak chcete spustiť aplikáciu, postupujte podľa nižšie uvedeného postupu.
Krok 1 Otvorte sériový terminál na vizualizáciu protokolu správ.
Krok 2 Zadajte konfiguráciu siete Wi-Fi (SSID, režim zabezpečenia a heslo).
Krok 3 Nastavte certifikáty koreňovej CA TLS.
Krok 4 Skopírujte a prilepte obsah Projects\B-L4S5I-IOT01A\Applications\IOTAClient\usertrust_thetangle.pem. Zariadenie ich používa na autentifikáciu vzdialených hostiteľov prostredníctvom TLS.

Poznámka: Po nakonfigurovaní parametrov ich môžete zmeniť reštartovaním dosky a stlačením užívateľského tlačidla (modré tlačidlo) do 5 sekúnd. Tieto údaje sa uložia do pamäte Flash.

Obrázok 5. Nastavenia parametrov Wi-Fi

X-CUBE-IOTA1 Expansion Software Package -- nastavenia parametrov Wi-FiKrok 5 Počkajte, kým sa zobrazí správa „Pokračujte stlačením ľubovoľného tlačidla“. Na obrazovke sa potom obnoví zoznam hlavných funkcií:

  • Pošlite všeobecnú správu o indexácii
  • Odošlite správu indexačného senzora (vrátane časuamp, teplota a vlhkosť)
  • Získajte rovnováhu
  • Odoslať transakciu
  • Ďalšie funkcie

Obrázok 6. Hlavné menu
Rozširujúci softvérový balík X-CUBE-IOTA1 -- Hlavná ponuka

Krok 6 Ak chcete otestovať jednu z nasledujúcich funkcií, vyberte možnosť 3:

Získajte informácie o uzle Získajte tipy
Získajte výstup Výstupy z adresy
Získajte rovnováhu Chyba odpovede
Získajte správu Odoslať správu
Nájsť správu Testovacia peňaženka
Nástroj na tvorbu správ Testovanie kryptomien

Obrázok 7. Ďalšie funkcieRozširujúci softvérový balík X-CUBE-IOTA1 – Ďalšie funkcie

SÚVISIACE ODKAZY
Ďalšie podrobnosti o funkciách IOTA 1.5 nájdete v dokumentácii IOTA C Client

Sprievodca nastavením systému

Popis hardvéru
Uzol IoT súpravy Discovery STM32L4+

Discovery kit B-L4S5I-IOT01A pre IoT uzol vám umožňuje vyvíjať aplikácie na priame pripojenie ku cloudovým serverom.
Súprava Discovery umožňuje širokú škálu aplikácií využívaním nízkoenergetickej komunikácie, viacsmerného snímania a funkcií radu STM4L32+ založených na jadre ARM®Cortex® -M4+.
Podporuje pripojenie Arduino Uno R3 a PMOD, ktoré poskytuje neobmedzené možnosti rozšírenia s veľkým výberom vyhradených prídavných dosiek.

Obrázok 8. Súprava B-L4S5I-IOT01A DiscoveryRozširujúci softvérový balík X-CUBE-IOTA1 -- B-L4S5I-IOT01A Discovery ki

Nastavenie hardvéru

Potrebné sú nasledujúce hardvérové ​​komponenty:

  1. jedna súprava STM32L4+ Discovery pre IoT uzol vybavený rozhraním Wi-Fi (objednací kód: B-L4S5I-IOT01A)
  2. kábel USB typu A na Mini-B USB typu B na pripojenie vyhľadávacej dosky STM32 k počítaču
Nastavenie softvéru

Nasledujúce softvérové ​​komponenty sú potrebné na nastavenie vývojového prostredia na vytváranie aplikácií IOTA DLT pre B-L4S5I-IOT01A:

  • X-CUBE-IOTA1: Firmvér a súvisiaca dokumentácia sú dostupné na st.com
  • reťazec vývojových nástrojov a kompilátor: rozširujúci softvér STM32Cube podporuje nasledujúce prostredia:
    – IAR Embedded Workbench for ARM ® (EWARM) toolchain + ST-LINK/V2
    – SkutočnéView Súprava nástrojov Microcontroller Development Kit (MDK-ARM) + ST-LINK/V2
    – STM32CubeIDE + ST-LINK/V2
Nastavenie systému

Doska B-L4S5I-IOT01A Discovery umožňuje využitie funkcií IOTA DLT. Doska integruje debugger/programátor ST-LINK/V2-1. Príslušnú verziu ovládača USB ST-LINK/V2-1 si môžete stiahnuť na adrese STSW-LINK009.

História revízií

Tabuľka 2. História revízií dokumentu

Dátum Revízia Zmeny
13-jún-19 1 Prvotné uvoľnenie
18-jún-19 2 Aktualizovaná časť 3.4.8.1 TX_IN a TX_OUT, časť 3.4.8.3 Posielanie údajov cez nulovú hodnotu
transakcie a časť 3.4.8.4 Zasielanie prostriedkov prevodnými transakciami.
6. mája 21 3 Aktualizovaný úvod, časť 1 Skratky a skratky, časť 2.1 Overview, Časť 2.1.1 IOTA 1.0, Časť 2.1.3 Potvrdenie o práci, Časť 2.2 Architektúra, Časť 2.3 Štruktúra priečinkov, Časť 3.2 Nastavenie hardvéru, Časť 3.3 Nastavenie softvéru a Časť 3.4 Nastavenie systému.
Odstránená časť 2 a nahradená odkazom v úvode.
Odstránená časť 3.1.2 Transakcie a balíky, časť 3.1.3 Účet a podpisy, časť
3.1.5 Hašovanie. Časť 3.4 Ako písať aplikácie a súvisiace podsekcie, Časť 3.5 Popis aplikácie IOTALightNode a súvisiace podsekcie a Časť 4.1.1 STM32
Platforma Nucleo Pridaná časť 2.1.2IOTA 1.5 – Chrysalis, časť 2.5 Popis aplikácie IOTA-Client, časť 2.4 API a časť 3.1.1 Uzol IoT súpravy STM32L4+ Discovery kit.

 

DÔLEŽITÉ UPOZORNENIE - PREČÍTAJTE SI POZORNE

Spoločnosť STMicroelectronics NV a jej dcérske spoločnosti („ST“) si vyhradzujú právo vykonávať zmeny, opravy, vylepšenia, úpravy a vylepšenia produktov ST a / alebo tohto dokumentu kedykoľvek a bez predchádzajúceho upozornenia. Kupujúci by mali pred zadaním objednávky získať najnovšie relevantné informácie o produktoch ST. Produkty ST sa predávajú v súlade s obchodnými podmienkami spoločnosti ST platnými v čase potvrdenia objednávky.

Kupujúci sú výlučne zodpovední za výber, výber a použitie produktov ST a spoločnosť ST nepreberá zodpovednosť za pomoc s aplikáciou ani za dizajn produktov kupujúcich.
Spoločnosť ST tu neudeľuje žiadnu licenciu, výslovnú ani implicitnú, na akékoľvek právo duševného vlastníctva.
Opätovný predaj produktov ST s ustanoveniami odlišnými od informácií uvedených v tomto dokumente ruší akúkoľvek záruku poskytnutú spoločnosťou ST na takýto produkt.
ST a logo ST sú ochranné známky spoločnosti ST. Ďalšie informácie o ochranných známkach ST nájdete na stránke www.st.com/trademarks. Všetky ostatné názvy produktov alebo služieb sú majetkom ich príslušných vlastníkov.
Informácie v tomto dokumente nahrádzajú a nahrádzajú informácie predtým uvedené v akýchkoľvek predchádzajúcich verziách tohto dokumentu.
© 2021 STMicroelectronics – Všetky práva vyhradené

Dokumenty / zdroje

Rozširujúci softvérový balík ST X-CUBE-IOTA1 pre STM32Cube [pdfPoužívateľská príručka
ST, X-CUBE-IOTA1, rozšírenie, softvérový balík, pre, STM32Cube

Referencie

Zanechajte komentár

Vaša emailová adresa nebude zverejnená. Povinné polia sú označené *