Jak vybrat nejlepší mikrokontrolér pro váš projekt

18.11.2024 Embedded systémy #mcu #mikrokontroler #esp #arm

Mikrokontroléry hrají zásadní roli v různých elektronických zařízeních a projektech, poskytují výpočetní výkon a řízení nezbytné pro jejich funkčnost. Staly se nepostradatelnými v moderních počítačích, vestavěných systémech a zařízeních, sloužících jako jádro mnoha elektronických zařízení, zejména těch, která používají specializované vestavěné systémy. Jejich použití sahá od jednoduchých domácích spotřebičů až po složité průmyslové systémy, což podtrhuje jejich všestrannost a důležitost.


Navzdory jejich obecnému víceúčelovému designu je k dispozici široká škála mikrokontrolérů, z nichž každý má jedinečné vlastnosti, vlastnosti a funkce. Faktory, jako je rychlost hodin, výkon, spotřeba energie, počet I/O, velikost a další vlastnosti, odlišují tyto mikrokontroléry. Výběr správného mikrokontroléru je zásadní pro úspěch projektu, protože může výrazně ovlivnit výkon, spotřebu energie a celkové náklady projektu. Tento článek pojednává o nejoblíbenějších mikrokontrolérech, zkoumá klíčové faktory, které je třeba vzít v úvahu při jejich výběru, a poskytuje pokyny pro výběr nejlepšího mikrokontroléru pro potřeby vašeho projektu.

Přehled mikrokontrolerů

Mikrokontrolér je kompaktní integrovaný obvod, který kombinuje funkce mikroprocesoru, paměti a vstupně/výstupních periferií na jediném čipu. Je navržen tak, aby zvládal specifické operace ve vestavěných systémech a poskytoval inteligenci a kontrolu různým aplikacím. Mikrokontroléry jsou široce používány v automatizaci elektronických zařízení, robotice a řízení teploty v různých průmyslových odvětvích.

Tato zařízení, známá také jako vestavěné řadiče nebo mikrokontrolérové ​​jednotky (MCU) , jsou přítomna ve vozidlech, robotech, kancelářských strojích, lékařských zařízeních, mobilních rádiových transceiverech, prodejních automatech a domácích spotřebičích. Mikrokontroléry jsou v podstatě zjednodušené miniaturní osobní počítače (PC) určené k ovládání specifických funkcí větších komponent bez potřeby složitého operačního systému (OS).

Moderní vestavěné systémy se do značné míry spoléhají na mikrokontroléry, které pohání širokou škálu zařízení a aplikací. Mikrokontroléry nabízejí inteligenci a ovládání potřebné pro efektivní a inovativní funkčnost, od jednoduchých hobby projektů až po složité průmyslové systémy. Ať už se jedná o DIY projekt, prototyp nebo profesionální produkt, jádrem nebo „mozkem“ jakéhokoli vestavěného elektronického zařízení je mikrokontrolér. Tato zařízení přijímají vstupní signály, zpracovávají je a poskytují výstupní signály zpětné vazby prováděním programů nastavených uživatelem.

Typy mikrokontrolérů

Zde jsou některé z nejběžnějších typů mikrokontrolérů:

 

