Käytä optimoitua 8-bittistä mikrokontrolleria yksinkertaistamaan resursseiltaan rajoitettujen laitteiden suunnittelua

Kirjoittaja Kenton Williston

Julkaisija DigiKeyn kirjoittajat Pohjois-Amerikassa

8-bittinen mikrokontrolleri (MCU) on perinteisesti riittänyt rajoitetusti tehoa ja tilaa tarjoavien laitteiden (kuten sähkötyökalujen, henkilökohtaisten hygieniatuotteiden, lelujen, laitteiden ja valaistusohjainten) suunnittelijoille. Sovellusten kehittyessä ne edellyttävät kuitenkin korkeampaa nopeutta, tehokkaampia oheislaitevaihtoehtoja ja järeämpiä ohjelmistokehitystyökaluja. Siirtyminen 16- tai 32-bittiseen vaihtoehtoon voi auttaa, mutta usein suuremman kotelon ja kasvaneen virrankulutuksen kustannuksella.

Näiden ongelmien ratkaisemiseksi suunnittelijat voivat hyödyntää 8051-arkkitehtuuriin perustuvia mikrokontrollereita, jotka tuovat monia 16- ja 32-bittisten suorittimien etuja 8-bittiseen maailmaan. Niitä on saatavilla jopa 2 x 2 mm koteloissa, ja ne tarjoavat samalla nykyaikaisen kehitysympäristön.

Tässä artikkelissa kuvataan lyhyesti 8051-arkkitehtuuri ja sen soveltuvuus rajallisten resurssien käyttökohteisiin. Sen jälkeen artikkelissa esitellään Silicon Labs -yrityksen 8051-pohjaiset mikrokontrollerit, kuvaillaan niiden tärkeimpiä alijärjestelmiä ja esitellään, miten jokainen näistä vastaa kriittisiin suunnitteluhaasteisiin. Artikkelin lopussa käsitellään laitteisto- ja ohjelmistotukea.

Miksi käyttää 8051-arkkitehtuuria?

Kun valitaan mikrokontrolleria tilan suhteen erittäin rajalliseen sovellukseen, vakiintuneen 8051:n kaltaiset 8-bittiset suorittimet tarjoavat monia etuja, kuten pienen koon, alhaisen virrankulutuksen ja yksinkertaisen rakenteen. Monien 8051-suorittimien oheislaitteet ovat kuitenkin suhteellisen yksinkertaisia, mikä rajoittaa niiden soveltuvuutta useisiin käyttötapauksiin. Esimerkiksi matalaresoluutioiset analogia-digitaalimuuntimet (ADC) eivät riitä lääkinnällisten laitteiden kaltaisiin korkeaa tarkkuutta vaativiin sovelluksiin.

Myös suhteellisen alhaiset kellotaajuudet voivat olla ongelma. Tyypillinen 8051-mikrokontrolleri toimii 8–32 MHz:n kellotaajuuksilla, ja vanhemmat mallit vaativat useita kellojaksoja käskyjen suorittamiseen. Tämä alhainen nopeus voi rajoittaa 8-bittisten mikrokontrollerien käyttöä tarkan moottorinohjauksen kaltaisissa reaaliaikaisissa toiminnoissa.

Lisäksi 8051-suorittimien perinteiset ohjelmistokehitysympäristöt eivät vastaa nykyaikaisten ohjelmistokehittäjien odotuksia. Yhdistettynä 8-bittisen arkkitehtuurin luontaisiin rajoituksiin tämä voi johtaa hitaaseen ja turhauttavaan ohjelmointiprosessiin.

Perinteisten 8-bittisten suorittimien rajoitukset voivat saada kehittäjät harkitsemaan siirtymistä 16- tai 32-bittisiin mikrokontrollereihin. Vaikka ne tarjoavatkin runsaasti laskentatehoa, suorituskykyiset oheislaitteet ja nykyaikaiset ohjelmistoympäristöt, ne ovat myös suhteellisen suurikokoisia. Siksi ne on haastavampaa integroida tilarajoitteisiin ratkaisuihin, mikä voi viivästyttää kehitystä tai kasvattaa laitteen kokoa.

Myös 16- ja 32-bittisten mikrokontrollerien suurempi ohjelmakoodin koko ja virrankulutus voivat johtaa vajavaisiin ratkaisuihin. Nämä haittapuolet ovat erityisen ongelmallisia monille sellaisille sovelluksille, joihin ei liity monimutkaista matematiikkaa ja jotka eivät siten hyödy näiden suorittimien kehittyneistä ominaisuuksista.

