Modi per selezionare un miglior microcontrollore per progetti basati su microcontrollore

Modi per selezionare un miglior microcontrollore per progetti basati su microcontrollore

Sai come selezionare il miglior microcontrollore per progetti basati su microcontrollore? La selezione del microcontrollore appropriato per una data applicazione è una delle decisioni più critiche, che controlla il successo o il fallimento dell'attività.



Ce ne sono di diversi tipi di microcontrollori disponibile e se hai deciso quale serie utilizzare, puoi facilmente avviare la progettazione del tuo sistema embedded. Gli ingegneri devono avere i propri criteri per fare la scelta giusta.


In questo articolo, discuteremo le considerazioni di base nella selezione di un microcontrollore.





Microcontrollori per la progettazione di sistemi embedded

Microcontrollori per la progettazione di sistemi embedded

In molti casi, invece di avere una conoscenza dettagliata di un microcontrollore adatto per il progetto, le persone spesso selezionano un microcontrollore a caso. Questa è comunque una cattiva idea.



La priorità principale per scegliere un microcontrollore è avere informazioni sul sistema come diagramma a blocchi, diagramma di flusso e periferiche di input / output.

Ecco i 7 modi principali che dovrebbero essere seguiti per assicurarsi che sia selezionato il microcontrollore giusto.


Selezione dei bit del microcontrollore

I microcontrollori sono disponibili in diversi bit rate come 8 bit, 16 bit e 32 bit. Il numero di bit si riferisce alla dimensione delle linee dati che limitano i dati. La scelta del miglior microcontrollore per la progettazione di sistemi embedded è importante in termini di selezione dei bit. Le prestazioni del microcontrollore aumentano con la dimensione dei bit.

Microcontrollori a 8 bit :

Microcontrollori a 8 bit

Microcontrollori a 8 bit

I microcontrollori a 8 bit hanno linee di dati a 8 che possono inviare e ricevere dati a 8 bit alla volta. Non ha funzioni aggiuntive come la comunicazione seriale di lettura / scrittura, ecc. Questi sono costruiti con meno memorie su chip e quindi sono usati per applicazioni più piccole. Sono disponibili a un costo inferiore. Tuttavia, nel caso in cui la complessità del tuo progetto aumenti, scegli un altro microcontrollore a bit più alto.

Microcontrollore a 16 bit:

Microcontrollore a 16 bit

Microcontrollore a 16 bit

I controller a 16 bit dispongono di linee di 16 dati che possono inviare e ricevere dati a 16 bit alla volta. Non ha funzioni aggiuntive rispetto ai controller a 32 bit. È uguale al microcontrollore a 8 bit ma viene aggiunto con poche funzionalità aggiuntive.

Le prestazioni di un microcontrollore a 16 bit sono più veloci dei controller a 8 bit ed è conveniente. È applicabile per applicazioni più piccole. È una versione avanzata di microcontrollori a 8 bit.

Microcontrollore a 32 bit :

Microcontrollore a 32 bit

Microcontrollore a 32 bit

I microcontrollori a 32 bit hanno linee di dati a 32 che vengono utilizzate per inviare e ricevere dati a 32 bit alla volta. I 32 microcontrollori hanno alcuni futuri aggiuntivi come SPI, I2C, unità a virgola mobile e funzioni relative al processo.

I microcontrollori a 32 bit sono costruiti con la massima gamma di memorie su chip e quindi vengono utilizzati per applicazioni più grandi. Le prestazioni sono molto veloci e convenienti. Sono una versione avanzata di microcontrollori a 16 bit.

Selezione della famiglia del microcontrollore

Esistono diversi fornitori che producono diverse architetture di microcontrollore. Quindi ogni microcontrollore ha un'istruzione unica e un set di registri e non ci sono due microcontrollori simili tra loro.

Un programma o un codice scritto per un microcontrollore non verrà eseguito sull'altro microcontrollore. Diversi progetti basati su microcontrollori richiedono diverse famiglie di microcontrollori.

Diverse famiglie di microcontrollori sono la famiglia 8051, la famiglia AVR, la famiglia ARM, la famiglia PIC e molti altri.

AVR Famiglia di microcontrollori

Famiglia di microcontrollori AVR

Famiglia di microcontrollori AVR

Un microcontrollore AVR accetta dimensioni di istruzioni di 16 bit o 2 byte. Consiste in una memoria flash che contiene l'indirizzo a 16 bit. Qui le istruzioni vengono memorizzate direttamente.

Microcontrollori AVR-ATMega8, ATMega32 sono ampiamente utilizzati.

Famiglia PIC di microcontrollori

Famiglia PIC di microcontrollori

Famiglia PIC di microcontrollori

Un microcontrollore PIC ogni istruzione accetta istruzioni a 14 bit. La memoria flash può memorizzare indirizzi a 16 bit. Se i primi 7 bit vengono passati alla memoria flash, i bit rimanenti possono essere memorizzati in seguito.