Typ Popis
8bitové mikrokontroléry Jedná se o nejzákladnější typ, často používaný v jednoduchých aplikacích, jako jsou hračky a dálkové ovladače. Mají omezený výpočetní výkon a paměť, ale jsou cenově výhodné a snadno se používají.
16bitové mikrokontroléry Jsou pokročilejší než 8bitové a dokážou zvládnout složitější úkoly. Používají se v lékařských zařízeních, automobilových systémech a průmyslovém řízení.
32bitové mikrokontroléry Nejvýkonnější a nejbohatší na funkce, schopný vysokorychlostního zpracování a zpracování velkého množství dat. Používá se v herních systémech, multimediálních zařízeních a průmyslové automatizaci.
Mikrokontroléry ARM Ty jsou založeny na architektuře ARM a jsou široce používány v mobilních zařízeních, automobilových systémech a průmyslovém řízení.
Mikrokontroléry PIC Vyrobeno společností Microchip Technology, používané v domácích spotřebičích, automobilových systémech a lékařských zařízeních.
Mikrokontroléry AVR Vyrábí společnost Atmel Corporation, používá se v robotice, průmyslovém řízení a spotřební elektronice.
Mikrokontroléry na bázi FPGA Použijte pole programovatelná hradlová pole (FPGA) pro vysoce přizpůsobitelné zpracování. Běžné v digitálním zpracování signálu, zpracování videa a sítí.
CPU Mikrokontrolér funguje jako CPU, dekóduje data pro plnění svých úkolů. Všechny komponenty jsou připojeny k CPU, které dekóduje instrukce z paměti.
Paměť Ukládá data a programování s omezenou pamětí RAM/ROM/flash.
Vstupní a výstupní porty Používá se k propojení se zařízeními, jako jsou LED, LCD a tiskárny.
Sériové porty Nabídka sériových rozhraní mezi mikrokontrolérem a periferiemi.
Časovače Spravujte aktivity časování a počítání, které jsou nezbytné pro různé funkce, jako je generování pulzů a měření frekvence.
ADC (analogový digitální převodník) Převádí analogové signály na digitální, což je zásadní pro digitální aplikace, jako jsou měřicí zařízení.
Interpretace kontroly Poskytuje zpožděné ovládání aplikací s interní nebo externí interpretací.
Blok se speciálními funkcemi Některé mikrokontroléry mají speciální funkční bloky pro specifické úkoly v zařízeních, jako jsou roboti a vesmírné systémy. Tyto bloky mají další porty pro specializované funkce.

 

Jak mikrokontrolér funguje?

Mikrokontrolér je zabudován do systému pro řízení konkrétní funkce v zařízení. Interpretuje data ze svých vstupně/výstupních (I/O) periferií pomocí svého centrálního procesoru. Dočasná data, která přijímá, jsou uložena v jeho datové paměti, ke kterým přistupuje procesor za účelem zpracování pomocí instrukcí z jeho programové paměti. Poté používá své I/O periferie ke komunikaci a provedení potřebné akce.

Mikrokontroléry se používají v různých systémech a zařízeních. Zařízení často využívají více mikrokontrolérů, které spolupracují v rámci zařízení, aby zvládly své příslušné funkce.

Automobil může například obsahovat řadu mikrokontrolérů, které dohlížejí na různé systémy, jako je protiblokovací brzdový systém, kontrola trakce, vstřikování paliva nebo ovládání odpružení. Tyto mikrokontroléry spolu komunikují za účelem koordinace akcí. Některé mohou komunikovat se sofistikovanějším centrálním počítačem v autě, zatímco jiné mohou komunikovat pouze s jinými mikrokontroléry. Vyměňují si data pomocí svých I/O periferií a zpracovávají tato data k plnění jim přidělených úkolů.

 

Vlastnosti mikrokontroléru

Funkce Popis
Procesor Mikrokontroléry mohou mít různé procesory, od jednoduchých 4bitových až po složité 32bitové nebo 64bitové procesory.
Typy paměti Mikrokontroléry používají typy volatilní paměti, jako je RAM, a typy energeticky nezávislé paměti, jako je flash paměť, EPROM a EEPROM.
Palubní komponenty Mikrokontroléry jsou navrženy s dostatečnou pamětí na desce a I/O piny pro přímé propojení se senzory a součástkami.
Architektura Architektura mikrokontroléru může být založena na architektuře Harvard nebo von Neumann, což ovlivňuje způsob výměny dat mezi procesorem a pamětí.
Instrukční sada Procesory mikrokontrolérů mohou využívat komplexní výpočetní sadu instrukcí (CISC) nebo RISC (redukovaná sada instrukcí), z nichž každá má své vlastní charakteristiky a kompromisy.
Programovací jazyk Mikrokontroléry lze programovat v různých jazycích, včetně assembleru, C, Pythonu a JavaScriptu.
Periferní funkce Mikrokontroléry jsou vybaveny I/O piny pro implementaci periferních funkcí, jako jsou ADC, LCD řadiče, RTC, USART, časovače, UART a USB připojení.
Připojené senzory Mikrokontroléry jsou často propojeny se senzory pro sběr dat, jako jsou senzory vlhkosti a teploty.

 