Näiden kompromissien ihanteellinen tasapaino ei välttämättä ole nähtävissä projektin alussa, ja suorittimen vaihtaminen suunnittelun aikana voi viivästyttää kehitystä tai aiheuttaa ongelmia tuotteen koon tai toiminnallisuuden suhteen. Näin ollen monet tilarajoitteiset ratkaisut voivat hyötyä kyvykkäämmästä 8051-pohjaisesta mikrokontrollerista, joka tuo monia 16- ja 32-bittisten suorittimien etuja vähävirtaisiin, kompakteihin ja 8-bittisiin sovelluksiin.

EFM8BB50 laajentaa 8-bittisten mikrokontrollereiden toiminnallisuutta

Silicon Labs kehitti 8-bittisten mikrokontrollereiden EFM8BB50-perheen ottaen nämä asiat huomioon (kuva 1). Nämä mikrokontrollerit tarjoavat korkeamman suorituskyvyn, kehittyneet oheislaitteet ja nykyaikaisen ohjelmistokehitysympäristön.

Lohkokaavio Silicon Labsin EFM8BB50-mikrokontrollerista (suurenna napsauttamalla)Kuva 1: Kuvassa on lohkokaavio EFM8BB50-mikrokontrollerista. (Kuvan lähde: Silicon Labs)

Mikrokontrolleri käyttää CIP-51 8051 -ydintä, joka on Silicon Labsin toteutus 8051-arkkitehtuurista, ja joka on optimoitu parantamaan suorituskykyä, vähentämään virrankulutusta ja parantamaan toiminnallisuutta. Suorituskyky on erityisen huomionarvoinen. EFM8BB50-mikroprosessorin ydin saavuttaa jopa 50 MHz:n kellotaajuuden ja 70 % käskyistä suoritetaan yhdessä tai kahdessa kellojaksossa. Tämä antaa mikrokontrollereille huomattavasti paremman suorituskyvyn perinteisiin 8-bittisiin suorittimiin verrattuna ja tarjoaa kehittäjille mahdollisuuden monimutkaisempien sovelluksien toteuttamiseen.

Mikrokontrollerit ovat myös huomattavan pienikokoisia. Tuoteperheen 16-nastaisia versioita, kuten EFM8BB50F16G-A-QFN16, on saatavana jopa vain 2,5 mm x 2,5 mm:n koteloissa. 12-nastaiset versiot, kuten EFM8BB50F16G-A-QFN12 , ovat vielä pienempiä, ja niiden kotelot ovat jopa vain 2 mm x 2 mm.

Pienistä mitoistaan huolimatta EFM8BB50-mikrokontrollereista löytyy vaikuttava joukko ominaisuuksia, mukaan lukien:

  • 12-bittinen ADC, joka on välttämätön tarkkoja anturitietoja vaativissa sovelluksissa
  • integroitu lämpötila-anturi, jonka avulla mikrokontrolleri voi valvoa sisäistä lämpötilaansa tai ympäristön lämpötilaa ilman ulkoisia komponentteja
  • kolmikanavainen PCA (Programmable Counter Array) pulssileveyden modulaatiolla (PWM), joka voi generoida PWM-signaaleja käytettäessä muuttuvaa lähdön ohjausta esimerkiksi moottorin ohjauksen ja LED-himmennyksen kaltaisissa sovelluksissa
  • kolmikanavainen PWM-toteutus jännitteettömän ajan lisäyksellä (DTI), joka parantaa moottoriohjaimien ja tehonmuuntimien kaltaisten tehoelektroniikkalaitteiden ohjausta

muihin tuloihin/lähtöihin (I/O) kuuluu joukko sarjamuotoisia tietoliikenneliitäntöjä, joukko 8- ja 16-bittisiä ajastimia sekä neljä konfiguroitavaa logiikkayksikköä. Kaikki mikrokontrolleriperheen nastat tukevat 5 voltin jännitettä, ja digitaalinen I/O voidaan määrittää joustavasti, jotta rajallista nastamäärää saadaan hyödynnettyä mahdollisimman hyvin.

Kehittynyt virranhallinta

