I microcontroller denominati anche MCU (unità microcontroller), sono dispositivi semiconduttori integrati utilizzati nella progettazione di schede a circuito stampato. Si tratta essenzialmente di un computer all'interno di un circuito integrato (IC).
Descrizione
I microcontroller contengono processori singoli o multipli (talvolta denominati CPU), più periferiche di memoria e I/O. Queste periferiche includono timer ADC (convertitori analogico-digitale) e DAC (convertitori digitale-analogico).
Contenitori disponibili
I microcontroller sono forniti in contenitori chip standard con vari numeri di pin. I tipi di contenitore sono: LQFP, PDIP, QFN, SOIC, SSOP, TQFP, TSSOP.
Cosa sono i core dei processori ARM?
I microcontroller spesso contengono un core microprocessore ARM. ARM rappresenta un'architettura sviluppata da ARM Holdings, utilizzato da altre aziende per la produzione di microprocessori e altri dispositivi.
Tipi di microcontrollori
Sebbene ci siano molti marchi di produzione riconosciuti e architetture di programmazione utilizzate per i microcontrollori, ci sono solo tre tipi distinti di MCU attualmente in uso. Questi sono:
- Microcontrollori a 8 bit
- Microcontrollori a 16 bit
- Microcontrollori a 32 bit
La principale distinzione tra i tre tipi di microcontrollori riguarda le rispettive larghezze del bus, ovvero la larghezza dei rispettivi tubi di dati. Questa è in definitiva la specifica chiave che limita la precisione matematica della velocità di un microcontrollore.
In breve, un microcontrollore a 8 bit richiederà un numero maggiore di accessi al bus e più istruzioni per eseguire calcoli a 16 o 32 bit. Arriverà quindi alla risposta (cioè al comportamento in uscita) molto più lentamente di un MCU a 16 o 32 bit.
In termini di calcolo, è effettivamente lo stesso tipo di problema di limitazione che si riscontra con una CPU lenta piuttosto che con una più veloce e potente.
Questi importanti criteri influenzeranno la scelta e l'ambito dei linguaggi di programmazione che è possibile utilizzare comodamente con un'unità a microcontrollore. Che si tratti di C++, Python, R o Arduino, i microcontrollori sono ampiamente compatibili con una varietà di linguaggi di programmazione, anche se le specifiche dipendono dal dispositivo.
Gli MCU a 8 bit sono stati a lungo considerati le opzioni più basilari ed economiche, ma con funzionalità limitate in alcune applicazioni. I microcontrollori a 16 e 32 bit sono in genere più costosi ma offrono miglioramenti delle prestazioni corrispondenti.
Che cosa significa "8 bit"?
I microcontroller hanno una larghezza bus dati che descrive la quantità di dati che si possono elaborare alla volta. Ad esempio, un microcontrollore a 8 bit può elaborare 8 bit alla volta. Le larghezze bus dati più comuni includono 8 bit, MCU a 16 bit e 32 bit.
Applicazioni
I microcontroller sono utilizzati principalmente in applicazioni "integrate" a funzione singola, a differenza dei microprocessori progettati per impieghi generali nei personal computer, tablet e smartphone. I microcontrollori trovano applicazione nei computer, nel settore automobilistico, nella robotica, nell'automazione, nelle apparecchiature mediche, negli elettrodomestici.