Microprocessori programmabili

Al giorno d’oggi, il mondo dell’hobbistica ha abbracciato l’utilizzo di microprocessori programmabili per l’esecuzione e lo svolgimento di compiti sia complessi, sia difficili. Senza scendere troppo nei dettagli, vediamo cosa sono che caratteristiche hanno.

Il microprocessore programmabile è un insieme di circuiti elettronici dalle diverse caratteristiche e funzionalità, contenuti all’interno di un piccolo chip. Il microprocessore può interpretare uno specifico linguaggio sviluppato ad hoc per far funzionare i propri circuiti interni in maniera differente.

Quindi, in un microprocessore possiamo riassumere i seguenti attributi:

– Formato: il microchip si può presentare in formato DIP (cioè Dual Inline Package, i classici chip per il montaggio Thru-hole con i piedini disposti parallelamente su due file), SMD (ossia Surface Mount Device, i quali vengono montati sulle schede elettroniche appoggiandoli sopra la scheda e saldati. Sono di più piccole dimensioni rispetto ai precedenti e i piedini possono essere disposti in due file parallele oppure su tutti e quattro i lati del chip.) o anche montato su opportuna scheda di sviluppo (di solito utilizzata per facilitare le connessioni di schede aggiuntive).

– Architettura: Le caratteristiche tecniche dipendono dall’architetture dei chip, che in generale varia in funzione delle dimensioni e del costo del chip. Tradotto in termini più pratici, cosa ci consente di fare quel determinato microprocessore?

– Linguaggio di programmazione: Ogni casa produttrice sceglie di usare un determinato codice di programmazione, alcuni standard, altri invece personalizzati. Normalmente i linguaggi di programmazione più complessi permettono di sfruttare più a fondo e in maniera migliore il microprocessore, ma risultano molto più laboriosi da imparare.
Per citarne alcuni abbiamo: C, C++, Arduino, Assembler, Picaxe Basic, Basic, Linux, .Net e molti altri.

Perché usare un microprocessore programmabile?
Un microprocessore programmabile permette di effettuare compiti complessi semplicemente scrivendo poche righe di codice, quando invece, per fare la stessa cosa sarebbero serviti molti circuiti elettronici.

Su quale linguaggio di programmazione mi oriento?
Non c’è a priori un linguaggio migliore e uno peggiore ad un altro, molto dipende dal livello di conoscenza che già si possiede nel campo della programmazione informatica. Chi conosce il linguaggio C avrà meno difficoltà ad utilizzare piattaforme come Arduino e i PIC, mentre per gli altri, l’orientamento verso un linguaggio con una sintassi più semplice è da preferire, come ad esempio i Picaxe. Inoltre, un altro fattore fondamentale da non sottovalutare è il supporto tecnico che queste piattaforme hanno, cioè la facilità di reperire informazioni sull’utilizzo del linguaggio di programmazione verso i propri chip attraverso manuali specifici, forum e community.