EFM8BB50 sisältää useita energianhallintaominaisuuksia, jotka optimoivat virrankulutuksen ja pidentävät akun kestoa. Näitä ovat ensinnäkin useat tehotilat, mukaan lukien joutokäyntitila, joka laskee ytimen kellotaajuutta pitäen samalla oheislaitteet aktiivisina. Pysäytystila menee pidemmälle pysäyttämällä ytimen ja useimmat oheislaitteet säilyttäen kuitenkin samalla RAM-muistin ja rekisterien sisällön. Jotkin oheislaitteet voidaan asettaa herättämään ydin pysäytystilasta, mikä hyödyttää yleensä virransäästötilassa pysyviä tapahtumalähtöisiä sovelluksia.

Joustavat kellotaajuusvaihtoehdot auttavat edelleen energiansäästössä. Tarkka sisäinen oskillaattori poistaa ulkoisien kideoskillaattorien tarpeen monissa tapauksissa, mikä vähentää kokonaistehonkulutusta. Mikrokontrolleri tukee myös kelloavainnusta, joka katkaisee valikoivasti kellosignaalit eri oheislaitteisiin. Tämän avulla kehittäjät voivat sammuttaa ne oheislaitteet, jotka eivät ole käytössä.

Myös oheislaitteet on suunniteltu energiatehokkuutta silmällä pitäen. Huomattavinta on, että konfiguroitava logiikkayksikkö (CLU) voi suorittaa yksinkertaisia logiikkatoimintoja itsenäisesti, mikä vähentää ytimen tarvetta herätä virransäästötiloista yksinkertaisia tehtäviä varten. Lisäksi LEUART-piiri voi toimia virtatiloissa, joissa pääoskillaattori on pois käytöstä, mikä mahdollistaa sarjamuotoisen tietoliikenteen virransäästötiloissa.

Intuitiivisen ohjelmistokehityksen tukeminen

EFM8BB50-perheelle voidaan kehittää ohjelmistoja Silicon Labsin Simplicity Studio Suite -ympäristössä. Sitä käytetään 8-bittisissä EFM8BB50-mikrokontrollereissa, yhtiön 32-bittisissä mikrokontrollereissa ja sen langattomissa järjestelmäpiireissä (SoC). Tämän seurauksena kehittäjät saavat nykyaikaisen ympäristön ominaisuuksilla, joita he odottavat tehokkaampien suorittimien yhteydessä. Siinä on esimerkiksi energiaprofiloija, joka mahdollistaa ohjelmakoodin reaaliaikaisen tehoprofiloinnin (kuva 2).

Kuva: Silicon Labsin Simplicity Studio sisältää energiaprofiloijan (suurenna napsauttamalla).Kuva 2: Simplicity Studio sisältää energiaprofiloijan, joka tarjoaa reaaliaikaisen ohjelmakoodin tehoprofiloinnin. (Kuvan lähde: Silicon Labs)

Työkalut on rakennettu integroidun kehitysympäristön (IDE) ympärille, jossa on alan standardin mukaiset koodieditorit, kääntäjät ja virheenkorjaajat sekä käyttöliittymämoduuli nykyaikaisten responsiivisten käyttöliittymien kehittämistä varten. Tämä kehitysympäristö tarjoaa käyttöön laitekohtaiset verkko- ja SDK-resurssit sekä erikoistuneet ohjelmiston ja laitteiston konfigurointityökalut.

Simplicity Studio tukee myös Silicon Labs Secure Vaultia. Secure Vault on erittäin kehittynyt tietoturvapaketti PSA-sertifiointitasolla 3. Sen ansiosta suunnittelijat voivat parantaa esineiden internetin (IoT) laitteiden suojausta kasvavia kyberuhkia vastaan ja noudattaa samalla kehittyviä kyberturvallisuusmääräyksiä.

Nopeasti alkuun arviointisarjojen avulla

Kehittäjät, jotka ovat kiinnostuneita kokeilemaan EFM8BB50-mikrokontrolleria, voivat harkita kuvassa 3 esitettyä BB50-EK2702A Explorer Kit -sarjaa. Tämä pienikokoinen sarja on sopii koekytkentäalustan mittoihin, joten se on helppo kytkeä prototyyppijärjestelmiin ja laboratoriolaitteistoihin. Siinä on USB-liitäntä, sisäinen SEGGER J-Link -virheenkorjaaja, ledi ja painike vuorovaikutukseen käyttäjän kanssa. Simplicity Studio Suite tukee täysin tätä sarjaa, jota voidaan käyttää myös Energy Profiler -apuohjelman kanssa. Ohjelmistoesimerkkejä on tarjolla jokaiselle oheislaitteelle, ja demot käyttävät lediä, painiketta ja UARTia.