Mikrokontroléry jsou všestranná zařízení s různými možnostmi procesoru, typy paměti a programovacími jazyky. Jsou navrženy tak, aby byly snadno použitelné bez dalších komponent a nabízely řadu periferních funkcí pro propojení se senzory a dalšími zařízeními.

Nejlepší mikrokontroléry v roce 2024

1. STM32F103C8T6

STM32F10C8T86 patří do rodiny STM32F103xx, která je známá svými mikrokontroléry střední hustoty. Tyto mikrokontroléry jsou vybaveny vysoce výkonným ARM Cortex-M3 32bitovým RISC procesorem běžícím na frekvenci 72 MHz, spolu s řadou I/O periferií. Řada STM32F103x, včetně CT86, obsahuje až dvě rozhraní I2C a SPI, tři univerzální 16bitové časovače, tři USARTy, jeden port USB a rozhraní CAN.

STMicroelectronics vyrábí řadu STM32, která je založena na jádrech Arm Cortex-M. Nabízí širokou škálu mikrokontrolérů s různou úrovní výkonu. Profesionální vývojáři upřednostňují tyto mikrokontroléry pro jejich spolehlivost a rozmanité možnosti.

2. STM8S103F3

Řada mikrokontrolérů STM8 je velikostí podobná řadě ATtiny a vyznačuje se vysoce výkonným 8bitovým jádrem s pokročilými periferiemi. Tato řada zahrnuje čtyři podřady: STM8S, STM8L, STM8AF a STM8AL. Řada STM8S je nejoblíbenější, přičemž STM8S103F3 je jedním z jejích výjimečných modelů.

STM8S103F3 nabízí 8K bajtů flash programové paměti, integrovanou EEPROM pro reálná data, pokročilé jádro a periferie, taktovací frekvenci 16 MHz, robustní I/O možnosti, nezávislý hlídací pes se samostatným zdrojem hodin a bezpečnostní systém hodin. Tyto vlastnosti přispívají k vysokému výkonu zařízení a celkové spolehlivosti systému.

3. ATmega328

ATmega328 je široce považován za jeden z nejpopulárnějších mikrokontrolérů na celém světě a nachází široké uplatnění v široké řadě desek a elektronických obvodů . Mezi designéry a inženýry vyniká ATmega328p jako jeden z nejrozšířenějších mikrokontrolérů. Jeho popularita byla dále posílena jeho zařazením do desek Arduino. Zatímco ATmega328 může fungovat nezávisle na deskách Arduino , mnozí jej preferují pro snadné programování, podpůrnou komunitu a celkové výhody spojené s platformou Arduino.

Část mikrokontrolérů Atmel AVR, ATmega328, patří do řady ATmega. Jedná se o 8bitový mikrokontrolér AVR s 32KB ISP flash pamětí s možností čtení a zápisu, postavený na moderní architektuře RISC. Mikrokontroléry AVR se používají v původních modelech Arduino, jako jsou Uno, Leonardo a Mega. Řada AVR je vysoce ceněna pro 8bitové aplikace, především díky rozsáhlé řadě knihoven dostupných pro Arduino.

 

4. ATmega32U4

Podobně jako ATmega328 je ATmega32U4 součástí rodiny mikrokontrolérů Atmel AVR. Je navržen jako nízkoenergetický mikrokontrolér založený na 8bitovém mikročipu AVR RISC s 32KB programovou flash pamětí, 2,5 KB SRAM a 1 KB EEPROM. Díky své schopnosti provádět výkonné instrukce v jediném hodinovém cyklu může čip dosáhnout propustnosti až 16 MIPS při 16 MHz.

