Optimalizált 8 bites mikrovezérlők használata korlátozott erőforrásokkal rendelkező eszközök tervezésének egyszerűsítésére

By Kenton Williston

Contributed By DigiKey's North American Editors

A helyszűkében lévő és korlátozott erőforrásokkal rendelkező eszközök, például villamos kéziszerszámok, személyi higiéniai termékek, játékok, háztartási eszközök és világításvezérlők tervezői számára hagyományosan elegendő egy 8 bites mikrovezérlő (MCU, microcontroller unit). A készülékek fejlődésével azonban egyre nagyobb sebességre, nagyobb teljesítményű perifériákra és hatékonyabb szoftverfejlesztő eszközökre van szükség. A 16 vagy 32 bites mikrovezérlőkre való áttérés segíthet, de ennek gyakran nagyobb tokméret és nagyobb fogyasztás az ára.

Ezeknek a problémáknak a megoldására a tervezők kihasználhatják a 8051-es architektúrán alapuló mikrovezérlők előnyeit, amelyek a 16 és 32 bites processzorok számos előnyét átültetik a 8 bites eszközök világába. Mindehhez mindössze 2 mm × 2 mm a tokméretük, miközben korszerű fejlesztési környezetet kínálnak.

Ez a cikk röviden ismerteti a 8051-es architektúrát és annak a korlátozott erőforrásokkal rendelkező készülékekbe való alkalmasságát. Ezután bemutatja a Silicon Labs 8051-es alapú mikrovezérlő termékcsaládját, ismerteti annak főbb alrendszereit, és egyenként leírja, hogy ezek hogyan oldják meg a tervezéssel kapcsolatos fontosabb problémákat. A cikk a hardver- és szoftvertámogatás kitárgyalásával zárul.

Miért érdemes a 8051-es architektúrát használni?

Amikor valamilyen nagyon helyszűkében lévő készülékhez választunk mikrovezérlőt, a 8 bites processzorok, például a jól bevált 8051-es számos előnyt kínálnak, beleértve a kis alapterületet, a kis fogyasztást és az egyszerű kialakítást. Sok 8051-es processzor azonban viszonylag egyszerű perifériákkal van ellátva, ami korlátozza egyes felhasználási módokra való alkalmasságukat. A kis felbontású analóg–digitális átalakítók (ADC) például nem elegendőek a nagy pontosságú készülékekhez, egyebek mellett egyes gyógyászati berendezésekhez.

A viszonylag alacsony órajelek szintén problémát jelenthetnek. A jellegzetes 8051-es mikrovezérlők 8 MHz és 32 MHz közötti órajelfrekvencián működnek, és a régebbi eszközök több órajelciklust is igényelnek az utasítások feldolgozásához. Ez a kis sebesség korlátozhatja a 8 bites mikrovezérlők alkalmasságát a valós idejű műveletek, például a pontos motorvezérlés támogatására.

A 8051-es processzorokhoz készült hagyományos szoftverfejlesztő környezetek nem felelnek meg napjaink szoftverfejlesztői elvárásainak. A 8 bites architektúrából fakadó belső korlátokkal együtt ez lassú és a fejlesztők kedvét szegő kódolási folyamatot eredményezhet.

A hagyományos 8 bites processzorok korlátai arra késztethetik a fejlesztőket, hogy fontolóra vegyék a 16 vagy 32 bites mikrovezérlőkre való áttérést. Bár ezek a mikrovezérlők bőséges számítási teljesítményt, nagy teljesítményű perifériákat és korszerű szoftverkörnyezetet kínálnak, egyúttal viszonylag nagy méretűek is. Ez megnehezíti a beépítésüket a helyszűkében lévő készülékekbe, ami késedelmet okozhat a fejlesztésben, vagy növelheti a készülék méretét.

A 16 és 32 bites mikrovezérlőkhöz kapcsolódó nagyobb kódméret és fogyasztás szintén az optimálisnál kedvezőtlenebb készülékeket eredményezhet. Ezek a hátrányok különösen azon készülékek esetében jelentenek gondot, amelyek nem használnak bonyolult matematikai számításokat, és emiatt nem élvezik az ezen processzorok fejlett képességei jelentette előnyöket.

