ST X-NUCLEO-53L1A2 bővítőkártya -- Megszakítási konfigurációk

UM2606
Felhasználói kézikönyv

Kezdő lépések az IOTA elosztott főkönyvvel
Technológiai szoftverbővítés az STM32Cube-hoz

Bevezetés

A X-CUBE-IOTA1 bővítő szoftvercsomag a STM32Cube STM32-n fut, és köztes szoftvert tartalmaz az IOTA Distributed Ledger Technology (DLT) funkcióinak engedélyezéséhez.
Az IOTA DLT egy tranzakcióelszámolási és adatátviteli réteg a dolgok internete (IoT) számára. Az IOTA lehetővé teszi, hogy az emberek és a gépek pénzt és/vagy adatokat utaljanak át tranzakciós díjak nélkül egy megbízható, engedély nélküli és decentralizált környezetben. Ez a technológia lehetővé teszi a mikrokifizetéseket is anélkül, hogy bármilyen megbízható közvetítőre lenne szükség. A bővítmény az STM32Cube szoftvertechnológiára épül, hogy megkönnyítse a hordozhatóságot a különböző STM32 mikrovezérlők között. A szoftver jelenlegi verziója fut a B-L4S5I-IOT01A Felfedezőkészlet IoT-csomóponthoz, és csatlakozik az internethez a mellékelt Wi-Fi interfészen keresztül.

KAPCSOLÓDÓ LINKEK

Látogassa meg az STM32Cube ökoszisztémát web a www.st.com oldalon további információkért
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

Mozaikszavak és rövidítések

1. táblázat A betűszavak listája

Betűszó Leírás
DLT Elosztott főkönyvi technológia
IDE Integrált fejlesztői környezet
IoT A dolgok internete
Hadifogoly Munka igazolása

X-CUBE-IOTA1 szoftverbővítés STM32Cube-hoz

Felettview

A X-CUBE-IOTA1 szoftvercsomag bővül STM32Cube funkcionalitás a következő főbb jellemzőkkel:

  • Teljes firmware IOTA DLT alkalmazások készítéséhez STM32 alapú kártyákhoz
  • Köztesszoftver-könyvtárak, amelyek a következőket tartalmazzák:
    – FreeRTOS
    - Wi-Fi kezelés
    - titkosítás, hash, üzenet hitelesítés és digitális aláírás (Cryptolib)
    - szállítási szintű biztonság (MbedTLS)
    – IOTA Client API a Tangle-lel való interakcióhoz
  • Teljes illesztőprogram a mozgás- és környezetérzékelőkhöz hozzáférő alkalmazások létrehozásához
  • Exampsegít megérteni, hogyan kell IOTA DLT Client alkalmazást fejleszteni
  • Könnyű hordozhatóság a különböző MCU-családok között az STM32Cube-nak köszönhetően
  • Ingyenes, felhasználóbarát licencfeltételek

A szoftverbővítés biztosítja a köztes szoftvert az IOTA DLT engedélyezéséhez egy STM32 mikrokontrolleren. Az IOTA DLT egy tranzakció-elszámolási és adatátviteli réteg a dolgok internete (IoT) számára. Az IOTA lehetővé teszi, hogy az emberek és a gépek pénzt és/vagy adatokat utaljanak át tranzakciós díjak nélkül egy megbízható, engedély nélküli és decentralizált környezetben. Ez a technológia lehetővé teszi a mikrofizetéseket is anélkül, hogy bármilyen megbízható közvetítőre lenne szükség.

IOTA 1.0

Az elosztott főkönyvi technológiák (DLT-k) olyan csomóponti hálózatra épülnek, amely egy elosztott főkönyvet tart fenn, amely egy kriptográfiailag védett, elosztott adatbázis a tranzakciók rögzítésére. A csomópontok konszenzusos protokollon keresztül adják ki a tranzakciókat.
Az IOTA egy elosztott főkönyvi technológia, amelyet kifejezetten az IoT-hez terveztek.
Az IOTA elosztott főkönyvet gubancnak nevezik, és az IOTA hálózat csomópontjai által kibocsátott tranzakciók hozzák létre.
Egy tranzakció közzétételéhez a gubancban a csomópontnak a következőket kell tennie:

  1. érvényesítsen két nem jóváhagyott tranzakciót, amelyeket tippeknek nevezünk
  2. hozza létre és írja alá az új tranzakciót
  3. végezzen elegendő munkabizonyítást
  4. sugározza az új tranzakciót az IOTA hálózatra