Stejně jako ATmega328 je ATmega32U4 oblíbeným mikrokontrolérem v komunitě Arduino. Je součástí několika vývojových desek, jako jsou Arduino Pro Micro, Arduino Leonardo a další klony Arduina.

5. ATtiny85

Mikrokontroléry řady ATtiny85 a ATtiny jsou známé svou kompaktní velikostí. ATtiny85 je 8bitový RISC mikrokontrolér z rodiny AVR, známý svým vysokým výkonem. Často je to nejlepší volba pro malé projekty nebo návrhy s omezením velikosti, protože může fungovat s omezeným počtem GPIO.

Zatímco ostatní mikrokontroléry v této řadě nabízejí významné vylepšení energetické účinnosti a výkonu, ATtiny85 zůstává nejoblíbenější volbou.  To  je způsobeno jeho známostí mezi designéry a inženýry, kteří jej používají již léta. Některé běžné desky, které využívají ATtiny85, zahrnují Mini ATtiny85 USB a Digispark ATtiny85.

 

6. ESP8266

ESP8266 , vyvinutý společností Espressif Systems, je levný Wi-Fi mikročip s plným protokolem TCP/IP a možnostmi mikrokontroléru. Stal se jedním z nejoblíbenějších mikrokontrolérů a je ukázkovým příkladem současného trendu mikrokontrolérů s integrovanými síťovými možnostmi.

Původně navržený jako Wi-Fi modul pro mikrokontroléry, ESP8266 se rychle vyvinul do různých iterací, včetně modulu ESP-12e, který se stal základem pro mnoho projektů a produktů.ESP8266 se používá ve více než 100 vývojových deskách, včetně populárních jako NodeMCU DevkIT, Wemos D1, Wemos D1 Mini a ESP8266.

7. ESP32

Od svého představení před několika lety si ESP32 , upgrade na ESP8266, získal významnou podporu a popularitu. Tento mikrokontrolér se systémem na čipu je vybaven vestavěným Wi-Fi a dvourežimovým Bluetooth, díky čemuž je levný a energeticky účinný. ESP32 se stal oblíbeným pro své integrované funkce Wi-Fi a Bluetooth, díky čemuž je ideální pro aplikace internetu věcí (IoT). Zahrnuje vestavěné anténní spínače, RF baluny, výkonové zesilovače, nízkošumové přijímací zesilovače, filtry a moduly pro správu napájení. ESP32 využívá procesor Tensilica Xtensa LX6, který je k dispozici ve dvoujádrových i jednojádrových variantách.

ESP32 se primárně používá v chytrých technologiích, jako jsou programovatelné logické ovladače (PLC), chytré zámky, termostaty a sledovací kamery. Dodává se s předinstalovanými ovladači zařízení na nízké úrovni a sadami bezdrátových protokolů pro Wi-Fi a Bluetooth. Podobně jako ESP8266 byl ESP32 vyvinut do desek, jako jsou HUZZAH32, ESP32-DevKitC, NodeMCU-32S a ESPduino32.

Řada mikrokontrolérů NXP LPC nabízí rozmanitou škálu možností s jádry Arm Cortex-M s různými úrovněmi výkonu. Tyto mikrokontroléry, známé pro své vysokorychlostní schopnosti a rozsáhlou integraci periferií, jsou vhodné pro vestavěné aplikace.

Zejména LPC1768 je nízkoenergetický mikrokontrolér Cortex-M3 určený pro vestavěné aplikace . Může se pochlubit vysokou úrovní integrace a pracuje na frekvencích až 100 MHz při minimální spotřebě energie. Tento vysoce výkonný mikrokontrolér obsahuje mimo jiné periferie, jako je Ethernet MAC, rozhraní USB Device/Host/OTG, 8kanálový řadič DMA a 4 UART. Navíc nabízí až 512 kB flash paměti a 64 kB datové paměti.

 

9. MSP430G2452