Az ilyen kompromisszumok ideális egyensúlya a projekt kezdetén nem feltétlenül nyilvánvaló, és a tervezési folyamat közepén végzett processzorcsere késleltetheti a fejlesztést, illetve megeshet, hogy a terméket vagy csak nagyobb méretben lehet elkészíteni, vagy nem az előre eltervezett funkciókkal. Így számos helyszűkében lévő készüléknek előnyére válhat egy 8051-alapú, de nagyobb teljesítményű mikrovezérlő, amely a 16 és 32 bites processzorok számos előnyét ülteti át a kis fogyasztású, kis méretű 8 bites processzorok világába.

Az EFM8BB50 több funkcióval látja el a 8 bites mikrovezérlőket

A Silicon Labs ezen szempontok figyelembevételével fejlesztette ki a 8 bites EFM8BB50 mikrovezérlő termékcsaládot (1. ábra). Ezek a mikrovezérlők nagyobb teljesítményt, fejlett perifériákat és korszerű szoftverfejlesztő környezetet kínálnak.

A Silicon Labs EFM8BB50 mikrovezérlő blokkvázlata (nagyításhoz kattintson az ábrára)1. ábra: Az EFM8BB50 mikrovezérlő blokkvázlata (ábra: Silicon Labs)

A mikrovezérlő szíve a CIP-51 8051-es processzormag, a 8051-es architektúrának a Silicon Labs által nagyobb teljesítményre, kisebb fogyasztásra és több funkcióra optimalizált változata. A teljesítménye különösen szembeötlő. Az EFM8BB50 mikrovezérlőben a mag akár 50 MHz-es sebességet is elér, és az utasítások 70%-át egy vagy két órajelciklus alatt végrehajtja. Ezáltal ezeknek a mikrovezérlőknek a teljesítménye lényegesen nagyobb, mint a hagyományos 8 bites processzoroké, ami nagyobb mozgásteret kínál a fejlesztők számára összetettebb készülékek fejlesztésére.

Ezek a mikrovezérlők a parányi méreteik miatt is figyelemre méltóak. A termékcsalád 16 lábú változatai – például az EFM8BB50F16G-A-QFN16 – már 2,5 mm × 2,5 mm méretű tokozásban is kaphatóak. A 12 lábú változatok – például az EFM8BB50F16G-A-QFN12 – még kisebbek, 2 mm × 2 mm tokméretűek.

Apró méreteik ellenére az EFM8BB50 mikrovezérlők lenyűgöző funkciókkal vannak ellátva, többek között a következőkkel:

  • 12 bites analóg–digitális átalakító (ADC), amely elengedhetetlen a pontos érzékelőadatokat igénylő felhasználási területekre
  • beépített hőérzékelő, amely lehetővé teszi a mikrovezérlő számára, hogy külső alkatrészek nélkül ellenőrizze saját belső hőmérsékletét és a környezeti hőmérsékletet
  • háromcsatornás programozható számlálótömb (PCA, programmable counter array) impulzusszélesség-modulációval (PWM), amely képes PWM jeleket előállítani a változó kimenőjelű vezérléshez olyan felhasználási területek számára, mint a villanymotor-vezérlés és a LED-ek fényerő-szabályozása
  • háromcsatornás PWM-mag holtidő-beillesztéssel (DTI, dead-time insertion) a teljesítményelektronika, például a villanymotor-vezérlők vagy az áramátalakítók pontosabb vezérléséhez.

Az egyéb be- és kimenetek (I/O) között számos soros kommunikációs csatlakozó, több 8 és 16 bites időzítő, valamint négy általános célú beállítható logikai egység található. A mikrovezérlő termékcsalád minden lába 5 V kezelésére képes, és a digitális be- és kimenetek rugalmasan hozzájuk rendelhetőek, hogy a lehető legtöbbet lehessen kihozni a korlátozott számú lábból.

Fejlett energiagazdálkodás

Az EFM8BB50 több energiagazdálkodási funkciót is tartalmaz a fogyasztás optimalizálása és az elem vagy akkumulátor üzemidejének meghosszabbítása érdekében. Ezek közé tartozik a többféle energiafelhasználási mód, köztük egy tétlenségi (Idle) üzemmóddal, amely csökkenti a processzormag órajelét, miközben a perifériák aktívak maradnak. A leállító (Stop) üzemmód még tovább megy, leállítja a processzormagot és a legtöbb perifériát, de közben megőrzi a RAM és a regiszterek tartalmát. Egyes perifériák beállíthatóak úgy, hogy a processzormagot felébresszék a leállító üzemmódból, ami az olyan eseményvezérelt alkalmazások esetében előnyös, amelyek túlnyomórészt kis fogyasztású állapotban maradnak.