A tranzakció a gubanchoz van csatolva két hivatkozással együtt, amelyek az érvényesített tranzakciókra mutatnak.
Ez a struktúra irányított aciklikus gráfként modellezhető, ahol a csúcsok egyetlen tranzakciót, az élek pedig a tranzakciópárok közötti hivatkozásokat reprezentálják.
A genezis-tranzakció a gubancgyökérben található, és magában foglalja az összes elérhető IOTA tokent, úgynevezett iotas-t.
Az IOTA 1.0 meglehetősen szokatlan, hármas ábrázoláson alapuló megvalósítási megközelítést alkalmaz: az IOTA minden elemét a trits = -1, 0, 1 használatával írja le bitek helyett, és a 3 triteket a bájtok helyett. A tryte -13 és 13 közötti egész számként van ábrázolva, amelyet betűkkel (AZ) és 9-es számmal kódolnak.
Az IOTA 1.5 (Chrysalis) a hármas tranzakciós elrendezést bináris szerkezetre cseréli.
Az IOTA hálózat csomópontokat és ügyfeleket tartalmaz. Egy csomópont csatlakozik a hálózat egyenrangúihoz, és tárolja a gubanc másolatát. A kliens egy olyan eszköz, amelynek magja van címek és aláírások létrehozására.
Az ügyfél létrehozza és aláírja a tranzakciókat, majd elküldi azokat a csomópontnak, hogy a hálózat ellenőrizhesse és tárolhassa azokat. A visszavonási tranzakcióknak érvényes aláírást kell tartalmazniuk. Amikor egy tranzakció érvényesnek minősül, a csomópont hozzáadja azt a főkönyvéhez, frissíti az érintett címek egyenlegét, és továbbítja a tranzakciót a szomszédjainak.

IOTA 1.5 – Chrysalis

Az IOTA Alapítvány célja az IOTA fő hálózatának optimalizálása a Coordicide előtt, és vállalati használatra kész megoldást kínálni az IOTA ökoszisztéma számára. Ezt a Chrysalis nevű köztes frissítéssel érik el. A Chrysalis által bevezetett fő frissítések a következők:

  • Újrafelhasználható címek: a Winternitz egyszeri aláírási sémát (W-OTS) felváltó Ed25519 aláírási séma lehetővé teszi a felhasználók számára, hogy többször is biztonságosan küldjenek tokeneket ugyanarról a címről;
  • Nincs több köteg: Az IOTA 1.0 a kötegek fogalmát használja az átvitelek létrehozásához. A kötegek olyan tranzakciók halmaza, amelyeket gyökérhivatkozásuk (törzs) kapcsol össze. Az IOTA 1.5-ös frissítésével a régi kötegkonstrukciót eltávolítjuk, és az egyszerűbb Atomic-tranzakciókkal helyettesítjük. A Tangle csúcsot az Üzenet képviseli, amely egyfajta konténer, amelynek tetszőleges hasznos terhelése lehet (pl. Token hasznos terhelés vagy Indexálási rakomány);
  • UTXO-modell: eredetileg az IOTA 1.0 fiókalapú modellt használt az egyes IOTA-tokenek nyomon követésére: minden IOTA-cím több tokent tartalmazott, és az összes IOTA-címből származó tokenek összesített száma megegyezett a teljes kínálattal. Ehelyett az IOTA 1.5 az el nem költött tranzakciós kimeneti modellt (UTXO) használja, amely azon az elgondoláson alapul, hogy nyomon követi a tokenek el nem költött mennyiségét egy output nevű adatszerkezeten keresztül;
  • Legfeljebb 8 szülő: az IOTA 1.0 esetén mindig 2 szülőtranzakcióra kellett hivatkoznia. A Chrysalisnál nagyobb számú hivatkozott szülőcsomópont (legfeljebb 8) kerül bevezetésre. A legjobb eredmény elérése érdekében legalább 2 egyedi szülő ajánlott egyszerre.

KAPCSOLÓDÓ LINKEK
A Chrysalis-szal kapcsolatos további információkért tekintse meg ezt a dokumentációs oldalt

Munka igazolása