MSP430G2452 od TI je v současnosti jedním z nejoblíbenějších členů rodiny mikrokontrolérů MSP430, které jsou známé svými pokročilými funkcemi. Řada Texas Instruments MSP430 je vysoce ceněna pro svou extrémně nízkou spotřebu energie, díky čemuž je ideální pro aplikace napájené bateriemi. Tyto mikrokontroléry se běžně vyskytují v přenosných zařízeních a nositelných zařízeních.

Texas Instruments MSP430G2452 je výkonný a cenově výhodný mikrokontrolér založený na 16bitovém RISC CPU. 

10. PIC16F877A

V řadě MCU PIC vyniká PIC16F877A jako jeden z nejpoužívanějších 8bitových mikrokontrolérů. Mikrokontroléry PIC, vyrobené společností Microchip Technology, mají dlouhodobou pověst pro svou nízkou spotřebu energie, širokou škálu možností a dostupnost vývojových nástrojů. PIC16F877A je obzvláště populární mezi rodinou PIC.

Navzdory tomu, že jej někteří považují za zastaralý, zůstává PIC16F877A jedním z nejpopulárnějších mikrokontrolérů na světě. Často je to počáteční volba pro začátečníky, kteří vstupují do vestavěného vývoje s PIC, a nadále je preferovaným mikrokontrolérem, když postupují ve své kariéře.

PIC16F877A má 40 pinů a  5  portů od A do E. Obsahuje tři časovače – dva 8bitové a jeden 16bitový. Díky technologii flash paměti lze kód mikrokontroléru opakovaně zapisovat a mazat. PIC16F877A má navíc EEPROM, která se používá pro trvalé uložení malého množství dat.

 

Faktory, které je třeba zvážit před výběrem mikrokontroléru

Při výběru vhodného mikrokontroléru pro konkrétní projekt je třeba vzít v úvahu několik faktorů, včetně nákladů, spotřeby energie, velikosti, proveditelnosti projektu, počtu I/O a dalších požadovaných speciálních funkcí. Zde je několik důležitých faktorů, které je třeba zvážit: 

  • Požadavky na výkon a rychlost zpracování : Určete potřebnou rychlost hodin a výpočetní výkon na základě úkolů, které mikrokontrolér potřebuje k provedení.
  • Potřebná paměť a kapacita úložiště : Zvažte množství paměti RAM a flash paměti požadované pro potřeby vašeho programu a ukládání dat.
  • Požadavky na vstup/výstup (I/O) : Vyhodnoťte počet a typy I/O pinů potřebných pro propojení se senzory, akčními členy, displeji a dalšími periferními zařízeními.
  • Úvahy o spotřebě energie : Vyberte si mikrokontrolér, který splňuje vaše cíle energetické účinnosti, zejména pro aplikace napájené bateriemi.
  • Omezení nákladů a rozpočtu : Zvažte náklady na mikrokontrolér a související vývojové nástroje, stejně jako případné licenční poplatky za software.
  • Kompatibilita vývojového prostředí a programovacího jazyka : Ujistěte se, že je mikrokontrolér podporován vývojovými nástroji a programovacími jazyky vhodnými pro váš projekt.

Aspekty specifické pro aplikaci

Výběr mikrokontroléru pro projekt často závisí na konkrétních požadavcích aplikace. Zde jsou některé klíčové úvahy pro různé oblasti použití:

Vestavěné systémy

  • Požadavky v reálném čase: Zvažte rychlost zpracování mikrokontroléru a možnosti zpracování přerušení.
  • Spotřeba energie: Vyberte si mikrokontrolér s režimy nízké spotřeby pro prodloužení životnosti baterie.
  • Periferní rozhraní: Zajistěte kompatibilitu s požadovanými komunikačními protokoly (např. SPI, I2C, UART) a rozhraními senzorů.