Tuttavia, se vengono passati 8 bit, i restanti 6 bit vengono sprecati. In una nota leggera, questo dipende in realtà dai fornitori di produzione.

In tal modo la selezione di una famiglia appropriata di microcontrollori per la progettazione di sistemi embedded è molto importante nel processo.

Selezione dell'architettura del microcontrollore

Il termine 'architettura' definisce una combinazione di periferiche utilizzate per eseguire le attività. Esistono due tipi di architettura del microcontrollore per i progetti basati sul microcontrollore.

Da Neumann Architecture

La Von Neumann Architecture è anche conosciuta come Princeton Architecture. In questa architettura la CPU comunica con un unico bus di dati e indirizzi, a RAM e ROM. La CPU recupera le istruzioni dalla RAM e dalla ROM contemporaneamente.

Architettura Von-Neumann

Architettura Von-Neumann

Queste istruzioni vengono eseguite in sequenza attraverso un singolo bus e quindi richiede più tempo per eseguire ciascuna istruzione. Quindi possiamo dire che il processo dell'architettura di Von Newman è molto lento.

Architettura di Harvard

Nell'architettura di Harvard, la CPU ha due bus separati quelli sono bus indirizzi e bus dati per comunicare con RAM e ROM. La CPU preleva ed esegue le istruzioni dalla memoria RAM e ROM attraverso un bus dati e un bus indirizzi separati, quindi richiede meno tempo per eseguire ciascuna istruzione, rendendo questa architettura molto popolare.

Architettura di Harvard

Architettura di Harvard

Pertanto, per qualsiasi progetto di sistema embedded, il miglior microcontrollore è principalmente quello con architettura Harvard.

Istruzioni per la selezione del microcontrollore

Il set di istruzioni è un insieme di istruzioni di base come aritmetiche, condizionali, logiche, ecc. Che vengono utilizzate per eseguire operazioni di base nel microcontrollore. L'architettura del microcontrollore funziona sulla base del set di istruzioni.

Per tutti i progetti basati su microcontrollori, sono disponibili microcontrollori basati su set di istruzioni RISC o CISC.

Architettura basata su RISC

RISC sta per computer con set di istruzioni ridotto. Un set di istruzioni RISC esegue tutte le operazioni aritmetiche, logiche, condizionali e booleane in uno o due cicli di istruzione. La gamma del set di istruzioni RISC è<100.

Architettura basata su RISC

Architettura basata su RISC

Una macchina basata su RISC esegue le istruzioni più velocemente perché non esiste uno strato di microcodice. L'architettura RISC contiene operazioni speciali di archivio di caricamento che vengono utilizzate per spostare i dati dai registri interni e dalla memoria.

Un chip RISC è realizzato con un numero inferiore di transistor, quindi il costo è basso. Per qualsiasi progetto di sistema integrato, è preferibile un chip RISC.

Architettura basata su CISC

CISC sta per computer con set di istruzioni complesse. Il set di istruzioni CISC richiede quattro o più cicli di istruzioni per eseguire tutte le istruzioni aritmetiche, logiche, condizionali e booleane. L'intervallo di un set di istruzioni CISC è> 150.

Architettura basata su CISC

Architettura basata su CISC

Una macchina basata su CISC esegue le istruzioni a una velocità inferiore rispetto all'architettura RISC, perché qui le istruzioni vengono convertite in codice di piccole dimensioni prima di essere eseguite.

Selezione della memoria del microcontrollore

La selezione della memoria è molto importante nella scelta del miglior microcontrollore, perché le prestazioni del sistema dipendono dalle memorie.

Ogni microcontrollore può contenere qualsiasi tipo di memoria, che sono:
 Memoria su chip
 Memoria off-chip

Memoria su chip e off-chip

Memoria su chip e off-chip

Memoria su chip

La memoria su chip si riferisce a qualsiasi memoria come RAM, ROM incorporata nel chip del microcontrollore stesso. Una ROM è un tipo di dispositivo di archiviazione in grado di memorizzare in modo permanente i dati e l'applicazione al suo interno.

Una memoria RAM è un tipo di memoria che viene utilizzata per archiviare dati e programmi su base temporanea. I microcontrollori con memoria su chip offrono un'elaborazione dati ad alta velocità ma la memoria di archiviazione è limitata. Quindi vengono utilizzati microcontrollori su chip per ottenere le capacità di archiviazione di memoria elevata.

Memoria off-chip

La memoria off-chip si riferisce a qualsiasi memoria come ROM, RAM ed EEPROM che sono collegate esternamente. Le memorie esterne sono a volte chiamate memorie secondarie che vengono utilizzate per memorizzare grandi quantità di dati.

A causa di questa memoria esterna, la velocità dei controller viene ridotta durante il recupero e la memorizzazione dei dati. Questa memoria esterna necessita di connessioni esterne, quindi la complessità del sistema aumenta.

