Méretezhető mikrovezérlők használata a tervezési rugalmasság eléréséhez
Contributed By DigiKey's North American Editors
2024-05-15
Ahogy a fejlett funkciók, például a mesterséges intelligencia (MI vagy az angol artificial intelligence kifejezésből alkotott betűszóval AI) és az összetett, grafikában gazdag kezelőfelületek (HMI, human-machine interface) egyre gyakoribbá válnak a készülékekben, a terméktervezők egyre nagyobb teljesítményű mikrovezérlőket (MCU) keresnek. A tervezőket azonban olyan költségoptimalizált termékek létrehozására is fel szokták kérni, amelyek nem használnak ilyen csilivili funkciókat. Ezek az egymásnak ellentmondó elvárások elengedhetetlenné teszik, hogy olyan mikrovezérlőt válasszanak, amely könnyen méretezhető a különböző piaci igényeknek megfelelően.
Az egyre gyorsuló újítások csak fokozzák ezt a nyomást. A használati követelmények váratlanul megváltozhatnak, ezért fontos, hogy könnyen hozzá lehessen férni alternatív mikrovezérlőkhöz. Tekintettel kell lenni az időtállóságra és az újrafelhasználásra is. Jelentős idő- és költségmegtakarítás érhető el, ha a készülék egyes elemeit újra fel lehet használni más projektekhez.
Ezen kihívások kezelésének az egyik módja az, hogy olyan mikrovezérlő termékcsaládot választunk, amelynek kellően változatos tagjai vannak. Jó példa erre az STMicroelectronics cég STM32H7 termékcsaládja. Ez a termékcsalád az értékoptimalizált, belépő szintű 32 bites mikrovezérlőktől a gazdag funkciókészlettel rendelkező kétmagos mikrovezérlőkig terjed.
Ez a cikk a mikrovezérlő termékcsalád kiválasztásakor figyelembe veendő szempontokat mutatja be az STM32H7 termékcsalád jellemzőinek példáján keresztül. Ezt követően ismerteti az STM32H7 mikrovezérlőkhöz elérhető fejlesztőkártyákat és eszközöket, és elmagyarázza, hogyan lehet a projekteket elkezdeni ezen infrastruktúra használatával.
A mikrovezérlő termékcsaládot rugalmassá és méretezhetővé tevő tényezők
Amikor rugalmas mikrovezérlő termékcsaládot keresünk, számos tényezőt kell figyelembe vennünk. Különösen fontos, hogy a teljesítmény- és feszültségszintek széles skálájából lehessen választani. A legelőnyösebb egy olyan mikrovezérlő termékcsalád, amelyet sokféle órajellel lehet használni, és a magjai különböző célokra vannak optimalizálva, például található benne egy kis fogyasztásra optimalizált ARM® Cortex®-M4 és egy nagy teljesítményre optimalizált ARM Cortex-M7 mag is.
A termékcsaládnak alapvető feldolgozási képességekkel rendelkező mikrovezérlőket és kibővített képességekkel ellátott változatokat is tartalmaznia kell. Számos rendszer igényel adatvédelmet és biztonságos kommunikációt. Ezekhez a felhasználási területekhez elengedhetetlenek az olyan funkciók, mint a hardveralapú titkosítás, a biztonságos rendszerindítás és a titkosításgyorsítók. Hasonlóképpen nélkülözhetetlenek a sok adat feldolgozásával járó eszközökhöz a digitális jelfeldolgozó processzor (DSP) és a lebegőpontos utasítások.
A mikrovezérlő termékcsaládnak ezenkívül a RAM- és flashmemória-méretek széles skáláját kell kínálnia, hogy az egyszerű alkalmazásoktól a kiterjedt szoftveres keretrendszereket vagy adattárolást igénylő programok futtatásáig mindenre alkalmas legyen. A mikrovezérlőket külső memóriacsatolókkal is ki kell egészíteni a belső memóriakapacitást meghaladó alkalmazásokhoz szükséges méretezhetőség biztosításához.
Végül pedig a több perifériával ellátott mikrovezérlő termékcsaládok több felhasználási területre is alkalmasak. Alapvető fontosságú annak biztosítása, hogy a mikrovezérlő termékcsalád tartalmazzon olyan korszerű be- és kimeneti lehetőségeket, mint az USB, az Ethernet, a Bluetooth és a wifi, mivel ezeknek a csatolóknak a későbbi bővítés során történő hozzáadásakor nehézségekbe ütközhetünk. Ideális esetben a kiválasztott termékcsalád lábkompatbilitást kínál a teljes termékpalettáján, hogy lehetőség legyen a hardver továbbfejlesztésére vagy visszafejlesztésére a nyomtatott áramköri lap (nyák) jelentősebb áttervezése nélkül.
A fejlesztőeszközöknek szoftveres szempontból a teljes mikrovezérlő termékcsaládot támogatniuk kell. A fejlesztés felgyorsítása érdekében egységes szoftveres alkalmazásprogramozási felületre (API, application programming interface), valamint megbízható könyvtárakra, köztes szoftverekre és valós idejű operációs rendszerre (RTOS, real-time operating system) van szükség.
STM32H7: esettanulmány a sokoldalúságról
Az STMicroelectronics cég STM32H7 sorozata remek példa egy olyan mikrovezérlő termékcsaládra, amely megfelel ezeknek a szempontoknak. Amint az 1. táblázat mutatja, a termékcsalád nagymértékben méretezhető, és az ARM Cortex-M7 mag köré épülő termékpaletta alapszintű és fejlett mikrovezérlőket egyaránt tartalmaz. A sorozatnak négy termékvonala van, amelyek mindegyike különböző felhasználási területekre van optimalizálva.
|
1. táblázat: A négy STM32H7-termékvonal legfontosabb jellemzői (táblázat: a szerző, az STMicroelectronics forrásanyagának felhasználásával)
A Value Line termékvonal 280 és 550 MHz közötti órajellel kapható, és 128 kB beágyazott flashmemóriával és 1 MB RAM-mal van felszerelve. Számos kommunikációs csatolót és külső memóriabővítést támogat, így költségtakarékos megoldást kínál teljesítményközpontú rendszerekhez. Ilyen mikrovezérlő például az STM32H750VBT6, amely 14 mm × 14 mm-es 100-LQFP tokozásban kapható.
Az egymagos termékvonal szintén 280 és 550 MHz közötti órajellel működik. Akár 2 MB flashmemóriával és 1,4 MB RAM-mal van ellátva, így olyan felhasználási területekre is megfelel, amelyek gazdag felhasználói felületet és valós idejű vezérlést igényelnek. Ilyen mikrovezérlő például az STM32H743IIK6, amely 10 mm × 10 mm-es 201-UFBGA tokozásban kapható.
A kétmagos termékvonal egy hatásfokra optimalizált másodlagos ARM Cortex-M4 magot is tartalmaz. A beépített kapcsolóüzemű tápegység javítja a hatásfokot. A további korszerű perifériák között megtalálható a TFT-LCD, a MIPI-DSI és a hardveres JPEG-kodek is. Egy ilyen jellegzetes mikrovezérlő például az STM32H747AII6, amely 7 mm × 7 mm-es 169-UFBGA tokozásban kapható.
A BootFlash termékvonal kiemelkedik nagy teljesítményével, akár 600 MHz-es órajelet is elérve. Úgy tervezték, hogy megkönnyítse a valós idejű helyben futtatható (XiP, execute-in-place) alkalmazások futtatását, és a 620 kB RAM mellett 64 kB rendszerindító flashmemóriával (innen a BootFlash név) van ellátva. Ezenfelül a termékcsalád egyes típusai választhatóan NeoChrom GPU-val (grafikai processzorral) is fel vannak szerelve a jobb grafikus gyorsítás érdekében. A termékvonal egyik jellemző darabja az STM32H7R3Z8J6 mikrovezérlő, amely 10 mm × 10 mm méretű 144-UFBGA tokozásban kapható.
Az STM32F4 és STM32F7 termékcsaláddal való kompatibilitás előnyei
Az STM32H7 az STMicroelectronics mikrovezérlők kiterjedtebb termékválasztékának része, és a leggyakoribb tokozások esetében lábkompatibilis a testvér termékcsaládokkal, az STM32F4 és az STM32F7 termékcsaláddal. Ezen mikrovezérlők mindegyike ARM Cortex-M magokon alapul, és hasonló perifériákat és általános célú be- és kimeneti (GPIO) lábelrendezést használnak. A közös vonások megkönnyítik a tervezők számára a mikrovezérlők közötti, a hardver jelentős módosítása nélkül történő átállást. Ez a kompatibilitás csökkentheti a fejlesztési időt és a költségeket egy adott termék továbbfejlesztése során, illetve amikor az egyes termékcsaládok eltérő képességei alapján terveznek új termékeket.
Emellett az összes mikrovezérlő mögött ugyanaz a szoftverfejlesztői ökoszisztéma áll, beleértve a beállításra és kezdetikód-előállításra szolgáló STM32CubeMX, valamint a fejlesztési feladatokra és hibakeresésre használható STM32CubeIDE segédprogramot. Ez a kompatibilitás biztosítja, hogy a szoftverösszetevőket, a köztes szoftvereket és az alkalmazáskódot újra fel lehessen használni az összes termékcsaládra készült valamennyi projektben, ami még tovább gyorsítja a fejlesztési ciklusokat.
Ismerkedés az STM32H7 sorozatú mikrovezérlőkkel
Az STM32H7 mikrovezérlőkkel való ismerkedés néhány kulcsfontosságú lépést, valamint a fejlesztőkártyák és -eszközök hatékony használatának megismerését jelenti. A következő útmutató lépésről lépésre ismerteti, hogyan lehet elkezdeni a fejlesztést ezeket a nagy teljesítményű mikrovezérlőket használva.
1. Fejlesztőkártya-választás
Az ismerkedőkészletek (Discovery kit) ideálisak a kezdeti ismerkedéshez, mivel beépített hibakereső és programozómodullal, valamint általában a kártyán elhelyezett különféle felhasználói LED-eket, gombokat, érzékelőket és csatlakozási lehetőségeket is tartalmaznak. A Nucleo kártyák, mint például a NUCLEO-F767ZI (1. ábra), jó egyensúlyt kínálnak a rugalmasság és a megfizethetőség között. A könnyű bővítés érdekében Arduino Uno-kompatibilisek, és STLINK-illesztőfelülettel vannak ellátva a hibakereső és programozómodulokkal való használathoz.
1. ábra: A NUCLEO-F767ZI fejlesztőkártya egyszerű, de sokrétűen használható kiindulópont a kísérletezéshez (kép: STMicroelectronics)
A fejlesztőkártyák a perifériák és csatlakozási lehetőségek átfogó készletét kínálják a mikrovezérlők teljes körű megismeréséhez. Az olyan ismerkedőkészletek például, mint az STM32H745I-DISCO (2. ábra) és az STM32H750B-DK, lehetővé teszik a különböző kezelőfelületek és csatlakozók gyors kiértékelését olyan jellemzőkkel, mint az alábbiak:
- 4,3 hüvelykes RGB LCD érintőképernyős kezelőfelület
- az IEEE-802.3-2002 szabványnak megfelelő Ethernet
- ethernetes áramellátás (Power over Ethernet, PoE)
- USB OTG FS (teljes sebességű, útközben használható USB)
- SAI (szinkron hangcsatolós) hangkodek
- egy ST-MEMS (mikro-elektromechanikus) digitális mikrofon
- 2 × 512 MB Quad-SPI (négy adatcsatornás soros perifériaillesztős) NOR flashmemória
- 128 MB SDRAM
- 4 GB beépített eMMC memóriakártya
- 2 db CAN FD csatlakozó
- kompatibilis az Arduino-bővítőkártyákkal
- beépített STLINK-V3E hibakereső és programozómodul USB újraszámozási képességgel: nagy méretű háttértároló, virtuális COM port és hibakereső port
2. ábra: Az STM32H745I-DISCO fejlesztőkártyához gazdag hardverkészletet áll rendelkezésre (kép: STMicroelectronics)
2. A szoftvereszközök beállítása
Az STMicroelectronics beépített fejlesztőkörnyezetet (IDE, integrated development environment) kínál a mikrovezérlőkhöz (3. ábra). Ez tartalmaz egy kódfordítót, egy hibakereső programot, valamint egy beállítóprogramot a kezdőkód előállításához és a perifériák beállításához.
3. ábra: Az STM32H7 beépített fejlesztőkörnyezet (IDE) képernyőképe (ábra: STMicroelectronics)
3. Tanulás és kísérletezés
Ezután célszerű elolvasni a dokumentációt. Kiváló kiindulópont a fejlesztőkártya használati utasítása és az érintett STM32H7 mikrovezérlő referencia-kézikönyve. Ezek a dokumentumok fontos tudnivalókat tartalmaznak a mikrovezérlők felépítéséről, a perifériák beállításáról, a lábak funkcióinak lehetséges átkapcsolásairól (lábmultiplexelés, Pin-Mux) és a hardver jellemzőiről.
A mintaprojektekkel való kísérletezés is hatékony módja az eszközök megismerésének. Az STMicroelectronics számos mintaprojektet kínál a különböző STM32 mikrovezérlőkhöz. Ezek a minták remek kiindulópontként szolgálhatnak a különböző mikrovezérlő-funkciók használatának megértéséhez.
Végül pedig további támogatást tud nyújtani a fejlesztői közösség. Az olyan források, mint az ST Community, az oktatóanyagok és a videók megoldást kínálhatnak a gyakori problémákra, és ötleteket adhatnak lehetséges projektekhez.
4. Fejlesztés és hibakeresés
Az IDE mindent tartalmaz, ami a kód írásához, lefordításához és hibakereséséhez szükséges. Az IDE-n belüli beállítóprogram a perifériák inicializálásához és a köztes szoftver (middleware) beállításához használható. A fejlesztőkártya beépített STLINK hibakereső és programozófelülete lehetővé teszi a valós idejű hibakeresést. A hibákat a töréspontok, a változók figyelése és a kódon való végiglépegetés segítségével lehet azonosítani.
5. A projekt bővítése
A Discovery és Nucleo kártyákat a bővítőkártyák olyan funkciókkal egészíthetik ki, mint a különféle csatlakozók és érzékelők. Miután a fejlesztőkártyával létrehozta a kívánt funkciókat, a fejlesztőkártya kapcsolási rajzát referenciaként használva egyedi nyomtatott áramköri lapot tervezhet. Az egyedi nyomtatott áramköri lapra remek példa a Seeed Technology Co., Ltd. OpenMV4 CAM H7 kameraplatformja (4. ábra), amely az egymagos STM32H743 mikrovezérlőt használja.
4. ábra: Az OpenMV4 CAM H7 gépi látásos rendszerekhez készült (kép: Seeed Technology Co. Ltd.)
Egy másik példa az Arduino cég ABX00051 Nicla Vision eszköze (5. ábra), amely a kétmagos STM32H747 mikrovezérlőt használja.
5. ábra: Az ABX00051 Nicla Vision a különböző képérzékelők értékelésében segít a fejlesztőknek (kép: Arduino)
Összegzés
A mikrovezérlő kiválasztása nagyon fontos lépés a terméktervezés során, tekintettel a fejlett funkciók és a költségoptimalizálás egymással szemben álló követelményeire. Az STMicroelectronics cég STM32H7 sorozata jó példa arra, hogy a megfelelő mikrovezérlő termékcsalád kiválasztása hogyan nyújthat méretezhető, a jelenlegi és jövőbeli igényeket is kielégítő rugalmas megoldást.
Disclaimer: The opinions, beliefs, and viewpoints expressed by the various authors and/or forum participants on this website do not necessarily reflect the opinions, beliefs, and viewpoints of DigiKey or official policies of DigiKey.