Az IOTA protokoll a Proof-of-Work funkciót használja a hálózat sebességkorlátozására.
Az IOTA 1.0 a C-t használtaurl-P-81 hármas hash függvény, és egy hashre volt szükség a megfelelő számú nulla trittel ahhoz, hogy tranzakciót adjanak ki a Tangle számára.
A Chrysalis segítségével tetszőleges méretű bináris üzeneteket lehet kiadni. Ez az RFC leírja, hogyan lehet a meglévő PoW-mechanizmust az új követelményekhez igazítani. Célja, hogy a lehető legkevésbé zavarja a jelenlegi PoW-mechanizmust.

Építészet

Ez az STM32Cube bővítmény lehetővé teszi az IOTA DLT köztes szoftverhez hozzáférő és azt használó alkalmazások fejlesztését.
Az STM32CubeHAL hardveres absztrakciós rétegen alapul az STM32 mikrokontrollerhez, és kibővíti az STM32Cube-ot egy speciális kártyatámogatási csomaggal (BSP) a mikrofonbővítő kártyához, valamint köztes szoftverkomponensekkel a hangfeldolgozáshoz és a PC-vel való USB-kommunikációhoz.
Az alkalmazásszoftver által a mikrofon bővítőkártya eléréséhez és használatához használt szoftverrétegek a következők:

  • STM32Cube HAL réteg: általános, többpéldányos API-készletet biztosít a felső rétegekkel (az alkalmazás, a könyvtárak és a veremek) való interakcióhoz. Általános és kiterjesztett API-kból áll, amelyek egy közös architektúrán alapulnak, amely lehetővé teszi, hogy más rétegek, például a köztes szoftverréteg speciális mikrovezérlő egység (MCU) hardverkonfigurációi nélkül működjenek. Ez a struktúra javítja a könyvtárkód újrafelhasználhatóságát és garantálja az eszköz könnyű hordozhatóságát.
  • Board Support Package (BSP) réteg: API-k halmaza, amely programozási felületet biztosít bizonyos kártyaspecifikus perifériákhoz (LED, felhasználói gomb stb.). Ez az interfész segít az adott kártyaverzió azonosításában, és támogatja a szükséges MCU perifériák inicializálását és az adatok olvasását.

1. ábra X-CUBE-IOTA1 szoftver architektúra

X-CUBE-IOTA1 bővítő szoftvercsomag -- X-CUBE-IOTA1 bővítő

Mappa felépítése

2. ábra X-CUBE-IOTA1 mappaszerkezetX-CUBE-IOTA1 bővítő szoftvercsomag -- mappastruktúra

A szoftvercsomag a következő mappákat tartalmazza:

  • Dokumentáció: lefordított HTML-t tartalmaz file a forráskódból és a szoftverösszetevők és API-k részletes dokumentációjából generált
  • Illesztőprogramok: tartalmazza a HAL illesztőprogramokat és a kártyaspecifikus illesztőprogramokat a támogatott kártyákhoz és hardverplatformokhoz, beleértve a fedélzeti összetevőkhöz tartozókat és az ARM® Cortex®-M processzorsorozathoz tartozó CMSIS gyártótól független hardverabsztrakciós réteget.
  • Köztes szoftverek: FreeRTOS-t tartalmazó könyvtárakat tartalmaz; Wi-Fi menedzsment; titkosítás, kivonatolás, üzenethitelesítés és digitális aláírás (Cryptolib); szállítási szintű biztonság (MbedTLS); IOTA Client API a Tangle-lel való interakcióhoz
  • Projektek: tartalmaz plampsegítségével IOTA DLT Client alkalmazást fejleszthet a támogatott STM32 alapú platformhoz (B-L4S5I-IOT01A), három fejlesztői környezettel, IAR Embedded Workbench for ARM (EWARM), RealView Mikrokontroller fejlesztőkészlet (MDK-ARM) és STM32CubeIDE
API

A részletes műszaki információk teljes felhasználói API funkcióval és paraméterleírással egy összeállított HTML-ben találhatók file a „Dokumentáció” mappában.

IOTA-Client alkalmazás leírása

A projekt fileAz IOTA-Client alkalmazáshoz tartozó s a következő helyen található: $BASE_DIR\Projects\B-L4S5IIOT01A\Applications\IOTA-Client.
Az építésre kész projektek több IDE-hez is elérhetők.
A felhasználói felület soros porton keresztül érhető el, és a következő beállításokkal kell konfigurálni:

3. ábra Tera Term – Terminál beállításaX-CUBE-IOTA1 bővítő szoftvercsomag -- Soros port beállítása

4. ábra Tera Term – Soros port beállításaX-CUBE-IOTA1 bővítő szoftvercsomag -- Terminál beállítása

Az alkalmazás futtatásához kövesse az alábbi eljárást.
1. lépés Nyisson meg egy soros terminált az üzenetnapló megjelenítéséhez.
2. lépés Adja meg a Wi-Fi hálózat konfigurációját (SSID, biztonsági mód és jelszó).
3. lépés Állítsa be a TLS gyökér CA-tanúsítványokat.
4. lépés Másolja és illessze be a Projects\B-L4S5I-IOT01A\Applications\IOTAClient\usertrust_thetangle.pem fájl tartalmát. Az eszköz ezek segítségével hitelesíti a távoli gazdagépeket TLS-en keresztül.

Jegyzet: A paraméterek konfigurálása után a tábla újraindításával és a Felhasználó gomb (kék gomb) 5 másodpercen belüli megnyomásával módosíthatók. Ezeket az adatokat a rendszer a Flash memóriába menti.

5. ábra: Wi-Fi paraméterek beállításai

X-CUBE-IOTA1 bővítő szoftvercsomag -- Wi-Fi paraméterek beállításai5. lépés Várja meg, amíg megjelenik a „Nyomja meg bármelyik gombot a folytatáshoz” üzenet. A képernyő ezután frissül a fő funkciók listájával:

  • Általános indexelési üzenet küldése
  • Indexálási érzékelő üzenet küldése (beleértve a timestamp, hőmérséklet és páratartalom)
  • Szerezzen egyensúlyt
  • Tranzakció küldése
  • Egyéb funkciók

6. ábra Főmenü
X-CUBE-IOTA1 bővítő szoftvercsomag -- Főmenü

6. lépés Válassza a 3. lehetőséget a következő funkciók egyikének teszteléséhez:

Szerezze meg a csomóponti információkat Tippeket kaphat
Kimenet beszerzése Kimenetek címről
Szerezzen egyensúlyt Válasz hiba
Üzenet fogadása Üzenet küldése
Üzenet keresése Teszt pénztárca
Üzenetkészítő Tesztelje a kriptot

7. ábra Egyéb funkciókX-CUBE-IOTA1 bővítő szoftvercsomag - Egyéb funkciók

KAPCSOLÓDÓ LINKEK
Az IOTA 1.5 funkcióival kapcsolatos további részletekért tekintse meg az IOTA C Client dokumentációját

Rendszerbeállítási útmutató

Hardver leírása
STM32L4+ Discovery kit IoT csomópont

A B-L4S5I-IOT01A Discovery készlet IoT-csomóponthoz lehetővé teszi alkalmazások fejlesztését a felhőkiszolgálókhoz való közvetlen csatlakozáshoz.
A Discovery készlet sokféle alkalmazást tesz lehetővé az alacsony fogyasztású kommunikáció, a többirányú érzékelés és az ARM®Cortex® -M4+ magalapú STM32L4+ sorozat funkcióinak kihasználásával.
Támogatja az Arduino Uno R3 és a PMOD csatlakozást, amely korlátlan bővítési lehetőségeket biztosít a dedikált kiegészítő kártyák nagy választékával.

8. ábra: B-L4S5I-IOT01A Discovery kitX-CUBE-IOTA1 bővítő szoftvercsomag -- B-L4S5I-IOT01A Discovery ki

Hardver beállítása

A következő hardverelemekre van szükség:

  1. egy STM32L4+ Discovery készlet Wi-Fi interfésszel felszerelt IoT-csomóponthoz (rendelési kód: B-L4S5I-IOT01A)
  2. egy A–Mini-B típusú USB B típusú USB-kábel az STM32 felderítőkártya számítógéphez történő csatlakoztatásához
Szoftver beállítása

A következő szoftverösszetevőkre van szükség a B-L4S5I-IOT01A IOTA DLT-alkalmazások létrehozásához szükséges fejlesztői környezet beállításához:

  • X-CUBE-IOTA1: a firmware és a kapcsolódó dokumentáció elérhető az st.com webhelyen
  • fejlesztői eszközlánc és fordító: az STM32Cube bővítőszoftver a következő környezeteket támogatja:
    – IAR Embedded Workbench for ARM ® (EWARM) eszközlánc + ST-LINK/V2
    – IgaziView Mikrokontroller fejlesztőkészlet (MDK-ARM) eszközlánc + ST-LINK/V2
    – STM32CubeIDE + ST-LINK/V2