IoT aplikace

  • Bezdrátové připojení: Hledejte mikroovladače s vestavěnými funkcemi Wi-Fi, Bluetooth nebo LoRa pro připojení IoT.
  • Bezpečnostní funkce: Zvažte mikrokontroléry s hardwarovými bezpečnostními funkcemi pro ochranu dat.
  • Energetická účinnost: Vyberte si mikrokontroléry, které mohou pracovat s nízkou spotřebou energie a prodloužit tak životnost baterie v zařízeních IoT.

Robotika

  • Řízení motoru: Vyberte mikrokontrolér s dostatečnými kanály PWM a periferiemi pro řízení motoru.
  • Rozhraní senzorů: Zajistěte kompatibilitu s různými senzory používanými v robotice, jako jsou gyroskopy, akcelerometry a kodéry.
  • Výkon v reálném čase: Zvažte mikrokontroléry s rychlou dobou odezvy pro přesné řízení v robotických aplikacích.

Spotřební elektronika

  • Uživatelské rozhraní: Vyberte si mikrokontrolér s dostatečným počtem pinů GPIO a podporou rozhraní displeje (např. SPI, I2C) pro interakci uživatele.
  • Řízení spotřeby: Hledejte mikrokontroléry s režimy nízké spotřeby, abyste šetřili energii v bateriově napájených zařízeních.
  • Konektivita: Zvažte mikrokontroléry s USB, Bluetooth nebo jinými možnostmi připojení na základě požadavků zařízení.

Automobilové aplikace

  • Teplotní rozsah: Ujistěte se, že mikrokontrolér může pracovat v automobilovém teplotním rozsahu (-40 °C až 125 °C).
  • Aspekty EMI/EMC: Vyberte si mikrokontroléry s robustním výkonem EMC, abyste zajistili spolehlivost v automobilovém prostředí.
  • Bezpečnostní funkce: Zvažte mikrokontroléry s bezpečnostními certifikacemi (např. ISO 26262) pro aplikace kritické z hlediska automobilové bezpečnosti.

Průmyslová automatizace

  • Průmyslové komunikační protokoly: Zajistěte kompatibilitu s průmyslovými protokoly, jako jsou Modbus, CAN a Profibus pro průmyslové sítě.
  • Spolehlivost: Vyberte si mikrokontroléry s vysokým hodnocením MTBF (Mean Time Between Failures) pro spolehlivý provoz v průmyslovém prostředí.
  • Škálovatelnost: Vyberte mikrokontroléry, které lze škálovat tak, aby splňovaly požadavky různých aplikací průmyslové automatizace.

Závěr

Mikrokontroléry jsou životně důležité integrované obvody, které napájejí řadu elektronických systémů a zařízení. Tento článek se ponoří do předních konkurentů, jako je řada Arduino , STM32 a MSP430 , a zkoumá jejich nejnovější pokroky v technologii mikrokontrolérů. Tyto mikrokontroléry nabízejí výrazné výhody přizpůsobené různým aplikacím. Pochopení jejich funkcí, včetně výpočetního výkonu, paměti a síťových možností, umožňuje vývojářům vytvářet inovativní řešení pro spotřební elektroniku, zařízení internetu věcí (IoT) a průmyslové aplikace. Jak technologie postupuje, mikrokontroléry nadále utvářejí budoucnost vestavěných systémů a zdůrazňují, že je důležité, aby vývojáři činili informovaná rozhodnutí, aby využili svůj plný potenciál.

Závěrem lze říci, že výběr nejlepšího mikrokontroléru pro váš projekt je zásadní pro jeho úspěch. Zvažte faktory, jako je výpočetní výkon, požadavky na paměť, možnosti I/O, periferní zařízení, spotřeba energie a náklady. Pečlivým vyhodnocením těchto faktorů si můžete vybrat mikrokontrolér, který splňuje potřeby vašeho projektu a zajišťuje jeho efektivní a spolehlivý provoz. Pamatujte, že správný mikrokontrolér může významně ovlivnit výkon a funkčnost vašeho projektu.

Literatura:

Xecor. “How to Choose the Best Microcontroller for Your Project.” Xecor, 25 Apr. 2024, https://www.xecor.com/blog/best-microcontroller-choosing-guide.