Selezione del chip del microcontrollore

La selezione del chip è molto importante nello sviluppo di un file progetto basato su microcontrollore . L'IC è semplicemente chiamato pacchetto. I circuiti integrati sono schermati per consentire una facile manipolazione e proteggere i dispositivi da danni. I circuiti integrati sono costituiti da migliaia di componenti di base in elettronica come transistor, diodi, resistori, condensatori.

I microcontrollori sono disponibili in molti diversi tipi di pacchetti di circuiti integrati e ognuno ha i propri vantaggi e svantaggi. L'IC più popolare è il Pacchetto doppio in linea (DIP), utilizzato principalmente in qualsiasi progettazione di sistemi embedded.

Microcontrollore DIP (Dual in line)

Microcontrollore DIP (Dual in line)

1. DIP (pacchetto doppio in linea)
2. SIP (pacchetto in linea singolo)
3. SOP (pacchetto Small Outline)
4. QFP (pacchetto quadruplo)
5. PGA (Pin Grid Array)
6. BGA (Ball Grid Array)
7. TQFP (pacchetto piatto Tin Quad)

Selezione IDE del microcontrollore

IDE sta per ambiente di sviluppo integrato ed è un'applicazione software utilizzata nella maggior parte dei progetti basati su microcontrollori. L'IDE normalmente consiste in un editor di codice sorgente, compilatore, interprete e debugger. Viene utilizzato per sviluppare le applicazioni incorporate. IDE viene utilizzato per programmare un microcontrollore.

Selezione IDE di microcontrollori

Selezione IDE di microcontrollori

Un IDE è costituito dai seguenti componenti: -

Editor del codice sorgente
Compilatore
Debugger
Collegamenti
Interprete
Convertitore di file esadecimali

Editor

L'editor del codice sorgente è un editor di testo appositamente progettato per consentire ai programmatori di scrivere il codice sorgente delle applicazioni.

Compilatore

Un compilatore è un programma che traduce il linguaggio di alto livello (C, Embedded C) in linguaggio di livello macchina (formato 0 'e 1). Il compilatore prima scansiona l'intero programma e poi traduce il programma nel codice macchina che verrà eseguito dal computer.

Esistono due tipi di compilatori: -

Compilatore nativo

Quando il programma applicativo viene sviluppato e compilato sullo stesso sistema, è noto come compilatore nativo. ES: C, JAVA, Oracle.

Cross compilatore

Quando il programma applicativo viene sviluppato su un sistema host e compilato sul sistema di destinazione, viene chiamato cross compiler. Tutti i progetti basati su microcontrollori sono sviluppati dal compilatore incrociato. Ex Embedded C, assemblare, microcontrollori.

Debugger

Un debugger è un programma utilizzato per testare ed eseguire il debug di altri programmi come il programma di destinazione. Il debug è un processo di individuazione e riduzione del numero di bug o difetti nel programma.

Collegamenti

Il linker è un programma che prende uno o più file obiettivo dal compilatore e li combina in un unico programma eseguibile.

Interprete

Un interprete è una parte del software che converte il linguaggio di alto livello in un linguaggio leggibile dalla macchina in modo riga per riga. Ogni istruzione del codice viene interpretata ed eseguita separatamente in modo sequenziale. Se viene rilevato un errore in una parte dell'istruzione, l'interpretazione del codice verrà interrotta.

Diversi microcontrollori con applicazioni

Di seguito è riportato un riepilogo di una tabella che fornisce informazioni sui diversi microcontrollori e sui progetti in cui possono essere utilizzati.

Diversi microcontrollori per diverse applicazioni

Diversi microcontrollori per diverse applicazioni

Tutto pronto per scegliere il miglior microcontrollore per il tuo progetto? Ci auguriamo che a questo punto tu abbia un'immagine chiara nella tua mente, riguardo a quale microcontrollore sarà il più adatto per il tuo sistema embedded. Per tuo riferimento, una varietà di progetti incorporati può essere trovato nel sito web di edgefxkits.

Ecco una domanda fondamentale per te: per la maggior parte dei progetti basati su microcontrollori, combinando tutte le migliori caratteristiche che abbiamo menzionato sopra, quale famiglia di microcontrollori è maggiormente preferita e perché?

Fornisci gentilmente le tue risposte insieme al tuo feedback nella sezione commenti riportata di seguito.

Crediti fotografici:

Microcontrollori a 8 bit di rapidonline
Microcontrollore a 16 bit di directindustry
Microcontrollore a 32 bit di rapidonline
Famiglia di microcontrollori AVR di elettrolina
Famiglia di microcontrollori PIC di engineergarage
Harvard Architecture di eecatalog.com
Architettura basata su RISC di electronicsweekly.com
Architettura basata su CISC di studydroid.com
Microcontrollore DIP (Dual in line) di t2.gstatic.com