A rugalmas órajel-beállítási lehetőségek szintén segítik az energiatakarékosságot. A nagyon pontos belső oszcillátor számos esetben kiküszöböli a külső kristályoszcillátorok szükségességét, csökkentve ezzel az összfogyasztást. A mikrovezérlő lehetőséget ad az órajelkapuzásra is, amelynek segítségével egyenként választhatóan letiltható a különböző perifériák órajele, lehetővé téve a fejlesztők számára, hogy a nem használt perifériákat kikapcsolják.

A perifériákat is a hatásfokot szem előtt tartva tervezték. Ami a legfigyelemreméltóbb, az az, hogy a beállítható logikai egység (CLU, Configurable Logic Unit) képes önállóan elvégezni egyszerű logikai funkciókat, csökkentve ezzel annak szükségességét, hogy a processzormagot egyszerű feladatokhoz fel kelljen ébreszteni a kis fogyasztású üzemmódból. Ezenkívül a kis fogyasztású UART (LEUART, Low Energy UART) képes olyan áramellátási üzemmódokban is működni, ahol az elsődleges oszcillátor le van tiltva, ami lehetővé teszi a kis fogyasztású üzemállapotban végzett soros kommunikációt.

Az egyszerű szoftverfejlesztés támogatása

A fejlesztők az EFM8BB50 mikrovezérlő termékcsaládhoz a Silicon Labs Simplicity Studio Suite programcsomagjával készíthetnek szoftvereket. Ezt a fejlesztőkörnyezetet használják a 8 bites EFM8BB50, a vállalat 32 bites mikrovezérlői és a vezeték nélküli egylapkás rendszerek (SoC) is. Ennek eredményeképpen a fejlesztők egy korszerű fejlesztőkörnyezetet kapnak, olyan funkciókkal, amilyeneket csak a nagyobb teljesítményű processzoroktól várna el az ember. Ez a fejlesztőkörnyezet többek közt olyan energiaprofil-készítőt is kínál, amely a kód fogyasztási profiljának valós idejű megjelenítését teszi lehetővé (2. ábra).

A Silicon Labs által kínált, energiaprofil-készítőt is tartalmazó Simplicity Studio képe (nagyításhoz kattintson a képre)2. ábra: A Simplicity Studio tartalmaz egy energiaprofil-készítőt is, amely a kód fogyasztási profiljának valós idejű megjelenítését teszi lehetővé (kép: Silicon Labs)

Az eszközök egy beépített fejlesztőkörnyezet (IDE) köré épülnek, amely ágazati szabványú kódszerkesztőket, fordítóprogramokat, hibakeresőket, valamint a korszerű, visszajelzést adó kezelőfelületek fejlesztéséhez hasznos felhasználóifelület-motort is tartalmaz. Ez a fejlesztőkörnyezet hozzáférést biztosít az eszközfüggő webes és SDK (szoftverfejlesztő készletekben lévő) erőforrásokhoz, valamint az egyedi szoftver- és hardverbeállító eszközökhöz.

A Simplicity Studio támogatja a Silicon Labs Secure Vault csomagot is. A Secure Vault egy rendkívül fejlett, 3. szintű PSA-tanúsítvánnyal rendelkező biztonsági csomag, amely lehetővé teszi a tervezők számára, hogy erősebb védelemmel lássák el a dolgok internetére (IoT, Internet of Things) kapcsolódó eszközöket, és megvédjék azok támadható felületeit az egyre több és komolyabb kiberfenyegetéstől, és egyúttal a folyamatosan fejlesztett kiberbiztonsági szabályozásoknak is megfelelővé tegyék ezeket az eszközöket.

Gyors ismerkedés a mikrovezérlővel fejlesztőkártyák segítségével

Az EFM8BB50 mikrovezérlővel kísérletezni kívánó fejlesztők fontolóra vehetik a 3. ábrán látható BB50-EK2702A Explorer Kit fejlesztőkártya használatát. Ennek a kis méretű kártyának a méretei megegyeznek a szabványos próbapanelmérettel, hogy könnyen csatlakoztatni lehessen a rendszerprototípusokhoz és a laboratóriumi hardverekhez. Található rajta USB-csatlakozó, beépített SEGGER J-Link hibakereső, LED és a felhasználói beavatkozás érdekében egy gomb is. A kártyát teljes mértékben támogatja a Simplicity Studio Suite, és az Energy Profiler segédprogrammal is használható. Minden perifériához tartozik mintaszoftver, a LED, a gomb és az UART használatát pedig bemutatószoftverekkel lehet gyakorolni.