Kuva Silicon Labsin BB50-EK2702A Explorer Kit -sarjastaKuva 3: Kuvassa näytetään BB50-EK2702A Explorer Kit -sarja. (Kuvan lähde: Silicon Labs)

Sarja sisältää mikroBUS-kannan ja Qwiic-liittimen. Tämän laitteiston tarjoaman lisätuen avulla kehittäjät voivat luoda nopeasti prototyyppejä käyttämällä eri toimittajien valmiskortteja.

Kattavampaa aloituspistettä kaipaavat kehittäjät voivat käyttää kuvassa 4 esitettyä BB50-PK5208A Pro Kit -sarjaa. Tämä sarja on suunniteltu perusteellista arviointia ja testausta varten, ja se sisältää antureita ja oheislaitteita, jotka esittelevät monia mikrokontrollerin ominaisuuksia.

Kuva Silicon Labsin BB50-PK5208A Pro Kit -sarjastaKuva 4: Kuvassa näytetään BB50-PK5208A Pro Kit -sarja, joka on tarkoitettu perusteellista arviointia ja testausta varten. (Kuvan lähde: Silicon Labs)

Pro Kit -sarja sisältää USB-liitännän, erittäin vähävirtaisen 128 x 128 kuvapisteen muisti-LCD-näytön, kahdeksansuuntaisen analogisen ohjainsauvan, ledin ja käyttäjäpainikkeen. Siinä on myös Silicon Labsin Si7021-anturi suhteellisen kosteuden ja lämpötilan mittaamiseen sekä tuki useille virtalähteille, kuten USB ja nappikennoparisto.

Laajennuksia varten kortissa on 20-nastainen 2,54 mm:n piirilevyliitin. Se tarjoaa myös kytkentäalueet, jotka mahdollistavat suoran pääsyn I/O-nastoihin. Explorer Kit -sarjan tavoin myös Pro Kit -sarja tukee Energy Profileria, ja sen mukana toimitetaan ohjelmistoesimerkkejä jokaista oheislaitetta varten.

EFM8BB50:n virheenkorjausvaihtoehdot

Silicon Labs tarjoaa useita virheenkorjaajia mikrokontrollereidensa tueksi. Yleistä virheenkorjausta varten yhtiö tarjoaa adapterin DEBUGADPTR1-USB, joka on 8-bittinen USB-virheenkorjausadapteri yksinkertaisella 10-nastaisella liittimellä.

Erikoistuneempia ominaisuuksia on tarjolla SI-DBG1015A Simplicity Link -virheenkorjaajassa. Se kytketään molempiin yllä mainittuihin sarjoihin sisältyvään Mini Simplicity Interface -liittymään. Perustoimintojen lisäksi Simplicity Link tarjoaa sellaisia lisäominaisuuksia kuten SEGGER J-Link -virheenkorjaajan, pakettienseurantarajapinnan, virtuaalisen COM-portin ja kytkentäalueet yksittäisten signaalien helppoa mittaamista varten.

Yhteenveto

EFM8BB50:n kaltaiset modernit 8051-mikrokontrollerit tuovat 8-bittiseen maailmaan ominaisuuksia, jotka tyypillisesti yhdistetään 16- ja 32-bittisiin laitteisiin. Tämän mikrokontrollerisarjan korkeat kellotaajuudet, suorituskykyiset oheislaitteet ja robusti ohjelmistokehitysympäristö antavat kehittäjille oikean yhdistelmän ominaisuuksia yhä useampiin sovelluksiin, joissa tilaa ja tehoa on rajoitetusti mutta joissa tarvitaan enemmän suorituskykyä ja joustavuutta.

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.

Tietoja kirjoittajasta

Image of Kenton Williston

Kenton Williston

Kenton Williston suoritti B.S.-tutkinnon sähkötekniikassa vuonna 2000 ja aloitti uransa prosessorivertailu-analyytikkona. Tämän jälkeen hän on työskennellyt toimittajana EE Times -ryhmässä ja auttanut lanseeraamaan useita elektroniikkateollisuutta palvelevia julkaisuja ja konferensseja sekä johtanut niitä.

Tietoja tästä julkaisijasta

DigiKeyn kirjoittajat Pohjois-Amerikassa