Rendszerbeállítás

A B-L4S5I-IOT01A Discovery kártya lehetővé teszi az IOTA DLT funkcióinak kihasználását. Az alaplap integrálja az ST-LINK/V2-1 hibakeresőt/programozót. Az ST-LINK/V2-1 USB illesztőprogram megfelelő verzióját az STSW-LINK009 címről töltheti le.

Revíziótörténet

2. táblázat: Dokumentum felülvizsgálati előzmények

Dátum Felülvizsgálat Változások
13-június 19 1 Kezdeti kiadás
18-június 19 2 Frissített 3.4.8.1. szakasz TX_IN és TX_OUT, 3.4.8.3. szakasz Adatküldés nulla értéken keresztül
tranzakciók és a 3.4.8.4 Pénzküldés átutalási tranzakciókon keresztül.
május 6-21 3 Frissített bevezető, 1. szakasz Betűszavak és rövidítések, 2.1. szakasz végeview, 2.1.1. szakasz IOTA 1.0, 2.1.3. szakasz Munkabizonyítvány, 2.2. szakasz Architektúra, 2.3. szakasz Mappaszerkezet, 3.2. szakasz Hardverbeállítás, 3.3. szakasz Szoftverbeállítás és 3.4. szakasz Rendszerbeállítás.
Eltávolítottuk a 2. szakaszt, és helyébe egy hivatkozás került a Bevezetőben.
Eltávolítva: 3.1.2. Tranzakciók és csomagok, 3.1.3. Fiók és aláírások szakasz
3.1.5 Kivonatolás. 3.4. szakasz Alkalmazások és kapcsolódó alszakaszok írása, 3.5. IOTALightNode alkalmazásleírás és kapcsolódó alszakaszok és 4.1.1. szakasz STM32
Nucleo platform hozzáadva: 2.1.2 IOTA 1.5 – Chrysalis, 2.5 szakasz IOTA-Client alkalmazás leírása, 2.4 API és 3.1.1 szakasz STM32L4+ Discovery kit IoT csomópont.

 

FONTOS FIGYELMEZTETÉS - KÉRJÜK, ÓVOSAN OLVASSA EL

Az STMicroelectronics NV és leányvállalatai („ST”) fenntartják a jogot, hogy az ST termékeket és / vagy ezt a dokumentumot bármikor, előzetes értesítés nélkül módosítsák, javítsák, javítsák, módosítsák és javítsák. A vásárlóknak a megrendelések leadása előtt meg kell szerezniük a legfrissebb releváns információkat az ST termékekről. Az ST termékeket az ST értékesítési feltételeinek megfelelően értékesítik, amelyek a megrendelés visszaigazolásakor érvényben voltak.

Az ST termékek kiválasztásáért, kiválasztásáért és használatáért kizárólag a vásárlók felelnek, és az ST nem vállal felelősséget az alkalmazással kapcsolatos segítségért vagy a vásárlók termékeinek tervezéséért.
Az ST jelen dokumentumban semmilyen szellemi tulajdonjogra nem ad kifejezett vagy hallgatólagos licencet.
Az ST-termékeknek az itt leírtaktól eltérő rendelkezésekkel történő viszonteladása érvénytelenít minden, az ST által az ilyen termékre adott garanciát.
Az ST és az ST logó az ST védjegyei. Az ST védjegyekkel kapcsolatos további információkért látogasson el a www.st.com/trademarks webhelyre. Az összes többi termék- vagy szolgáltatásnév a megfelelő tulajdonosok tulajdona.
A jelen dokumentumban szereplő információk felülírják és felváltják a jelen dokumentum bármely korábbi verziójában korábban megadott információkat.
© 2021 STMicroelectronics – Minden jog fenntartva

Dokumentumok / Források

ST X-CUBE-IOTA1 bővítő szoftvercsomag STM32Cube-hoz [pdf] Felhasználói kézikönyv
ST, X-CUBE-IOTA1, Bővítés, Szoftvercsomag, STM32Cube

Hivatkozások

Hagyj megjegyzést

E-mail címét nem tesszük közzé. A kötelező mezők meg vannak jelölve *