A Silicon Labs BB50-EK2702A Explorer Kit fejlesztőkártya képe3. ábra: A BB50-EK2702A Explorer Kit fejlesztőkártya (kép: Silicon Labs)

A kártyán található egy mikroBUS aljzat és egy Qwiic csatlakozó is. Ez a kiegészítő hardveres támogatás lehetővé teszi a fejlesztők számára, hogy gyorsan hozzanak létre készülékprototípusokat készen kapható, különböző gyártók által gyártott egyéb kártyákat felhasználva.

A szélesebb körű kiindulási alapot kereső fejlesztők használhatják a 4. ábrán látható BB50-PK5208A Pro Kit fejlesztőkártyát. Ez a mélyreható értékelésre és tesztelésre tervezett fejlesztőkártya olyan érzékelőket és perifériákat tartalmaz, amelyek a mikrovezérlő számos képességét bemutatják.

A Silicon Labs BB50-PK5208A Pro Kit fejlesztőkártya képe4. ábra: A mélyreható értékelésre és tesztelésre szánt BB50-PK5208A Pro Kit fejlesztőkártya (kép: Silicon Labs)

A Pro Kit fejlesztőkártyán található USB-csatlakozó, egy nagyon kis fogyasztású, 128 × 128 képpontos memóriakijelző LCD, egy nyolc mozgásirányú analóg botkormány, egy LED és egy felhasználó által használható nyomógomb. Emellett helyet kapott még rajta egy Silicon Labs Si7021 relatívpáratartalom- és hőmérséklet-érzékelő, valamint többféle áramforrás, többek közt áramellátó (USB-PD) USB-csatlakozó és gombelem is.

A bővítéshez egy 20 érintkezős, 2,54 mm osztástávolságú csatlakozó áll rendelkezésre. Emellett a be- és kimeneti lábakhoz való közvetlen hozzáférésre szolgáló kivezetések is vannak a kártyán. Az Explorer Kit fejlesztőkártyához hasonlóan a Pro Kit is támogatja az Energy Profiler segédprogramot, és itt is minden perifériához tartozik mintaszoftver.

Az EFM8BB50 hibakeresési lehetőségei

A Silicon Labs többféle hibakereső programot bocsát rendelkezésre mikrovezérlői támogatására. Általános célú hibakereséshez a vállalat a DEBUGADPTR1-USB jelű eszközt kínálja. Ez egy 8 bites USB-csatlakozós hibakereső adapter egy egyszerű 10 érintkezős csatlakozóval ellátva.

Az SI-DBG1015A Simplicity Link Debugger egyedibb képességekkel rendelkezik. Ezt a mindkét fent említett kártyán megtalálható Mini Simplicity csatlakozóhoz kell csatlakoztatni. A Simplicity Link az alapvető funkciókon kívül további képességeket is kínál, beleértve a SEGGER J-Link hibakeresőt, egy csomagkövető illesztőfelületet, egy virtuális COM portot és az egyes jelek egyszerű szondázását lehetővé tevő kivezetéseket.

Összegzés

A korszerű 8051-es mikrovezérlők, mint az EFM8BB50 is, a jellemzően 16 és 32 bites eszközökkel társított funkciókat helyezik át a 8 bites eszközök világába. A magas órajelekkel, nagy teljesítményű perifériákkal és hatékony szoftverfejlesztő környezettel ez a mikrovezérlő termékcsalád a képességek megfelelő kombinációját kínálja a fejlesztők számára egyre több olyan felhasználási területhez, ahol korlátozott a hely és a rendelkezésre álló energia, de nagyobb teljesítményre és rugalmasságra van szükség.

DigiKey logo

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.

About this author

Image of Kenton Williston

Kenton Williston

Kenton Williston 2000-ben szerzett diplomát villamosmérnöki szakon, és pályafutását processzorok teljesítménymutatóinak vizsgálatával kezdte elemzőként. Ezután szerkesztőként dolgozott az EE Times csoportnál, és az elektronikai iparágon belül tevékenyen részt vett több kiadvány létrejöttében és konferenciák megszervezésében.

About this publisher

DigiKey's North American Editors